//+build !noasm !appengine
// AUTO-GENERATED BY C2GOASM -- DO NOT EDIT

TEXT ·_comparison_equal_arr_arr_sse4(SB), $80-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	ADDQ $8, SP

	WORD $0x8944; BYTE $0xc8 // mov    eax, r9d
	WORD $0x894d; BYTE $0xc6 // mov    r14, r8
	WORD $0x8949; BYTE $0xcc // mov    r12, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB0_29
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB0_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB0_68
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB0_79
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB0_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_22
	WORD $0x9848             // cdqe

LBB0_20:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_20
	LONG $0x01c48349             // add    r12, 1

LBB0_22:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_26
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_24:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454940f; BYTE $0x15               // sete    byte [rsp + 21]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x2454940f; BYTE $0x16               // sete    byte [rsp + 22]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454940f; BYTE $0x17               // sete    byte [rsp + 23]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x2454940f; BYTE $0x03               // sete    byte [rsp + 3]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454940f; BYTE $0x05               // sete    byte [rsp + 5]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454940f; BYTE $0x0a               // sete    byte [rsp + 10]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x2454940f; BYTE $0x06               // sete    byte [rsp + 6]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x2454940f; BYTE $0x07               // sete    byte [rsp + 7]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	LONG $0xd7940f40                           // sete    dil
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x5e8b; BYTE $0x44                   // mov    ebx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x2454940f; BYTE $0x0b               // sete    byte [rsp + 11]
	WORD $0x5a3b; BYTE $0x44                   // cmp    ebx, dword [rdx + 68]
	WORD $0x5e8b; BYTE $0x4c                   // mov    ebx, dword [rsi + 76]
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x5a3b; BYTE $0x4c                   // cmp    ebx, dword [rdx + 76]
	WORD $0x5e8b; BYTE $0x54                   // mov    ebx, dword [rsi + 84]
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454940f; BYTE $0x09               // sete    byte [rsp + 9]
	WORD $0x5a3b; BYTE $0x54                   // cmp    ebx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454940f; BYTE $0x0c               // sete    byte [rsp + 12]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x2454940f; BYTE $0x0d               // sete    byte [rsp + 13]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454940f; BYTE $0x14               // sete    byte [rsp + 20]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x2454940f; BYTE $0x0e               // sete    byte [rsp + 14]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454940f; BYTE $0x0f               // sete    byte [rsp + 15]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x2454940f; BYTE $0x11               // sete    byte [rsp + 17]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454940f; BYTE $0x13               // sete    byte [rsp + 19]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454940f; BYTE $0x12               // sete    byte [rsp + 18]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB0_24
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB0_26:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_28:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_28
	JMP  LBB0_123

LBB0_29:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB0_30
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB0_101
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB0_112
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB0_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_50
	WORD $0x634c; BYTE $0xd0 // movsxd    r10, eax

LBB0_48:
	LONG $0x06100ff2             // movsd    xmm0, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xcb20                 // and    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x077a8d49             // lea    rdi, [r10 + 7]
	WORD $0x854d; BYTE $0xd2     // test    r10, r10
	LONG $0xfa490f49             // cmovns    rdi, r10
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0x8944; BYTE $0xd1     // mov    ecx, r10d
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001b8; BYTE $0x00 // mov    eax, 1
	WORD $0xe0d3                 // shl    eax, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	LONG $0x01c28349             // add    r10, 1
	LONG $0x08fa8349             // cmp    r10, 8
	JNE  LBB0_48
	LONG $0x01c48349             // add    r12, 1

LBB0_50:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_54
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB0_52:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	LONG $0x06100ff2                           // movsd    xmm0, qword [rsi]
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	LONG $0x46100ff2; BYTE $0x08               // movsd    xmm0, qword [rsi + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x15244c88                           // mov    byte [rsp + 21], cl
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0d244c88                           // mov    byte [rsp + 13], cl
	LONG $0x46100ff2; BYTE $0x10               // movsd    xmm0, qword [rsi + 16]
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x14244c88                           // mov    byte [rsp + 20], cl
	LONG $0x46100ff2; BYTE $0x18               // movsd    xmm0, qword [rsi + 24]
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x17244c88                           // mov    byte [rsp + 23], cl
	LONG $0x46100ff2; BYTE $0x20               // movsd    xmm0, qword [rsi + 32]
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x16244c88                           // mov    byte [rsp + 22], cl
	LONG $0x46100ff2; BYTE $0x28               // movsd    xmm0, qword [rsi + 40]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	LONG $0x46100ff2; BYTE $0x30               // movsd    xmm0, qword [rsi + 48]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x2041; BYTE $0xc5                   // and    r13b, al
	LONG $0x46100ff2; BYTE $0x38               // movsd    xmm0, qword [rsi + 56]
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x03244c88                           // mov    byte [rsp + 3], cl
	LONG $0x46100ff2; BYTE $0x40               // movsd    xmm0, qword [rsi + 64]
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x13244c88                           // mov    byte [rsp + 19], cl
	LONG $0x46100ff2; BYTE $0x48               // movsd    xmm0, qword [rsi + 72]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xc320                               // and    bl, al
	LONG $0x46100ff2; BYTE $0x50               // movsd    xmm0, qword [rsi + 80]
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x12244c88                           // mov    byte [rsp + 18], cl
	LONG $0x46100ff2; BYTE $0x58               // movsd    xmm0, qword [rsi + 88]
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x11244c88                           // mov    byte [rsp + 17], cl
	LONG $0x46100ff2; BYTE $0x60               // movsd    xmm0, qword [rsi + 96]
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x46100ff2; BYTE $0x68               // movsd    xmm0, qword [rsi + 104]
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0f244c88                           // mov    byte [rsp + 15], cl
	LONG $0x46100ff2; BYTE $0x70               // movsd    xmm0, qword [rsi + 112]
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0c244c88                           // mov    byte [rsp + 12], cl
	LONG $0x46100ff2; BYTE $0x78               // movsd    xmm0, qword [rsi + 120]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0b244c88                           // mov    byte [rsp + 11], cl
	QUAD $0x0000008086100ff2                   // movsd    xmm0, qword [rsi + 128]
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0e244c88                           // mov    byte [rsp + 14], cl
	QUAD $0x0000008886100ff2                   // movsd    xmm0, qword [rsi + 136]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0a244c88                           // mov    byte [rsp + 10], cl
	QUAD $0x0000009086100ff2                   // movsd    xmm0, qword [rsi + 144]
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x09244c88                           // mov    byte [rsp + 9], cl
	QUAD $0x0000009886100ff2                   // movsd    xmm0, qword [rsi + 152]
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x2041; BYTE $0xc6                   // and    r14b, al
	QUAD $0x000000a086100ff2                   // movsd    xmm0, qword [rsi + 160]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	QUAD $0x000000a886100ff2                   // movsd    xmm0, qword [rsi + 168]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x07244c88                           // mov    byte [rsp + 7], cl
	QUAD $0x000000b086100ff2                   // movsd    xmm0, qword [rsi + 176]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x05244c88                           // mov    byte [rsp + 5], cl
	QUAD $0x000000b886100ff2                   // movsd    xmm0, qword [rsi + 184]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	QUAD $0x000000c086100ff2                   // movsd    xmm0, qword [rsi + 192]
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x06244c88                           // mov    byte [rsp + 6], cl
	QUAD $0x000000c886100ff2                   // movsd    xmm0, qword [rsi + 200]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	QUAD $0x000000d086100ff2                   // movsd    xmm0, qword [rsi + 208]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	QUAD $0x000000d886100ff2                   // movsd    xmm0, qword [rsi + 216]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	QUAD $0x000000e086100ff2                   // movsd    xmm0, qword [rsi + 224]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	QUAD $0x000000e886100ff2                   // movsd    xmm0, qword [rsi + 232]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	QUAD $0x000000f086100ff2                   // movsd    xmm0, qword [rsi + 240]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	QUAD $0x000000f886100ff2                   // movsd    xmm0, qword [rsi + 248]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x15244402                           // add    al, byte [rsp + 21]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0841; BYTE $0xfd                   // or    r13b, dil
	WORD $0x8944; BYTE $0xef                   // mov    edi, r13d
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xd889                               // mov    eax, ebx
	WORD $0xd800                               // add    al, bl
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x03               // movzx    eax, byte [rsp + 3]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x03244488                           // mov    byte [rsp + 3], al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x17               // movzx    eax, byte [rsp + 23]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	LONG $0x245cb60f; BYTE $0x11               // movzx    ebx, byte [rsp + 17]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc789                               // mov    edi, eax
	LONG $0x245cb60f; BYTE $0x0f               // movzx    ebx, byte [rsp + 15]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x0a               // movzx    ebx, byte [rsp + 10]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x0e245c02                           // add    bl, byte [rsp + 14]
	LONG $0x244cb60f; BYTE $0x09               // movzx    ecx, byte [rsp + 9]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd908                               // or    cl, bl
	LONG $0x03e6c041                           // shl    r14b, 3
	WORD $0x0841; BYTE $0xce                   // or    r14b, cl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x74b60f44; WORD $0x0324             // movzx    r14d, byte [rsp + 3]
	WORD $0x0845; BYTE $0xee                   // or    r14b, r13b
	LONG $0x6cb60f44; WORD $0x0724             // movzx    r13d, byte [rsp + 7]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x05               // movzx    ecx, byte [rsp + 5]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xc900                               // add    cl, cl
	LONG $0x06244c02                           // add    cl, byte [rsp + 6]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xd1                   // or    cl, r10b
	LONG $0x24348845                           // mov    byte [r12], r14b
	LONG $0x245cb60f; BYTE $0x28               // movzx    ebx, byte [rsp + 40]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x24448841; BYTE $0x01               // mov    byte [r12 + 1], al
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xc8                   // or    r8b, r9b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24448845; BYTE $0x03               // mov    byte [r12 + 3], r8b
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB0_52
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB0_54:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_56:
	LONG $0x01498d4c             // lea    r9, [rcx + 1]
	LONG $0x04100ff2; BYTE $0xce // movsd    xmm0, qword [rsi + 8*rcx]
	LONG $0x042e0f66; BYTE $0xca // ucomisd    xmm0, qword [rdx + 8*rcx]
	WORD $0x9b0f; BYTE $0xd3     // setnp    bl
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd820                 // and    al, bl
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	WORD $0x894c; BYTE $0xc9     // mov    rcx, r9
	WORD $0x394d; BYTE $0xce     // cmp    r14, r9
	JNE  LBB0_56
	JMP  LBB0_123

LBB0_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB0_57
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB0_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_8
	WORD $0x9848             // cdqe

LBB0_6:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_6
	LONG $0x01c48349             // add    r12, 1

LBB0_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_12
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB0_10:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454940f; BYTE $0x04   // sete    byte [rsp + 4]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x940f; BYTE $0xd3       // sete    bl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x2454940f; BYTE $0x15   // sete    byte [rsp + 21]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454940f; BYTE $0x16   // sete    byte [rsp + 22]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x2454940f; BYTE $0x17   // sete    byte [rsp + 23]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454940f; BYTE $0x03   // sete    byte [rsp + 3]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x2454940f; BYTE $0x05   // sete    byte [rsp + 5]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7940f41               // sete    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x2454940f; BYTE $0x08   // sete    byte [rsp + 8]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd7940f40               // sete    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd2940f41               // sete    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3940f41               // sete    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd6940f41               // sete    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454940f; BYTE $0x06   // sete    byte [rsp + 6]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x2454940f; BYTE $0x07   // sete    byte [rsp + 7]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	LONG $0xd0940f41               // sete    r8b
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x2454940f; BYTE $0x0e   // sete    byte [rsp + 14]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4940f41               // sete    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd5940f41               // sete    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454940f; BYTE $0x09   // sete    byte [rsp + 9]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x2454940f; BYTE $0x0a   // sete    byte [rsp + 10]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454940f; BYTE $0x0b   // sete    byte [rsp + 11]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x2454940f; BYTE $0x0c   // sete    byte [rsp + 12]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd1940f41               // sete    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x2454940f; BYTE $0x14   // sete    byte [rsp + 20]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454940f; BYTE $0x0d   // sete    byte [rsp + 13]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x2454940f; BYTE $0x0f   // sete    byte [rsp + 15]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454940f; BYTE $0x10   // sete    byte [rsp + 16]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x2454940f; BYTE $0x11   // sete    byte [rsp + 17]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454940f; BYTE $0x12   // sete    byte [rsp + 18]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454940f; BYTE $0x13   // sete    byte [rsp + 19]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	WORD $0x940f; BYTE $0xd1       // sete    cl
	WORD $0xdb00                   // add    bl, bl
	LONG $0x04245c02               // add    bl, byte [rsp + 4]
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x245cb60f; BYTE $0x05   // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	LONG $0x245cb60f; BYTE $0x15   // movzx    ebx, byte [rsp + 21]
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x08   // add    dil, byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0xdf89                   // mov    edi, ebx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07   // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040               // shl    dil, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xf8       // or    r8b, dil
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e   // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x243c8845               // mov    byte [r12], r15b
	LONG $0x245cb60f; BYTE $0x0c   // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x24448845; BYTE $0x01   // mov    byte [r12 + 1], r8b
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x13   // movzx    ebx, byte [rsp + 19]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff28 // add    qword [rsp + 40], -1
	JNE  LBB0_10
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20   // mov    r15, qword [rsp + 32]

LBB0_12:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_14:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_14
	JMP  LBB0_123

LBB0_30:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB0_90
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB0_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_36
	WORD $0x9848             // cdqe

LBB0_34:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_34
	LONG $0x01c48349             // add    r12, 1

LBB0_36:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_40
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_38:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454940f; BYTE $0x15               // sete    byte [rsp + 21]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x2454940f; BYTE $0x16               // sete    byte [rsp + 22]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454940f; BYTE $0x17               // sete    byte [rsp + 23]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x2454940f; BYTE $0x03               // sete    byte [rsp + 3]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454940f; BYTE $0x05               // sete    byte [rsp + 5]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454940f; BYTE $0x0a               // sete    byte [rsp + 10]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x2454940f; BYTE $0x06               // sete    byte [rsp + 6]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x2454940f; BYTE $0x07               // sete    byte [rsp + 7]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x889e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x2454940f; BYTE $0x0b               // sete    byte [rsp + 11]
	LONG $0x889a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 136]
	LONG $0x989e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 152]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x989a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 152]
	LONG $0xa89e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 168]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454940f; BYTE $0x09               // sete    byte [rsp + 9]
	LONG $0xa89a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454940f; BYTE $0x0c               // sete    byte [rsp + 12]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x2454940f; BYTE $0x0d               // sete    byte [rsp + 13]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454940f; BYTE $0x14               // sete    byte [rsp + 20]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x2454940f; BYTE $0x0e               // sete    byte [rsp + 14]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454940f; BYTE $0x0f               // sete    byte [rsp + 15]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x2454940f; BYTE $0x11               // sete    byte [rsp + 17]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454940f; BYTE $0x13               // sete    byte [rsp + 19]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454940f; BYTE $0x12               // sete    byte [rsp + 18]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB0_38
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB0_40:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_42:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_42
	JMP  LBB0_123

LBB0_68:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_72
	WORD $0x9848             // cdqe

LBB0_70:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_70
	LONG $0x01c48349             // add    r12, 1

LBB0_72:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_76
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_74:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454940f; BYTE $0x04   // sete    byte [rsp + 4]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x2454940f; BYTE $0x28   // sete    byte [rsp + 40]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454940f; BYTE $0x15   // sete    byte [rsp + 21]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x2454940f; BYTE $0x16   // sete    byte [rsp + 22]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454940f; BYTE $0x17   // sete    byte [rsp + 23]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x2454940f; BYTE $0x03   // sete    byte [rsp + 3]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454940f; BYTE $0x05   // sete    byte [rsp + 5]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd5940f41               // sete    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454940f; BYTE $0x0a   // sete    byte [rsp + 10]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd0940f41               // sete    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd3940f41               // sete    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd7940f41               // sete    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x2454940f; BYTE $0x06   // sete    byte [rsp + 6]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x2454940f; BYTE $0x07   // sete    byte [rsp + 7]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454940f; BYTE $0x08   // sete    byte [rsp + 8]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	LONG $0xd7940f40               // sete    dil
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x225eb70f               // movzx    ebx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x2454940f; BYTE $0x0b   // sete    byte [rsp + 11]
	LONG $0x225a3b66               // cmp    bx, word [rdx + 34]
	LONG $0x265eb70f               // movzx    ebx, word [rsi + 38]
	LONG $0xd2940f41               // sete    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd6940f41               // sete    r14b
	LONG $0x265a3b66               // cmp    bx, word [rdx + 38]
	LONG $0x2a5eb70f               // movzx    ebx, word [rsi + 42]
	LONG $0xd4940f41               // sete    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454940f; BYTE $0x09   // sete    byte [rsp + 9]
	LONG $0x2a5a3b66               // cmp    bx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454940f; BYTE $0x0c   // sete    byte [rsp + 12]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2454940f; BYTE $0x0d   // sete    byte [rsp + 13]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd1940f41               // sete    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454940f; BYTE $0x14   // sete    byte [rsp + 20]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x2454940f; BYTE $0x0e   // sete    byte [rsp + 14]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454940f; BYTE $0x0f   // sete    byte [rsp + 15]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454940f; BYTE $0x10   // sete    byte [rsp + 16]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x2454940f; BYTE $0x11   // sete    byte [rsp + 17]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454940f; BYTE $0x13   // sete    byte [rsp + 19]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454940f; BYTE $0x12   // sete    byte [rsp + 18]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	WORD $0x940f; BYTE $0xd1       // sete    cl
	LONG $0x2444b60f; BYTE $0x28   // movzx    eax, byte [rsp + 40]
	WORD $0xc000                   // add    al, al
	LONG $0x04244402               // add    al, byte [rsp + 4]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15   // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a   // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0x8941; BYTE $0xd8       // mov    r8d, ebx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07   // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824 // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0844; BYTE $0xc7       // or    dil, r8b
	WORD $0x0841; BYTE $0xdd       // or    r13b, bl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b   // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x242c8845               // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d   // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01   // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13   // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x12   // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB0_74
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB0_76:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_78:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_78
	JMP  LBB0_123

LBB0_79:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_83
	WORD $0x9848             // cdqe

LBB0_81:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_81
	LONG $0x01c48349             // add    r12, 1

LBB0_83:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_87
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_85:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454940f; BYTE $0x04   // sete    byte [rsp + 4]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x2454940f; BYTE $0x28   // sete    byte [rsp + 40]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454940f; BYTE $0x15   // sete    byte [rsp + 21]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x2454940f; BYTE $0x16   // sete    byte [rsp + 22]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454940f; BYTE $0x17   // sete    byte [rsp + 23]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x2454940f; BYTE $0x03   // sete    byte [rsp + 3]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454940f; BYTE $0x05   // sete    byte [rsp + 5]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd5940f41               // sete    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454940f; BYTE $0x0a   // sete    byte [rsp + 10]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd0940f41               // sete    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd3940f41               // sete    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd7940f41               // sete    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x2454940f; BYTE $0x06   // sete    byte [rsp + 6]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x2454940f; BYTE $0x07   // sete    byte [rsp + 7]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454940f; BYTE $0x08   // sete    byte [rsp + 8]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	LONG $0xd7940f40               // sete    dil
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x225eb70f               // movzx    ebx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x2454940f; BYTE $0x0b   // sete    byte [rsp + 11]
	LONG $0x225a3b66               // cmp    bx, word [rdx + 34]
	LONG $0x265eb70f               // movzx    ebx, word [rsi + 38]
	LONG $0xd2940f41               // sete    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd6940f41               // sete    r14b
	LONG $0x265a3b66               // cmp    bx, word [rdx + 38]
	LONG $0x2a5eb70f               // movzx    ebx, word [rsi + 42]
	LONG $0xd4940f41               // sete    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454940f; BYTE $0x09   // sete    byte [rsp + 9]
	LONG $0x2a5a3b66               // cmp    bx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454940f; BYTE $0x0c   // sete    byte [rsp + 12]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2454940f; BYTE $0x0d   // sete    byte [rsp + 13]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd1940f41               // sete    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454940f; BYTE $0x14   // sete    byte [rsp + 20]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x2454940f; BYTE $0x0e   // sete    byte [rsp + 14]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454940f; BYTE $0x0f   // sete    byte [rsp + 15]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454940f; BYTE $0x10   // sete    byte [rsp + 16]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x2454940f; BYTE $0x11   // sete    byte [rsp + 17]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454940f; BYTE $0x13   // sete    byte [rsp + 19]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454940f; BYTE $0x12   // sete    byte [rsp + 18]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	WORD $0x940f; BYTE $0xd1       // sete    cl
	LONG $0x2444b60f; BYTE $0x28   // movzx    eax, byte [rsp + 40]
	WORD $0xc000                   // add    al, al
	LONG $0x04244402               // add    al, byte [rsp + 4]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15   // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a   // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0x8941; BYTE $0xd8       // mov    r8d, ebx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07   // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824 // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0844; BYTE $0xc7       // or    dil, r8b
	WORD $0x0841; BYTE $0xdd       // or    r13b, bl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b   // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x242c8845               // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d   // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01   // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13   // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x12   // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB0_85
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB0_87:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_89:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_89
	JMP  LBB0_123

LBB0_101:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_105
	WORD $0x9848             // cdqe

LBB0_103:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_103
	LONG $0x01c48349             // add    r12, 1

LBB0_105:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_109
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_107:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454940f; BYTE $0x15               // sete    byte [rsp + 21]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x2454940f; BYTE $0x16               // sete    byte [rsp + 22]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454940f; BYTE $0x17               // sete    byte [rsp + 23]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x2454940f; BYTE $0x03               // sete    byte [rsp + 3]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454940f; BYTE $0x05               // sete    byte [rsp + 5]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454940f; BYTE $0x0a               // sete    byte [rsp + 10]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x2454940f; BYTE $0x06               // sete    byte [rsp + 6]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x2454940f; BYTE $0x07               // sete    byte [rsp + 7]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x889e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x2454940f; BYTE $0x0b               // sete    byte [rsp + 11]
	LONG $0x889a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 136]
	LONG $0x989e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 152]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x989a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 152]
	LONG $0xa89e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 168]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454940f; BYTE $0x09               // sete    byte [rsp + 9]
	LONG $0xa89a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454940f; BYTE $0x0c               // sete    byte [rsp + 12]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x2454940f; BYTE $0x0d               // sete    byte [rsp + 13]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454940f; BYTE $0x14               // sete    byte [rsp + 20]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x2454940f; BYTE $0x0e               // sete    byte [rsp + 14]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454940f; BYTE $0x0f               // sete    byte [rsp + 15]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x2454940f; BYTE $0x11               // sete    byte [rsp + 17]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454940f; BYTE $0x13               // sete    byte [rsp + 19]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454940f; BYTE $0x12               // sete    byte [rsp + 18]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB0_107
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB0_109:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_111:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_111
	JMP  LBB0_123

LBB0_112:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_116
	WORD $0x634c; BYTE $0xd0 // movsxd    r10, eax

LBB0_114:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xcb20                 // and    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x077a8d49             // lea    rdi, [r10 + 7]
	WORD $0x854d; BYTE $0xd2     // test    r10, r10
	LONG $0xfa490f49             // cmovns    rdi, r10
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0x8944; BYTE $0xd1     // mov    ecx, r10d
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001b8; BYTE $0x00 // mov    eax, 1
	WORD $0xe0d3                 // shl    eax, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	LONG $0x01c28349             // add    r10, 1
	LONG $0x08fa8349             // cmp    r10, 8
	JNE  LBB0_114
	LONG $0x01c48349             // add    r12, 1

LBB0_116:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_120
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB0_118:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	LONG $0x06100ff3                           // movss    xmm0, dword [rsi]
	WORD $0x2e0f; BYTE $0x02                   // ucomiss    xmm0, dword [rdx]
	LONG $0x46100ff3; BYTE $0x04               // movss    xmm0, dword [rsi + 4]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x15244c88                           // mov    byte [rsp + 21], cl
	LONG $0x04422e0f                           // ucomiss    xmm0, dword [rdx + 4]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0d244c88                           // mov    byte [rsp + 13], cl
	LONG $0x46100ff3; BYTE $0x08               // movss    xmm0, dword [rsi + 8]
	LONG $0x08422e0f                           // ucomiss    xmm0, dword [rdx + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x14244c88                           // mov    byte [rsp + 20], cl
	LONG $0x46100ff3; BYTE $0x0c               // movss    xmm0, dword [rsi + 12]
	LONG $0x0c422e0f                           // ucomiss    xmm0, dword [rdx + 12]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x17244c88                           // mov    byte [rsp + 23], cl
	LONG $0x46100ff3; BYTE $0x10               // movss    xmm0, dword [rsi + 16]
	LONG $0x10422e0f                           // ucomiss    xmm0, dword [rdx + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x16244c88                           // mov    byte [rsp + 22], cl
	LONG $0x46100ff3; BYTE $0x14               // movss    xmm0, dword [rsi + 20]
	LONG $0x14422e0f                           // ucomiss    xmm0, dword [rdx + 20]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	LONG $0x46100ff3; BYTE $0x18               // movss    xmm0, dword [rsi + 24]
	LONG $0x18422e0f                           // ucomiss    xmm0, dword [rdx + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x2041; BYTE $0xc5                   // and    r13b, al
	LONG $0x46100ff3; BYTE $0x1c               // movss    xmm0, dword [rsi + 28]
	LONG $0x1c422e0f                           // ucomiss    xmm0, dword [rdx + 28]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x03244c88                           // mov    byte [rsp + 3], cl
	LONG $0x46100ff3; BYTE $0x20               // movss    xmm0, dword [rsi + 32]
	LONG $0x20422e0f                           // ucomiss    xmm0, dword [rdx + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x13244c88                           // mov    byte [rsp + 19], cl
	LONG $0x46100ff3; BYTE $0x24               // movss    xmm0, dword [rsi + 36]
	LONG $0x24422e0f                           // ucomiss    xmm0, dword [rdx + 36]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xc320                               // and    bl, al
	LONG $0x46100ff3; BYTE $0x28               // movss    xmm0, dword [rsi + 40]
	LONG $0x28422e0f                           // ucomiss    xmm0, dword [rdx + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x12244c88                           // mov    byte [rsp + 18], cl
	LONG $0x46100ff3; BYTE $0x2c               // movss    xmm0, dword [rsi + 44]
	LONG $0x2c422e0f                           // ucomiss    xmm0, dword [rdx + 44]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x11244c88                           // mov    byte [rsp + 17], cl
	LONG $0x46100ff3; BYTE $0x30               // movss    xmm0, dword [rsi + 48]
	LONG $0x30422e0f                           // ucomiss    xmm0, dword [rdx + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x46100ff3; BYTE $0x34               // movss    xmm0, dword [rsi + 52]
	LONG $0x34422e0f                           // ucomiss    xmm0, dword [rdx + 52]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0f244c88                           // mov    byte [rsp + 15], cl
	LONG $0x46100ff3; BYTE $0x38               // movss    xmm0, dword [rsi + 56]
	LONG $0x38422e0f                           // ucomiss    xmm0, dword [rdx + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0c244c88                           // mov    byte [rsp + 12], cl
	LONG $0x46100ff3; BYTE $0x3c               // movss    xmm0, dword [rsi + 60]
	LONG $0x3c422e0f                           // ucomiss    xmm0, dword [rdx + 60]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0b244c88                           // mov    byte [rsp + 11], cl
	LONG $0x46100ff3; BYTE $0x40               // movss    xmm0, dword [rsi + 64]
	LONG $0x40422e0f                           // ucomiss    xmm0, dword [rdx + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0e244c88                           // mov    byte [rsp + 14], cl
	LONG $0x46100ff3; BYTE $0x44               // movss    xmm0, dword [rsi + 68]
	LONG $0x44422e0f                           // ucomiss    xmm0, dword [rdx + 68]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x0a244c88                           // mov    byte [rsp + 10], cl
	LONG $0x46100ff3; BYTE $0x48               // movss    xmm0, dword [rsi + 72]
	LONG $0x48422e0f                           // ucomiss    xmm0, dword [rdx + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x09244c88                           // mov    byte [rsp + 9], cl
	LONG $0x46100ff3; BYTE $0x4c               // movss    xmm0, dword [rsi + 76]
	LONG $0x4c422e0f                           // ucomiss    xmm0, dword [rdx + 76]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	LONG $0x46100ff3; BYTE $0x50               // movss    xmm0, dword [rsi + 80]
	LONG $0x50422e0f                           // ucomiss    xmm0, dword [rdx + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x46100ff3; BYTE $0x54               // movss    xmm0, dword [rsi + 84]
	LONG $0x54422e0f                           // ucomiss    xmm0, dword [rdx + 84]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x07244c88                           // mov    byte [rsp + 7], cl
	LONG $0x46100ff3; BYTE $0x58               // movss    xmm0, dword [rsi + 88]
	LONG $0x58422e0f                           // ucomiss    xmm0, dword [rdx + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x05244c88                           // mov    byte [rsp + 5], cl
	LONG $0x46100ff3; BYTE $0x5c               // movss    xmm0, dword [rsi + 92]
	LONG $0x5c422e0f                           // ucomiss    xmm0, dword [rdx + 92]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	LONG $0x46100ff3; BYTE $0x60               // movss    xmm0, dword [rsi + 96]
	LONG $0x60422e0f                           // ucomiss    xmm0, dword [rdx + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x06244c88                           // mov    byte [rsp + 6], cl
	LONG $0x46100ff3; BYTE $0x64               // movss    xmm0, dword [rsi + 100]
	LONG $0x64422e0f                           // ucomiss    xmm0, dword [rdx + 100]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x46100ff3; BYTE $0x68               // movss    xmm0, dword [rsi + 104]
	LONG $0x68422e0f                           // ucomiss    xmm0, dword [rdx + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	LONG $0x46100ff3; BYTE $0x6c               // movss    xmm0, dword [rsi + 108]
	LONG $0x6c422e0f                           // ucomiss    xmm0, dword [rdx + 108]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x2041; BYTE $0xc6                   // and    r14b, al
	LONG $0x46100ff3; BYTE $0x70               // movss    xmm0, dword [rsi + 112]
	LONG $0x70422e0f                           // ucomiss    xmm0, dword [rdx + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	LONG $0x46100ff3; BYTE $0x74               // movss    xmm0, dword [rsi + 116]
	LONG $0x74422e0f                           // ucomiss    xmm0, dword [rdx + 116]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x46100ff3; BYTE $0x78               // movss    xmm0, dword [rsi + 120]
	LONG $0x78422e0f                           // ucomiss    xmm0, dword [rdx + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	LONG $0x46100ff3; BYTE $0x7c               // movss    xmm0, dword [rsi + 124]
	LONG $0x80ee8348                           // sub    rsi, -128
	LONG $0x7c422e0f                           // ucomiss    xmm0, dword [rdx + 124]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x15244402                           // add    al, byte [rsp + 21]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0841; BYTE $0xfd                   // or    r13b, dil
	WORD $0x8944; BYTE $0xef                   // mov    edi, r13d
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xd889                               // mov    eax, ebx
	WORD $0xd800                               // add    al, bl
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x03               // movzx    eax, byte [rsp + 3]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x03244488                           // mov    byte [rsp + 3], al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x17               // movzx    eax, byte [rsp + 23]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	LONG $0x245cb60f; BYTE $0x11               // movzx    ebx, byte [rsp + 17]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc789                               // mov    edi, eax
	LONG $0x245cb60f; BYTE $0x0f               // movzx    ebx, byte [rsp + 15]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x0a               // movzx    ebx, byte [rsp + 10]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x0e245c02                           // add    bl, byte [rsp + 14]
	LONG $0x244cb60f; BYTE $0x09               // movzx    ecx, byte [rsp + 9]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd908                               // or    cl, bl
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x5cb60f44; WORD $0x0324             // movzx    r11d, byte [rsp + 3]
	WORD $0x0845; BYTE $0xeb                   // or    r11b, r13b
	LONG $0x6cb60f44; WORD $0x0724             // movzx    r13d, byte [rsp + 7]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x05               // movzx    ecx, byte [rsp + 5]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xc900                               // add    cl, cl
	LONG $0x06244c02                           // add    cl, byte [rsp + 6]
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	LONG $0x03e6c041                           // shl    r14b, 3
	WORD $0x0845; BYTE $0xfe                   // or    r14b, r15b
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xf1                   // or    cl, r14b
	LONG $0x241c8845                           // mov    byte [r12], r11b
	LONG $0x245cb60f; BYTE $0x28               // movzx    ebx, byte [rsp + 40]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x24448841; BYTE $0x01               // mov    byte [r12 + 1], al
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xc8                   // or    r8b, r9b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x24548845; BYTE $0x02               // mov    byte [r12 + 2], r10b
	LONG $0x24448845; BYTE $0x03               // mov    byte [r12 + 3], r8b
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB0_118
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB0_120:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_122:
	LONG $0x01498d4c             // lea    r9, [rcx + 1]
	LONG $0x04100ff3; BYTE $0x8e // movss    xmm0, dword [rsi + 4*rcx]
	LONG $0x8a042e0f             // ucomiss    xmm0, dword [rdx + 4*rcx]
	WORD $0x9b0f; BYTE $0xd3     // setnp    bl
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd820                 // and    al, bl
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	WORD $0x894c; BYTE $0xc9     // mov    rcx, r9
	WORD $0x394d; BYTE $0xce     // cmp    r14, r9
	JNE  LBB0_122
	JMP  LBB0_123

LBB0_57:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_61
	WORD $0x9848             // cdqe

LBB0_59:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_59
	LONG $0x01c48349             // add    r12, 1

LBB0_61:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_65
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB0_63:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454940f; BYTE $0x04   // sete    byte [rsp + 4]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x940f; BYTE $0xd3       // sete    bl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x2454940f; BYTE $0x15   // sete    byte [rsp + 21]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454940f; BYTE $0x16   // sete    byte [rsp + 22]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x2454940f; BYTE $0x17   // sete    byte [rsp + 23]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454940f; BYTE $0x03   // sete    byte [rsp + 3]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x2454940f; BYTE $0x05   // sete    byte [rsp + 5]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7940f41               // sete    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x2454940f; BYTE $0x08   // sete    byte [rsp + 8]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd7940f40               // sete    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd2940f41               // sete    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3940f41               // sete    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd6940f41               // sete    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454940f; BYTE $0x06   // sete    byte [rsp + 6]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x2454940f; BYTE $0x07   // sete    byte [rsp + 7]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	LONG $0xd0940f41               // sete    r8b
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x2454940f; BYTE $0x0e   // sete    byte [rsp + 14]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4940f41               // sete    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd5940f41               // sete    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454940f; BYTE $0x09   // sete    byte [rsp + 9]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x2454940f; BYTE $0x0a   // sete    byte [rsp + 10]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454940f; BYTE $0x0b   // sete    byte [rsp + 11]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x2454940f; BYTE $0x0c   // sete    byte [rsp + 12]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd1940f41               // sete    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x2454940f; BYTE $0x14   // sete    byte [rsp + 20]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454940f; BYTE $0x0d   // sete    byte [rsp + 13]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x2454940f; BYTE $0x0f   // sete    byte [rsp + 15]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454940f; BYTE $0x10   // sete    byte [rsp + 16]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x2454940f; BYTE $0x11   // sete    byte [rsp + 17]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454940f; BYTE $0x12   // sete    byte [rsp + 18]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454940f; BYTE $0x13   // sete    byte [rsp + 19]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	WORD $0x940f; BYTE $0xd1       // sete    cl
	WORD $0xdb00                   // add    bl, bl
	LONG $0x04245c02               // add    bl, byte [rsp + 4]
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x245cb60f; BYTE $0x05   // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	LONG $0x245cb60f; BYTE $0x15   // movzx    ebx, byte [rsp + 21]
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x08   // add    dil, byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0xdf89                   // mov    edi, ebx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07   // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040               // shl    dil, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xf8       // or    r8b, dil
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e   // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x243c8845               // mov    byte [r12], r15b
	LONG $0x245cb60f; BYTE $0x0c   // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x24448845; BYTE $0x01   // mov    byte [r12 + 1], r8b
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x13   // movzx    ebx, byte [rsp + 19]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff28 // add    qword [rsp + 40], -1
	JNE  LBB0_63
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20   // mov    r15, qword [rsp + 32]

LBB0_65:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_67:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_67
	JMP  LBB0_123

LBB0_90:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB0_94
	WORD $0x9848             // cdqe

LBB0_92:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd2940f41             // sete    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB0_92
	LONG $0x01c48349             // add    r12, 1

LBB0_94:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB0_98
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB0_96:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454940f; BYTE $0x15               // sete    byte [rsp + 21]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x2454940f; BYTE $0x16               // sete    byte [rsp + 22]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454940f; BYTE $0x17               // sete    byte [rsp + 23]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x2454940f; BYTE $0x03               // sete    byte [rsp + 3]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454940f; BYTE $0x05               // sete    byte [rsp + 5]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454940f; BYTE $0x0a               // sete    byte [rsp + 10]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x2454940f; BYTE $0x06               // sete    byte [rsp + 6]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x2454940f; BYTE $0x07               // sete    byte [rsp + 7]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	LONG $0xd7940f40                           // sete    dil
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x5e8b; BYTE $0x44                   // mov    ebx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x2454940f; BYTE $0x0b               // sete    byte [rsp + 11]
	WORD $0x5a3b; BYTE $0x44                   // cmp    ebx, dword [rdx + 68]
	WORD $0x5e8b; BYTE $0x4c                   // mov    ebx, dword [rsi + 76]
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x5a3b; BYTE $0x4c                   // cmp    ebx, dword [rdx + 76]
	WORD $0x5e8b; BYTE $0x54                   // mov    ebx, dword [rsi + 84]
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454940f; BYTE $0x09               // sete    byte [rsp + 9]
	WORD $0x5a3b; BYTE $0x54                   // cmp    ebx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454940f; BYTE $0x0c               // sete    byte [rsp + 12]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x2454940f; BYTE $0x0d               // sete    byte [rsp + 13]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454940f; BYTE $0x14               // sete    byte [rsp + 20]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x2454940f; BYTE $0x0e               // sete    byte [rsp + 14]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454940f; BYTE $0x0f               // sete    byte [rsp + 15]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x2454940f; BYTE $0x11               // sete    byte [rsp + 17]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454940f; BYTE $0x13               // sete    byte [rsp + 19]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454940f; BYTE $0x12               // sete    byte [rsp + 18]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB0_96
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB0_98:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB0_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB0_100:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB0_100

LBB0_123:
	SUBQ $8, SP
	RET

DATA LCDATA1<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA1<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA1<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA1<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA1<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA1<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA1<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA1<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA1<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA1<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA1<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA1<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA1<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA1<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA1<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA1<>+0x080(SB)/8, $0x0101010101010101
DATA LCDATA1<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x090(SB)/8, $0x0f070e060d050c04
DATA LCDATA1<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA1<>+0x0a0(SB)/8, $0x0101010101010101
DATA LCDATA1<>+0x0a8(SB)/8, $0x0101010101010101
DATA LCDATA1<>+0x0b0(SB)/8, $0x0404040404040404
DATA LCDATA1<>+0x0b8(SB)/8, $0x0404040404040404
DATA LCDATA1<>+0x0c0(SB)/8, $0x0808080808080808
DATA LCDATA1<>+0x0c8(SB)/8, $0x0808080808080808
DATA LCDATA1<>+0x0d0(SB)/8, $0x1010101010101010
DATA LCDATA1<>+0x0d8(SB)/8, $0x1010101010101010
DATA LCDATA1<>+0x0e0(SB)/8, $0x2020202020202020
DATA LCDATA1<>+0x0e8(SB)/8, $0x2020202020202020
DATA LCDATA1<>+0x0f0(SB)/8, $0x4040404040404040
DATA LCDATA1<>+0x0f8(SB)/8, $0x4040404040404040
GLOBL LCDATA1<>(SB), 8, $256

TEXT ·_comparison_equal_arr_scalar_sse4(SB), $328-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 304(SP)
	LEAQ LCDATA1<>(SB), BP

	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	WORD $0x8949; BYTE $0xce // mov    r14, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB1_27
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB1_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB1_101
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB1_124
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB1_199
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_17
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_15:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB1_15
	LONG $0x01c68349                           // add    r14, 1

LBB1_17:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_21
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x000000a0249c894c // mov    qword [rsp + 160], r11

LBB1_19:
	QUAD $0x0000008824b4894c                   // mov    qword [rsp + 136], r14
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd7940f40                           // sete    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000008824b48b4c                   // mov    r14, qword [rsp + 136]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x247cb60f; BYTE $0x70               // movzx    edi, byte [rsp + 112]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x50244402                           // add    al, byte [rsp + 80]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000a024848348; BYTE $0xff       // add    qword [rsp + 160], -1
	JNE  LBB1_19
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB1_21:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JE   LBB1_23
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB1_145:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB1_145
	JMP  LBB1_24

LBB1_27:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB1_28
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB1_160
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB1_172
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB1_199
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff2         // movsd    xmm0, qword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_50
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_48:
	LONG $0x062e0f66             // ucomisd    xmm0, qword [rsi]
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xca20                 // and    dl, cl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_48
	LONG $0x01c68349             // add    r14, 1

LBB1_50:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_54
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000110249c894c // mov    qword [rsp + 272], r11
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11

LBB1_52:
	QUAD $0x0000008824b4894c                   // mov    qword [rsp + 136], r14
	LONG $0x062e0f66                           // ucomisd    xmm0, qword [rsi]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x462e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rsi + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x2041; BYTE $0xc5                   // and    r13b, al
	LONG $0x462e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rsi + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x462e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rsi + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x462e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rsi + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x462e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rsi + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x2041; BYTE $0xc4                   // and    r12b, al
	LONG $0x462e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rsi + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x462e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rsi + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	LONG $0x462e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rsi + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x462e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rsi + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x462e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rsi + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x462e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rsi + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xc320                               // and    bl, al
	LONG $0x462e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rsi + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x462e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rsi + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	LONG $0x462e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rsi + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x462e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rsi + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	QUAD $0x00000080862e0f66                   // ucomisd    xmm0, qword [rsi + 128]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	QUAD $0x00000088862e0f66                   // ucomisd    xmm0, qword [rsi + 136]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	QUAD $0x00000090862e0f66                   // ucomisd    xmm0, qword [rsi + 144]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	QUAD $0x00000098862e0f66                   // ucomisd    xmm0, qword [rsi + 152]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	QUAD $0x000000a0862e0f66                   // ucomisd    xmm0, qword [rsi + 160]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	QUAD $0x000000a8862e0f66                   // ucomisd    xmm0, qword [rsi + 168]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	QUAD $0x000000b0862e0f66                   // ucomisd    xmm0, qword [rsi + 176]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	QUAD $0x000000b8862e0f66                   // ucomisd    xmm0, qword [rsi + 184]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	QUAD $0x000000c0862e0f66                   // ucomisd    xmm0, qword [rsi + 192]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xd0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 208], cl
	QUAD $0x000000c8862e0f66                   // ucomisd    xmm0, qword [rsi + 200]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	QUAD $0x000000d0862e0f66                   // ucomisd    xmm0, qword [rsi + 208]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	QUAD $0x000000d8862e0f66                   // ucomisd    xmm0, qword [rsi + 216]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	QUAD $0x000000e0862e0f66                   // ucomisd    xmm0, qword [rsi + 224]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x98248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 152], cl
	QUAD $0x000000e8862e0f66                   // ucomisd    xmm0, qword [rsi + 232]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	QUAD $0x000000f0862e0f66                   // ucomisd    xmm0, qword [rsi + 240]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	QUAD $0x000000f8862e0f66                   // ucomisd    xmm0, qword [rsi + 248]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xc220                               // and    dl, al
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x30               // add    r13b, byte [rsp + 48]
	WORD $0x8944; BYTE $0xe8                   // mov    eax, r13d
	LONG $0x05e4c041                           // shl    r12b, 5
	LONG $0x6cb60f44; WORD $0x3824             // movzx    r13d, byte [rsp + 56]
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	LONG $0x64b60f44; WORD $0x1824             // movzx    r12d, byte [rsp + 24]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x244cb60f; BYTE $0x40               // movzx    ecx, byte [rsp + 64]
	WORD $0xc900                               // add    cl, cl
	LONG $0x20244c02                           // add    cl, byte [rsp + 32]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x04244488                           // mov    byte [rsp + 4], al
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xcb08                               // or    bl, cl
	LONG $0x6cb60f44; WORD $0x1024             // movzx    r13d, byte [rsp + 16]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	LONG $0x08244488                           // mov    byte [rsp + 8], al
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x74b60f44; WORD $0x6024             // movzx    r14d, byte [rsp + 96]
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xc900                               // add    cl, cl
	LONG $0x58244c02                           // add    cl, byte [rsp + 88]
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0xcb08                               // or    bl, cl
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	QUAD $0x000000c0248cb60f                   // movzx    ecx, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	WORD $0x8941; BYTE $0xcc                   // mov    r12d, ecx
	QUAD $0x00000088248c8b48                   // mov    rcx, qword [rsp + 136]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	QUAD $0x000000b0249cb60f                   // movzx    ebx, byte [rsp + 176]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e7c041                           // shl    r15b, 6
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x24740a44; BYTE $0x08               // or    r14b, byte [rsp + 8]
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf8                   // or    r8b, r15b
	WORD $0x0845; BYTE $0xe0                   // or    r8b, r12b
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000d0249c0244                   // add    r11b, byte [rsp + 208]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	QUAD $0x00000098249cb60f                   // movzx    ebx, byte [rsp + 152]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xcb                   // or    bl, r9b
	WORD $0x8941; BYTE $0xd9                   // mov    r9d, ebx
	WORD $0x0188                               // mov    byte [rcx], al
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x01718844                           // mov    byte [rcx + 1], r14b
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0x0844; BYTE $0xca                   // or    dl, r9b
	LONG $0x02418844                           // mov    byte [rcx + 2], r8b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c18348                           // add    rcx, 4
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB1_52
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000110249c8b4c                   // mov    r11, qword [rsp + 272]

LBB1_54:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB1_195
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB1_197

LBB1_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB1_57
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB1_199
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_6:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf4     // mov    r12, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_6
	LONG $0x01c68349             // add    r14, 1

LBB1_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB1_9
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x245c8844; BYTE $0x04 // mov    byte [rsp + 4], r11b
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x0000010024bc894c     // mov    qword [rsp + 256], r15
	JB   LBB1_84
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB1_87
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB1_87

LBB1_84:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	LONG $0x2474894c; BYTE $0x58 // mov    qword [rsp + 88], r14

LBB1_90:
	QUAD $0x000000e824bc2b4c // sub    r15, qword [rsp + 232]
	QUAD $0x0000009824bc894c // mov    qword [rsp + 152], r15

LBB1_91:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd6940f40                           // sete    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd7940f40                           // sete    dil
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x000000882494940f                   // sete    byte [rsp + 136]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000a024b40240                   // add    sil, byte [rsp + 160]
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0xc0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 192]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0424             // movzx    r15d, byte [rsp + 4]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x2474b60f; BYTE $0x70               // movzx    esi, byte [rsp + 112]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	QUAD $0x000000802494b60f                   // movzx    edx, byte [rsp + 128]
	WORD $0xd200                               // add    dl, dl
	LONG $0x78245402                           // add    dl, byte [rsp + 120]
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x24548b48; BYTE $0x58               // mov    rdx, qword [rsp + 88]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	LONG $0x247cb60f; BYTE $0x48               // movzx    edi, byte [rsp + 72]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x20244402                           // add    al, byte [rsp + 32]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000008824b4b60f                   // movzx    esi, byte [rsp + 136]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	LONG $0x24548948; BYTE $0x58               // mov    qword [rsp + 88], rdx
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB1_91
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	JMP  LBB1_93

LBB1_28:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB1_146
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB1_199
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_34
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_32:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB1_32
	LONG $0x01c68349                           // add    r14, 1

LBB1_34:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_38
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x000000a0249c894c // mov    qword [rsp + 160], r11

LBB1_36:
	QUAD $0x0000008824b4894c                   // mov    qword [rsp + 136], r14
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd7940f40                           // sete    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7940f41                           // sete    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000008824b48b4c                   // mov    r14, qword [rsp + 136]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x247cb60f; BYTE $0x70               // movzx    edi, byte [rsp + 112]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x50244402                           // add    al, byte [rsp + 80]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000a024848348; BYTE $0xff       // add    qword [rsp + 160], -1
	JNE  LBB1_36
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB1_38:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JE   LBB1_40
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB1_159:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB1_159
	JMP  LBB1_41

LBB1_57:
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_61
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_59:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf4     // mov    r12, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_59
	LONG $0x01c68349             // add    r14, 1

LBB1_61:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB1_62
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x245c8844; BYTE $0x04 // mov    byte [rsp + 4], r11b
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x0000010024bc894c     // mov    qword [rsp + 256], r15
	JB   LBB1_64
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB1_67
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB1_67

LBB1_64:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	LONG $0x2474894c; BYTE $0x38 // mov    qword [rsp + 56], r14

LBB1_70:
	QUAD $0x000000e824bc2b4c // sub    r15, qword [rsp + 232]
	QUAD $0x0000009824bc894c // mov    qword [rsp + 152], r15

LBB1_71:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd6940f40                           // sete    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd7940f40                           // sete    dil
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x000000882494940f                   // sete    byte [rsp + 136]
	LONG $0x245cb60f; BYTE $0x04               // movzx    ebx, byte [rsp + 4]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000a024b40240                   // add    sil, byte [rsp + 160]
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0xc0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 192]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0424             // movzx    r15d, byte [rsp + 4]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x2474b60f; BYTE $0x70               // movzx    esi, byte [rsp + 112]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	QUAD $0x000000802494b60f                   // movzx    edx, byte [rsp + 128]
	WORD $0xd200                               // add    dl, dl
	LONG $0x78245402                           // add    dl, byte [rsp + 120]
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	LONG $0x247cb60f; BYTE $0x58               // movzx    edi, byte [rsp + 88]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x20244402                           // add    al, byte [rsp + 32]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000008824b4b60f                   // movzx    esi, byte [rsp + 136]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	LONG $0x24548948; BYTE $0x38               // mov    qword [rsp + 56], rdx
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB1_71
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	JMP  LBB1_73

LBB1_146:
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_150
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_148:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB1_148
	LONG $0x01c68349                           // add    r14, 1

LBB1_150:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_154
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x000000a0249c894c // mov    qword [rsp + 160], r11

LBB1_152:
	QUAD $0x0000008824b4894c                   // mov    qword [rsp + 136], r14
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd7940f40                           // sete    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000008824b48b4c                   // mov    r14, qword [rsp + 136]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x247cb60f; BYTE $0x70               // movzx    edi, byte [rsp + 112]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x50244402                           // add    al, byte [rsp + 80]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000a024848348; BYTE $0xff       // add    qword [rsp + 160], -1
	JNE  LBB1_152
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB1_154:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB1_156

LBB1_23:
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB1_24

LBB1_101:
	LONG $0x1ab70f44         // movzx    r11d, word [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_105
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_103:
	LONG $0x1e394466             // cmp    word [rsi], r11w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf4     // mov    r12, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_103
	LONG $0x01c68349             // add    r14, 1

LBB1_105:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB1_106
	LONG $0x08ff8349             // cmp    r15, 8
	LONG $0x245c8944; BYTE $0x04 // mov    dword [rsp + 4], r11d
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x000000f024bc894c     // mov    qword [rsp + 240], r15
	JB   LBB1_108
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB1_111
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xf0     // cmp    rax, rsi
	JBE  LBB1_111

LBB1_108:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	LONG $0x2474894c; BYTE $0x08 // mov    qword [rsp + 8], r14

LBB1_114:
	LONG $0x247c2b4c; BYTE $0x20 // sub    r15, qword [rsp + 32]
	QUAD $0x0000009824bc894c     // mov    qword [rsp + 152], r15

LBB1_115:
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	LONG $0x1e394466                           // cmp    word [rsi], r11w
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x5e394466; BYTE $0x02               // cmp    word [rsi + 2], r11w
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x5e394466; BYTE $0x04               // cmp    word [rsi + 4], r11w
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x06463966                           // cmp    word [rsi + 6], ax
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x08463966                           // cmp    word [rsi + 8], ax
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0a463966                           // cmp    word [rsi + 10], ax
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0c463966                           // cmp    word [rsi + 12], ax
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0e463966                           // cmp    word [rsi + 14], ax
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x10463966                           // cmp    word [rsi + 16], ax
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x12463966                           // cmp    word [rsi + 18], ax
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x14463966                           // cmp    word [rsi + 20], ax
	LONG $0xd6940f40                           // sete    sil
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x16               // cmp    word [r10 + 22], ax
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x18               // cmp    word [r10 + 24], ax
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1a               // cmp    word [r10 + 26], ax
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1c               // cmp    word [r10 + 28], ax
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1e               // cmp    word [r10 + 30], ax
	LONG $0xd7940f40                           // sete    dil
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x20               // cmp    word [r10 + 32], dx
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x22               // cmp    word [r10 + 34], dx
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x24               // cmp    word [r10 + 36], dx
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x26               // cmp    word [r10 + 38], dx
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x28               // cmp    word [r10 + 40], dx
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2a               // cmp    word [r10 + 42], dx
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2c               // cmp    word [r10 + 44], dx
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2e               // cmp    word [r10 + 46], dx
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x30               // cmp    word [r10 + 48], dx
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x32               // cmp    word [r10 + 50], dx
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x34               // cmp    word [r10 + 52], dx
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x36               // cmp    word [r10 + 54], dx
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x38               // cmp    word [r10 + 56], dx
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3a               // cmp    word [r10 + 58], dx
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3c               // cmp    word [r10 + 60], dx
	QUAD $0x000000882494940f                   // sete    byte [rsp + 136]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3e               // cmp    word [r10 + 62], dx
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	QUAD $0x000000a024840244                   // add    r8b, byte [rsp + 160]
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0xc0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 192]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	WORD $0x8941; BYTE $0xc3                   // mov    r11d, eax
	LONG $0x2474b60f; BYTE $0x70               // movzx    esi, byte [rsp + 112]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0844; BYTE $0xe7                   // or    dil, r12b
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x68244402                           // add    al, byte [rsp + 104]
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000088249cb60f                   // movzx    ebx, byte [rsp + 136]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02798844                           // mov    byte [rcx + 2], r15b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40728d49                           // lea    rsi, [r10 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB1_115
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x000000f024bc8b4c                   // mov    r15, qword [rsp + 240]
	JMP  LBB1_117

LBB1_124:
	LONG $0x1ab70f44         // movzx    r11d, word [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_128
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_126:
	LONG $0x1e394466             // cmp    word [rsi], r11w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf4     // mov    r12, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_126
	LONG $0x01c68349             // add    r14, 1

LBB1_128:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB1_129
	LONG $0x08ff8349             // cmp    r15, 8
	LONG $0x245c8944; BYTE $0x04 // mov    dword [rsp + 4], r11d
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x000000f024bc894c     // mov    qword [rsp + 240], r15
	JB   LBB1_131
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB1_134
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xf0     // cmp    rax, rsi
	JBE  LBB1_134

LBB1_131:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	LONG $0x2474894c; BYTE $0x08 // mov    qword [rsp + 8], r14

LBB1_137:
	LONG $0x247c2b4c; BYTE $0x20 // sub    r15, qword [rsp + 32]
	QUAD $0x0000009824bc894c     // mov    qword [rsp + 152], r15

LBB1_138:
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	LONG $0x1e394466                           // cmp    word [rsi], r11w
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x5e394466; BYTE $0x02               // cmp    word [rsi + 2], r11w
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x5e394466; BYTE $0x04               // cmp    word [rsi + 4], r11w
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x06463966                           // cmp    word [rsi + 6], ax
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x08463966                           // cmp    word [rsi + 8], ax
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0a463966                           // cmp    word [rsi + 10], ax
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0c463966                           // cmp    word [rsi + 12], ax
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x0e463966                           // cmp    word [rsi + 14], ax
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x10463966                           // cmp    word [rsi + 16], ax
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x12463966                           // cmp    word [rsi + 18], ax
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x14463966                           // cmp    word [rsi + 20], ax
	LONG $0xd6940f40                           // sete    sil
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x16               // cmp    word [r10 + 22], ax
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x18               // cmp    word [r10 + 24], ax
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1a               // cmp    word [r10 + 26], ax
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1c               // cmp    word [r10 + 28], ax
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x42394166; BYTE $0x1e               // cmp    word [r10 + 30], ax
	LONG $0xd7940f40                           // sete    dil
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x20               // cmp    word [r10 + 32], dx
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x22               // cmp    word [r10 + 34], dx
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x24               // cmp    word [r10 + 36], dx
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x26               // cmp    word [r10 + 38], dx
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x28               // cmp    word [r10 + 40], dx
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2a               // cmp    word [r10 + 42], dx
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2c               // cmp    word [r10 + 44], dx
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x2e               // cmp    word [r10 + 46], dx
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x30               // cmp    word [r10 + 48], dx
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x32               // cmp    word [r10 + 50], dx
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x34               // cmp    word [r10 + 52], dx
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x36               // cmp    word [r10 + 54], dx
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x38               // cmp    word [r10 + 56], dx
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3a               // cmp    word [r10 + 58], dx
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3c               // cmp    word [r10 + 60], dx
	QUAD $0x000000882494940f                   // sete    byte [rsp + 136]
	LONG $0x0424548b                           // mov    edx, dword [rsp + 4]
	LONG $0x52394166; BYTE $0x3e               // cmp    word [r10 + 62], dx
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	QUAD $0x000000a024840244                   // add    r8b, byte [rsp + 160]
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0xc0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 192]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x0424448b                           // mov    eax, dword [rsp + 4]
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	WORD $0x8941; BYTE $0xc3                   // mov    r11d, eax
	LONG $0x2474b60f; BYTE $0x70               // movzx    esi, byte [rsp + 112]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0844; BYTE $0xe7                   // or    dil, r12b
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x68244402                           // add    al, byte [rsp + 104]
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000088249cb60f                   // movzx    ebx, byte [rsp + 136]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02798844                           // mov    byte [rcx + 2], r15b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40728d49                           // lea    rsi, [r10 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB1_138
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x000000f024bc8b4c                   // mov    r15, qword [rsp + 240]
	JMP  LBB1_140

LBB1_160:
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_164
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_162:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB1_162
	LONG $0x01c68349                           // add    r14, 1

LBB1_164:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_168
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x000000a0249c894c // mov    qword [rsp + 160], r11

LBB1_166:
	QUAD $0x0000008824b4894c                   // mov    qword [rsp + 136], r14
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd7940f40                           // sete    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7940f41                           // sete    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454940f; BYTE $0x04               // sete    byte [rsp + 4]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000008824b48b4c                   // mov    r14, qword [rsp + 136]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x247cb60f; BYTE $0x70               // movzx    edi, byte [rsp + 112]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x50244402                           // add    al, byte [rsp + 80]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000a024848348; BYTE $0xff       // add    qword [rsp + 160], -1
	JNE  LBB1_166
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB1_168:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB1_170

LBB1_40:
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB1_41

LBB1_172:
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff3         // movss    xmm0, dword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB1_176
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB1_174:
	WORD $0x2e0f; BYTE $0x06     // ucomiss    xmm0, dword [rsi]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xca20                 // and    dl, cl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB1_174
	LONG $0x01c68349             // add    r14, 1

LBB1_176:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB1_177
	LONG $0x04fb8349         // cmp    r11, 4
	JB   LBB1_179
	WORD $0x894c; BYTE $0xd8 // mov    rax, r11
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB1_182
	LONG $0x9e048d4b         // lea    rax, [r14 + 4*r11]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB1_182

LBB1_179:
	WORD $0x3145; BYTE $0xc0 // xor    r8d, r8d
	WORD $0x8948; BYTE $0xf3 // mov    rbx, rsi
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14

LBB1_185:
	QUAD $0x0000008824bc894c // mov    qword [rsp + 136], r15
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	WORD $0x294d; BYTE $0xc3 // sub    r11, r8
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11

LBB1_186:
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xc220                               // and    dl, al
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x2041; BYTE $0xc4                   // and    r12b, al
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xd0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 208], cl
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x2041; BYTE $0xc6                   // and    r14b, al
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f40                           // sete    sil
	WORD $0x2040; BYTE $0xc6                   // and    sil, al
	WORD $0xd200                               // add    dl, dl
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd5                   // mov    r13d, edx
	LONG $0x2454b60f; BYTE $0x30               // movzx    edx, byte [rsp + 48]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x18244c02                           // add    cl, byte [rsp + 24]
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	LONG $0x04244488                           // mov    byte [rsp + 4], al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xca08                               // or    dl, cl
	LONG $0x6cb60f44; WORD $0x6824             // movzx    r13d, byte [rsp + 104]
	LONG $0x05e5c041                           // shl    r13b, 5
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x6cb60f44; WORD $0x6024             // movzx    r13d, byte [rsp + 96]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x50               // add    r12b, byte [rsp + 80]
	WORD $0x8944; BYTE $0xe1                   // mov    ecx, r12d
	LONG $0x64b60f44; WORD $0x7824             // movzx    r12d, byte [rsp + 120]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xcc                   // or    r12b, cl
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0x8941; BYTE $0xcc                   // mov    r12d, ecx
	QUAD $0x000000c0248cb60f                   // movzx    ecx, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x64b60f44; WORD $0x0424             // movzx    r12d, byte [rsp + 4]
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e6c041                           // shl    r14b, 6
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	WORD $0x0841; BYTE $0xd5                   // or    r13b, dl
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf0                   // or    r8b, r14b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000b0249c0244                   // add    r11b, byte [rsp + 176]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	LONG $0x04e7c041                           // shl    r15b, 4
	WORD $0x0845; BYTE $0xcf                   // or    r15b, r9b
	QUAD $0x0000008824848b48                   // mov    rax, qword [rsp + 136]
	WORD $0x8844; BYTE $0x20                   // mov    byte [rax], r12b
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0844; BYTE $0xfe                   // or    sil, r15b
	LONG $0x02408844                           // mov    byte [rax + 2], r8b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c08348                           // add    rax, 4
	QUAD $0x0000008824848948                   // mov    qword [rsp + 136], rax
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB1_186
	QUAD $0x0000008824bc8b4c                   // mov    r15, qword [rsp + 136]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x000000f0249c8b4c                   // mov    r11, qword [rsp + 240]
	JMP  LBB1_188

LBB1_9:
	LONG $0x2474894c; BYTE $0x58 // mov    qword [rsp + 88], r14

LBB1_93:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB1_96
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB1_99

LBB1_62:
	LONG $0x2474894c; BYTE $0x38 // mov    qword [rsp + 56], r14

LBB1_73:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB1_76
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB1_79

LBB1_106:
	LONG $0x2474894c; BYTE $0x08 // mov    qword [rsp + 8], r14

LBB1_117:
	LONG $0x05e7c149             // shl    r15, 5
	WORD $0x394d; BYTE $0xd7     // cmp    r15, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0     // mov    r8, r10
	WORD $0x294d; BYTE $0xf8     // sub    r8, r15
	WORD $0xf749; BYTE $0xd7     // not    r15
	WORD $0x014d; BYTE $0xd7     // add    r15, r10
	JE   LBB1_119
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0x3145; BYTE $0xff     // xor    r15d, r15d
	LONG $0x24748b4c; BYTE $0x08 // mov    r14, qword [rsp + 8]

LBB1_123:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x1e394466             // cmp    word [rsi], r11w
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xff     // mov    rdi, r15
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c78349             // add    r15, 2
	LONG $0x5e394466; BYTE $0x02 // cmp    word [rsi + 2], r11w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xf9     // cmp    r9, r15
	JNE  LBB1_123
	JMP  LBB1_120

LBB1_129:
	LONG $0x2474894c; BYTE $0x08 // mov    qword [rsp + 8], r14

LBB1_140:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB1_142

LBB1_119:
	WORD $0x3145; BYTE $0xff // xor    r15d, r15d
	JMP  LBB1_120

LBB1_177:
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14
	WORD $0x8948; BYTE $0xf3 // mov    rbx, rsi

LBB1_188:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB1_199
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB1_193
	WORD $0xf631             // xor    esi, esi
	JMP  LBB1_191

LBB1_156:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB1_157:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB1_157

LBB1_24:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB1_199
	WORD $0x3944; BYTE $0x2e // cmp    dword [rsi], r13d
	JMP  LBB1_26

LBB1_96:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x58 // mov    r14, qword [rsp + 88]

LBB1_97:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB1_97
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB1_99:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB1_199
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x58 // mov    r8, qword [rsp + 88]
	JMP  LBB1_81

LBB1_76:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x38 // mov    r14, qword [rsp + 56]

LBB1_77:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB1_77
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB1_79:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB1_199
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x38 // mov    r8, qword [rsp + 56]

LBB1_81:
	LONG $0x103c8a41         // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041         // and    r9b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xc9 // mov    ecx, r9d
	JMP  LBB1_82

LBB1_195:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB1_196:
	LONG $0x062e0f66             // ucomisd    xmm0, qword [rsi]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xc820                 // and    al, cl
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x462e0f66; BYTE $0x08 // ucomisd    xmm0, qword [rsi + 8]
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	LONG $0xd29b0f41             // setnp    r10b
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0x2044; BYTE $0xd0     // and    al, r10b
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB1_196

LBB1_197:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB1_199
	LONG $0x062e0f66         // ucomisd    xmm0, qword [rsi]
	WORD $0x9b0f; BYTE $0xd0 // setnp    al
	WORD $0x940f; BYTE $0xd2 // sete    dl
	WORD $0xc220             // and    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x894c; BYTE $0xd8 // mov    rax, r11
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x06348a41         // mov    sil, byte [r14 + rax]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf2 // xor    dl, sil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x061c8841         // mov    byte [r14 + rax], bl
	JMP  LBB1_199

LBB1_170:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB1_171:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xf7     // mov    r15, r14
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB1_171

LBB1_41:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB1_199
	WORD $0x394c; BYTE $0x2e // cmp    qword [rsi], r13

LBB1_26:
	WORD $0x940f; BYTE $0xd0 // sete    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x161c8841         // mov    byte [r14 + rdx], bl
	JMP  LBB1_199

LBB1_142:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0x3145; BYTE $0xff     // xor    r15d, r15d
	LONG $0x24748b4c; BYTE $0x08 // mov    r14, qword [rsp + 8]

LBB1_143:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x1e394466             // cmp    word [rsi], r11w
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xff     // mov    rdi, r15
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c78349             // add    r15, 2
	LONG $0x5e394466; BYTE $0x02 // cmp    word [rsi + 2], r11w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xf9     // cmp    r9, r15
	JNE  LBB1_143

LBB1_120:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB1_199
	LONG $0x1e394466             // cmp    word [rsi], r11w
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xfa     // mov    rdx, r15
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e78041             // and    r15b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d

LBB1_82:
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x101c8841         // mov    byte [r8 + rdx], bl

LBB1_199:
	MOVQ 304(SP), SP
	RET

LBB1_193:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi

LBB1_194:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xca20                 // and    dl, cl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3f // movzx    r10d, byte [r15 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0xb341; BYTE $0x01     // mov    r11b, 1
	WORD $0xd241; BYTE $0xe3     // shl    r11b, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0x2041; BYTE $0xd3     // and    r11b, dl
	WORD $0x3045; BYTE $0xd3     // xor    r11b, r10b
	LONG $0x3f1c8845             // mov    byte [r15 + rdi], r11b
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0x085b8d48             // lea    rbx, [rbx + 8]
	LONG $0xd29b0f41             // setnp    r10b
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0x2044; BYTE $0xd2     // and    dl, r10b
	WORD $0x894d; BYTE $0xfa     // mov    r10, r15
	WORD $0xdaf6                 // neg    dl
	WORD $0x3044; BYTE $0xda     // xor    dl, r11b
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xd8     // xor    al, r11b
	LONG $0x3f048841             // mov    byte [r15 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB1_194

LBB1_191:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB1_199
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd0 // setnp    al
	WORD $0x940f; BYTE $0xd2 // sete    dl
	WORD $0xc220             // and    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x8948; BYTE $0xf0 // mov    rax, rsi
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x073c8a41         // mov    dil, byte [r15 + rax]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xfa // xor    dl, dil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x071c8841         // mov    byte [r15 + rax], bl
	JMP  LBB1_199

LBB1_87:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e824bc894c             // mov    qword [rsp + 232], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x58         // mov    qword [rsp + 88], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000c0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 192], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008824b4894c             // mov    qword [rsp + 136], r14

LBB1_88:
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	LONG $0x05e7c148                           // shl    rdi, 5
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	WORD $0x8949; BYTE $0xf8                   // mov    r8, rdi
	WORD $0x8949; BYTE $0xf9                   // mov    r9, rdi
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	LONG $0x247c8948; BYTE $0x68               // mov    qword [rsp + 104], rdi
	LONG $0x3e0cb60f                           // movzx    ecx, byte [rsi + rdi]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x3e4cb60f; BYTE $0x01               // movzx    ecx, byte [rsi + rdi + 1]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x3e4cb60f; BYTE $0x02               // movzx    ecx, byte [rsi + rdi + 2]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x3e4cb60f; BYTE $0x03               // movzx    ecx, byte [rsi + rdi + 3]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x3e4cb60f; BYTE $0x04               // movzx    ecx, byte [rsi + rdi + 4]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x3e4cb60f; BYTE $0x05               // movzx    ecx, byte [rsi + rdi + 5]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x3e4cb60f; BYTE $0x06               // movzx    ecx, byte [rsi + rdi + 6]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x3e4cb60f; BYTE $0x07               // movzx    ecx, byte [rsi + rdi + 7]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x3e4cb60f; BYTE $0x08               // movzx    ecx, byte [rsi + rdi + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x3e4cb60f; BYTE $0x09               // movzx    ecx, byte [rsi + rdi + 9]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x3e4cb60f; BYTE $0x0a               // movzx    ecx, byte [rsi + rdi + 10]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x3e4cb60f; BYTE $0x0b               // movzx    ecx, byte [rsi + rdi + 11]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x3e4cb60f; BYTE $0x0c               // movzx    ecx, byte [rsi + rdi + 12]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x3e4cb60f; BYTE $0x0d               // movzx    ecx, byte [rsi + rdi + 13]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x3e4cb60f; BYTE $0x0e               // movzx    ecx, byte [rsi + rdi + 14]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x247c8948; BYTE $0x28               // mov    qword [rsp + 40], rdi
	WORD $0x8949; BYTE $0xfd                   // mov    r13, rdi
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x08               // mov    qword [rsp + 8], r13
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x244c8948; BYTE $0x50               // mov    qword [rsp + 80], rcx
	LONG $0x60cb8349                           // or    r11, 96
	LONG $0x80cb8148; WORD $0x0000; BYTE $0x00 // or    rbx, 128
	LONG $0xa0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 160
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0xe0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 224
	LONG $0x00ce8149; WORD $0x0001; BYTE $0x00 // or    r14, 256
	LONG $0x20c98149; WORD $0x0001; BYTE $0x00 // or    r9, 288
	LONG $0x244c894c; BYTE $0x78               // mov    qword [rsp + 120], r9
	LONG $0x01400d48; WORD $0x0000             // or    rax, 320
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	LONG $0x60ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 352
	QUAD $0x000000d024948948                   // mov    qword [rsp + 208], rdx
	LONG $0x24448b4c; BYTE $0x68               // mov    r8, qword [rsp + 104]
	LONG $0x80c88149; WORD $0x0001; BYTE $0x00 // or    r8, 384
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x18               // mov    qword [rsp + 24], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x48               // mov    qword [rsp + 72], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	QUAD $0x012e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 1
	QUAD $0x020e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rcx], 2
	QUAD $0x031e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r11], 3
	LONG $0x245c8948; BYTE $0x30               // mov    qword [rsp + 48], rbx
	QUAD $0x041e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rbx], 4
	LONG $0x247c894c; BYTE $0x20               // mov    qword [rsp + 32], r15
	QUAD $0x053e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r15], 5
	QUAD $0x06263c203a0f4666                   // pinsrb    xmm15, byte [rsi + r12], 6
	WORD $0x894c; BYTE $0xd7                   // mov    rdi, r10
	QUAD $0x000000802494894c                   // mov    qword [rsp + 128], r10
	QUAD $0x07163c203a0f4666                   // pinsrb    xmm15, byte [rsi + r10], 7
	WORD $0x894d; BYTE $0xf2                   // mov    r10, r14
	QUAD $0x08363c203a0f4666                   // pinsrb    xmm15, byte [rsi + r14], 8
	QUAD $0x090e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r9], 9
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x0a2e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 10
	QUAD $0x0b163c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdx], 11
	QUAD $0x0c063c203a0f4666                   // pinsrb    xmm15, byte [rsi + r8], 12
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	QUAD $0x0d363c203a0f4666                   // pinsrb    xmm15, byte [rsi + r14], 13
	LONG $0x244c8b4c; BYTE $0x48               // mov    r9, qword [rsp + 72]
	QUAD $0x0e0e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r9], 14
	QUAD $0x0f063c203a0f4466                   // pinsrb    xmm15, byte [rsi + rax], 15
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x01010e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 1], 1
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x02010e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 1], 2
	QUAD $0x011e6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r11 + 1], 3
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x04011e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 1], 4
	QUAD $0x013e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r15 + 1], 5
	QUAD $0x01266c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r12 + 1], 6
	LONG $0x2464894c; BYTE $0x70               // mov    qword [rsp + 112], r12
	QUAD $0x07013e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 1], 7
	QUAD $0x01166c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r10 + 1], 8
	WORD $0x894c; BYTE $0xd3                   // mov    rbx, r10
	LONG $0x2454894c; BYTE $0x38               // mov    qword [rsp + 56], r10
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x013e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r15 + 1], 9
	QUAD $0x012e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r13 + 1], 10
	QUAD $0x0b01166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 1], 11
	QUAD $0x01066c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r8 + 1], 12
	WORD $0x894d; BYTE $0xc2                   // mov    r10, r8
	LONG $0x2444894c; BYTE $0x68               // mov    qword [rsp + 104], r8
	QUAD $0x01366c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r14 + 1], 13
	QUAD $0x010e6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r9 + 1], 14
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	QUAD $0x0f01066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 1], 15
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x00c0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xe9               // pcmpeqb    xmm5, xmm9
	LONG $0xfd6f0f66                           // movdqa    xmm7, xmm5
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xfcdb0f66                           // pand    xmm7, xmm4
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0x24448b4c; BYTE $0x28               // mov    r8, qword [rsp + 40]
	LONG $0x54b60f42; WORD $0x0f06             // movzx    edx, byte [rsi + r8 + 15]
	LONG $0x6e0f4466; BYTE $0xf2               // movd    xmm14, edx
	LONG $0x740f4566; BYTE $0xf9               // pcmpeqb    xmm15, xmm9
	LONG $0x245c8b4c; BYTE $0x08               // mov    r11, qword [rsp + 8]
	QUAD $0x021e74203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r11 + 2], 1
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x02020674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 2], 2
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	QUAD $0x03020e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 2], 3
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x04020e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 2], 4
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x05023e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 2], 5
	QUAD $0x022674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r12 + 2], 6
	QUAD $0x0000008024948b48                   // mov    rdx, qword [rsp + 128]
	QUAD $0x07021674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 2], 7
	QUAD $0x08021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 8
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x023e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r15 + 2], 9
	LONG $0x247c8b4c; BYTE $0x10               // mov    r15, qword [rsp + 16]
	QUAD $0x023e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r15 + 2], 10
	QUAD $0x000000d024a48b4c                   // mov    r12, qword [rsp + 208]
	QUAD $0x022674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r12 + 2], 11
	QUAD $0x021674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r10 + 2], 12
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x021674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r10 + 2], 13
	QUAD $0x023674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r14 + 2], 14
	LONG $0x244c894c; BYTE $0x40               // mov    qword [rsp + 64], r9
	QUAD $0x020e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r9 + 2], 15
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0x740f4166; BYTE $0xf1               // pcmpeqb    xmm6, xmm9
	QUAD $0x000000b0856f0f66                   // movdqa    xmm0, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xf0db0f66                           // pand    xmm6, xmm0
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x54b60f42; WORD $0x1006             // movzx    edx, byte [rsi + r8 + 16]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	WORD $0x894c; BYTE $0xda                   // mov    rdx, r11
	QUAD $0x031e54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r11 + 3], 1
	QUAD $0x02030654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 3], 2
	QUAD $0x032e54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r13 + 3], 3
	QUAD $0x04030e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 3], 4
	WORD $0x8949; BYTE $0xcb                   // mov    r11, rcx
	QUAD $0x05033e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 3], 5
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x06030e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 3], 6
	QUAD $0x0000008024bc8b48                   // mov    rdi, qword [rsp + 128]
	QUAD $0x07033e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 3], 7
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	QUAD $0x030654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r8 + 3], 8
	QUAD $0x09031e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 3], 9
	QUAD $0x033e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r15 + 3], 10
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x032654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r12 + 3], 11
	LONG $0x24648b4c; BYTE $0x68               // mov    r12, qword [rsp + 104]
	QUAD $0x032654203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r12 + 3], 12
	QUAD $0x031654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r10 + 3], 13
	QUAD $0x033654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r14 + 3], 14
	QUAD $0x030e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r9 + 3], 15
	QUAD $0x0104164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 4], 1
	QUAD $0x0204064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 4], 2
	QUAD $0x042e4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rsi + r13 + 4], 3
	QUAD $0x041e4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r11 + 4], 4
	LONG $0x245c8b4c; BYTE $0x20               // mov    r11, qword [rsp + 32]
	QUAD $0x041e4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r11 + 4], 5
	QUAD $0x06040e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 4], 6
	QUAD $0x07043e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 4], 7
	QUAD $0x04064c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r8 + 4], 8
	QUAD $0x09041e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 4], 9
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0a040e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 4], 10
	QUAD $0x043e4c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r15 + 4], 11
	QUAD $0x04264c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r12 + 4], 12
	QUAD $0x04164c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r10 + 4], 13
	QUAD $0x04364c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r14 + 4], 14
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x040e4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r9 + 4], 15
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	LONG $0x3e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rdi + 17]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xc9               // pcmpeqb    xmm1, xmm9
	QUAD $0x000000d0ad6f0f66                   // movdqa    xmm5, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xcddb0f66                           // pand    xmm1, xmm5
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x3e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rdi + 18]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x244c8b4c; BYTE $0x08               // mov    r9, qword [rsp + 8]
	QUAD $0x050e44203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r9 + 5], 1
	QUAD $0x050644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rax + 5], 2
	QUAD $0x052e44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r13 + 5], 3
	LONG $0x246c894c; BYTE $0x60               // mov    qword [rsp + 96], r13
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x051644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rdx + 5], 4
	QUAD $0x051e44203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r11 + 5], 5
	LONG $0x247c8b48; BYTE $0x70               // mov    rdi, qword [rsp + 112]
	QUAD $0x053e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rdi + 5], 6
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x052644203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r12 + 5], 7
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x051644203a0f4466; BYTE $0x08       // pinsrb    xmm8, byte [rsi + rdx + 5], 8
	QUAD $0x051e44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rsi + rbx + 5], 9
	QUAD $0x050e44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rcx + 5], 10
	QUAD $0x053e44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r15 + 5], 11
	LONG $0x244c8b48; BYTE $0x68               // mov    rcx, qword [rsp + 104]
	QUAD $0x050e44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rcx + 5], 12
	QUAD $0x051644203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r10 + 5], 13
	WORD $0x894d; BYTE $0xd6                   // mov    r14, r10
	QUAD $0x050644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r8 + 5], 14
	LONG $0x24548b4c; BYTE $0x40               // mov    r10, qword [rsp + 64]
	QUAD $0x051644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r10 + 5], 15
	LONG $0x740f4566; BYTE $0xc1               // pcmpeqb    xmm8, xmm9
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xdb0f4466; BYTE $0xc2               // pand    xmm8, xmm2
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	LONG $0x0e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rcx + 19]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	LONG $0x0e54b60f; BYTE $0x14               // movzx    edx, byte [rsi + rcx + 20]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	QUAD $0x060e5c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r9 + 6], 1
	QUAD $0x0206065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 6], 2
	QUAD $0x062e5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r13 + 6], 3
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x061e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r11 + 6], 4
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x06065c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r8 + 6], 5
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x06063e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 6], 6
	WORD $0x894c; BYTE $0xe7                   // mov    rdi, r12
	QUAD $0x06265c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r12 + 6], 7
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x0806165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 6], 8
	QUAD $0x09061e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 6], 9
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0a06165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 6], 10
	QUAD $0x063e5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r15 + 6], 11
	LONG $0x24648b4c; BYTE $0x68               // mov    r12, qword [rsp + 104]
	QUAD $0x06265c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r12 + 6], 12
	QUAD $0x06365c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r14 + 6], 13
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	LONG $0x24748b4c; BYTE $0x48               // mov    r14, qword [rsp + 72]
	QUAD $0x06365c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r14 + 6], 14
	QUAD $0x06165c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r10 + 6], 15
	QUAD $0x0000b024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 176]
	QUAD $0x070e54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r9 + 7], 1
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	QUAD $0x02070654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 7], 2
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x03070654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 7], 3
	QUAD $0x071e54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r11 + 7], 4
	QUAD $0x070654203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r8 + 7], 5
	QUAD $0x06070e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 7], 6
	QUAD $0x07073e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 7], 7
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	QUAD $0x070654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r8 + 7], 8
	QUAD $0x09071e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 7], 9
	QUAD $0x0a071654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 7], 10
	QUAD $0x073e54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r15 + 7], 11
	QUAD $0x072654203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r12 + 7], 12
	QUAD $0x072e54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r13 + 7], 13
	WORD $0x894c; BYTE $0xf7                   // mov    rdi, r14
	QUAD $0x073654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r14 + 7], 14
	LONG $0x244c8b4c; BYTE $0x40               // mov    r9, qword [rsp + 64]
	QUAD $0x070e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r9 + 7], 15
	LONG $0x740f4166; BYTE $0xd9               // pcmpeqb    xmm3, xmm9
	QUAD $0x000000f08d6f0f66                   // movdqa    xmm1, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0xd9db0f66                           // pand    xmm3, xmm1
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0x4d6f0f66; BYTE $0x60               // movdqa    xmm1, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xd1db0f66                           // pand    xmm2, xmm1
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0x245c8b48; BYTE $0x28               // mov    rbx, qword [rsp + 40]
	LONG $0x1e54b60f; BYTE $0x15               // movzx    edx, byte [rsi + rbx + 21]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x245c8b4c; BYTE $0x08               // mov    r11, qword [rsp + 8]
	QUAD $0x091e54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r11 + 9], 1
	QUAD $0x091654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r10 + 9], 2
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x090e54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rcx + 9], 3
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x090e54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rcx + 9], 4
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x091654203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rdx + 9], 5
	LONG $0x24748b4c; BYTE $0x70               // mov    r14, qword [rsp + 112]
	QUAD $0x093654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r14 + 9], 6
	QUAD $0x090654203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rax + 9], 7
	QUAD $0x090654203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r8 + 9], 8
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	LONG $0x24448b48; BYTE $0x78               // mov    rax, qword [rsp + 120]
	QUAD $0x090654203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rax + 9], 9
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x091654203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r10 + 9], 10
	QUAD $0x000000d024948b48                   // mov    rdx, qword [rsp + 208]
	QUAD $0x091654203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rdx + 9], 11
	QUAD $0x092654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r12 + 9], 12
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x092e54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r13 + 9], 13
	QUAD $0x093e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rdi + 9], 14
	QUAD $0x090e54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r9 + 9], 15
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x0000b0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm1
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	LONG $0xccdb0f66                           // pand    xmm1, xmm4
	LONG $0xf80f4166; BYTE $0xca               // psubb    xmm1, xmm10
	LONG $0x1e54b60f; BYTE $0x16               // movzx    edx, byte [rsi + rbx + 22]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	QUAD $0x081e64203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r11 + 8], 1
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x082e64203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r13 + 8], 2
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x080664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r8 + 8], 3
	QUAD $0x04080e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 8], 4
	LONG $0x244c8b4c; BYTE $0x20               // mov    r9, qword [rsp + 32]
	QUAD $0x080e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r9 + 8], 5
	QUAD $0x083664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r14 + 8], 6
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x083664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r14 + 8], 7
	QUAD $0x083e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r15 + 8], 8
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x24548b48; BYTE $0x78               // mov    rdx, qword [rsp + 120]
	QUAD $0x09081664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 8], 9
	QUAD $0x081664203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r10 + 8], 10
	QUAD $0x000000d024bc8b4c                   // mov    r15, qword [rsp + 208]
	QUAD $0x083e64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r15 + 8], 11
	QUAD $0x082664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 8], 12
	QUAD $0x0d080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 13
	QUAD $0x0e083e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 8], 14
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0f080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 15
	LONG $0x740f4166; BYTE $0xe1               // pcmpeqb    xmm4, xmm9
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	QUAD $0x00a024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 160]
	QUAD $0x0a1e54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r11 + 10], 1
	QUAD $0x0a2e54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r13 + 10], 2
	QUAD $0x0a0654203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r8 + 10], 3
	WORD $0x894d; BYTE $0xc2                   // mov    r10, r8
	QUAD $0x0a0e54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rcx + 10], 4
	QUAD $0x0a0e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r9 + 10], 5
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x0a0e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rcx + 10], 6
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x0a3654203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r14 + 10], 7
	QUAD $0x0a1e54203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rbx + 10], 8
	QUAD $0x0a1654203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rdx + 10], 9
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0a1654203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rdx + 10], 10
	WORD $0x8948; BYTE $0xd3                   // mov    rbx, rdx
	QUAD $0x0a3e54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r15 + 10], 11
	QUAD $0x0a2654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r12 + 10], 12
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	QUAD $0x0a3654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r14 + 10], 13
	QUAD $0x0a3e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rdi + 10], 14
	QUAD $0x0a0654203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rax + 10], 15
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	QUAD $0x0000b095db0f4466; BYTE $0x00       // pand    xmm10, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4466; BYTE $0xd4               // por    xmm10, xmm4
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x0654b60f; BYTE $0x17               // movzx    edx, byte [rsi + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00a024947f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm10
	LONG $0x0654b60f; BYTE $0x18               // movzx    edx, byte [rsi + rax + 24]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	QUAD $0x0b1e5c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r11 + 11], 1
	QUAD $0x0b2e5c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rsi + r13 + 11], 2
	QUAD $0x0b165c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r10 + 11], 3
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0b065c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rax + 11], 4
	QUAD $0x0b0e5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r9 + 11], 5
	QUAD $0x0b0e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rcx + 11], 6
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x0b065c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r8 + 11], 7
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	QUAD $0x0b065c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r8 + 11], 8
	LONG $0x244c8b4c; BYTE $0x78               // mov    r9, qword [rsp + 120]
	QUAD $0x0b0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 11], 9
	QUAD $0x0b1e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rbx + 11], 10
	QUAD $0x0b3e5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r15 + 11], 11
	QUAD $0x0b265c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r12 + 11], 12
	WORD $0x894d; BYTE $0xf2                   // mov    r10, r14
	QUAD $0x0b365c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r14 + 11], 13
	LONG $0x24748b4c; BYTE $0x48               // mov    r14, qword [rsp + 72]
	QUAD $0x0b365c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r14 + 11], 14
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x0b165c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rdx + 11], 15
	QUAD $0x0c1e6c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r11 + 12], 1
	QUAD $0x0c2e6c203a0f4666; BYTE $0x02       // pinsrb    xmm13, byte [rsi + r13 + 12], 2
	LONG $0x245c8b48; BYTE $0x60               // mov    rbx, qword [rsp + 96]
	QUAD $0x0c1e6c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rbx + 12], 3
	QUAD $0x0c066c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rsi + rax + 12], 4
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0c066c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rax + 12], 5
	QUAD $0x0c0e6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rcx + 12], 6
	QUAD $0x0c3e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rdi + 12], 7
	QUAD $0x0c066c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r8 + 12], 8
	QUAD $0x0c0e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r9 + 12], 9
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0c1e6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rbx + 12], 10
	QUAD $0x0c3e6c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r15 + 12], 11
	QUAD $0x0c266c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r12 + 12], 12
	QUAD $0x0c166c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + r10 + 12], 13
	WORD $0x894d; BYTE $0xd3                   // mov    r11, r10
	QUAD $0x0c366c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r14 + 12], 14
	QUAD $0x0c166c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rdx + 12], 15
	LONG $0x24548b4c; BYTE $0x08               // mov    r10, qword [rsp + 8]
	QUAD $0x0d1664203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rsi + r10 + 13], 1
	QUAD $0x0d2e64203a0f4666; BYTE $0x02       // pinsrb    xmm12, byte [rsi + r13 + 13], 2
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x0d2e64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r13 + 13], 3
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x0d1e64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rbx + 13], 4
	QUAD $0x0d0664203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rax + 13], 5
	QUAD $0x0d0e64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rcx + 13], 6
	QUAD $0x0d3e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rdi + 13], 7
	QUAD $0x0d0664203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r8 + 13], 8
	QUAD $0x0d0e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 13], 9
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d1e64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + rbx + 13], 10
	QUAD $0x0d3e64203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r15 + 13], 11
	QUAD $0x0d2664203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r12 + 13], 12
	QUAD $0x0d1e64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r11 + 13], 13
	QUAD $0x0d3664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r14 + 13], 14
	QUAD $0x0d1664203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rdx + 13], 15
	LONG $0x740f4566; BYTE $0xd9               // pcmpeqb    xmm11, xmm9
	QUAD $0x0000c09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4566; BYTE $0xe9               // pcmpeqb    xmm13, xmm9
	QUAD $0x0000d0addb0f4466; BYTE $0x00       // pand    xmm13, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x0654b60f; BYTE $0x19               // movzx    edx, byte [rsi + rax + 25]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x740f4566; BYTE $0xe1               // pcmpeqb    xmm12, xmm9
	QUAD $0x0000e0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x0654b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rax + 26]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	QUAD $0x0000f024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 240]
	QUAD $0x0e1664203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r10 + 14], 1
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x0e3664203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r14 + 14], 2
	WORD $0x894d; BYTE $0xea                   // mov    r10, r13
	QUAD $0x0e2e64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r13 + 14], 3
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x0e1e64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r11 + 14], 4
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x050e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 14], 5
	QUAD $0x060e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 14], 6
	QUAD $0x070e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 7
	QUAD $0x0e0664203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r8 + 14], 8
	QUAD $0x0e0e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 14], 9
	QUAD $0x0a0e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 14], 10
	QUAD $0x0e3e64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r15 + 14], 11
	QUAD $0x0e2664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 14], 12
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0d0e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 13
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x0e2e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r13 + 14], 14
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x0f0e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 15
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0f1674203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rdx + 15], 1
	QUAD $0x0f3674203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r14 + 15], 2
	QUAD $0x0f1674203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r10 + 15], 3
	QUAD $0x0f1e74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rsi + r11 + 15], 4
	QUAD $0x0f0674203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rsi + rax + 15], 5
	QUAD $0x0f0e74203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rsi + rcx + 15], 6
	QUAD $0x0f3e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rdi + 15], 7
	QUAD $0x0f0674203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r8 + 15], 8
	QUAD $0x0f0e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 15], 9
	QUAD $0x0f1e74203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + rbx + 15], 10
	QUAD $0x0f3e74203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r15 + 15], 11
	QUAD $0x0f2674203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r12 + 15], 12
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0f1674203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + rdx + 15], 13
	QUAD $0x0f2e74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r13 + 15], 14
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x0f1674203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + rdx + 15], 15
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x10167c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rdx + 16], 1
	QUAD $0x10367c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r14 + 16], 2
	QUAD $0x10167c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r10 + 16], 3
	QUAD $0x101e7c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r11 + 16], 4
	QUAD $0x10067c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rax + 16], 5
	QUAD $0x100e7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rcx + 16], 6
	QUAD $0x103e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rdi + 16], 7
	QUAD $0x10067c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r8 + 16], 8
	QUAD $0x100e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 16], 9
	QUAD $0x101e7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + rbx + 16], 10
	QUAD $0x103e7c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r15 + 16], 11
	QUAD $0x10267c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r12 + 16], 12
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x10167c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdx + 16], 13
	QUAD $0x102e7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r13 + 16], 14
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x01111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 1
	QUAD $0x113644203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r14 + 17], 2
	QUAD $0x111644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 17], 3
	QUAD $0x111e44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r11 + 17], 4
	QUAD $0x05110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 5
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	QUAD $0x06110e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 17], 6
	QUAD $0x07113e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 17], 7
	QUAD $0x110644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r8 + 17], 8
	QUAD $0x110e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 17], 9
	QUAD $0x0a111e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 17], 10
	QUAD $0x113e44203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r15 + 17], 11
	QUAD $0x112644203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r12 + 17], 12
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0d110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 13
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x0e111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 14
	QUAD $0x00a024a4eb0f4466; WORD $0x0000     // por    xmm12, oword [rsp + 160]
	LONG $0x24748b4c; BYTE $0x28               // mov    r14, qword [rsp + 40]
	LONG $0x54b60f42; WORD $0x1b36             // movzx    edx, byte [rsi + r14 + 27]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x00c024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xe5               // pcmpeqb    xmm4, xmm13
	QUAD $0x000000f0a5db0f66                   // pand    xmm4, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0x740f4566; BYTE $0xf5               // pcmpeqb    xmm14, xmm13
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x54b60f42; WORD $0x1c36             // movzx    edx, byte [rsi + r14 + 28]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x110644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r8 + 17], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	LONG $0x740f4166; BYTE $0xc5               // pcmpeqb    xmm0, xmm13
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xdb0f4566; BYTE $0xec               // pand    xmm13, xmm12
	LONG $0xf80f4466; BYTE $0xe8               // psubb    xmm13, xmm0
	QUAD $0x00a024ac7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm13
	LONG $0x54b60f42; WORD $0x1d36             // movzx    edx, byte [rsi + r14 + 29]
	LONG $0x6e0f4466; BYTE $0xea               // movd    xmm13, edx
	QUAD $0x10067c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r8 + 16], 15
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	LONG $0x740f4466; BYTE $0xf8               // pcmpeqb    xmm15, xmm0
	LONG $0x24748b4c; BYTE $0x08               // mov    r14, qword [rsp + 8]
	QUAD $0x12366c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r14 + 18], 1
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x0212166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 2
	QUAD $0x12166c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r10 + 18], 3
	QUAD $0x121e6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r11 + 18], 4
	QUAD $0x122e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r13 + 18], 5
	QUAD $0x06120e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 18], 6
	QUAD $0x07123e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 18], 7
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x0812166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 8
	QUAD $0x120e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 18], 9
	QUAD $0x0a121e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 18], 10
	QUAD $0x123e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r15 + 18], 11
	QUAD $0x12266c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r12 + 18], 12
	QUAD $0x0d12066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 18], 13
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0e12066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 18], 14
	LONG $0xdb0f4566; BYTE $0xfc               // pand    xmm15, xmm12
	QUAD $0x12066c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r8 + 18], 15
	LONG $0xe8740f66                           // pcmpeqb    xmm5, xmm0
	QUAD $0x000000b0addb0f66                   // pand    xmm5, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4166; BYTE $0xef               // por    xmm5, xmm15
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x0654b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rax + 30]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	QUAD $0x13367c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rsi + r14 + 19], 1
	QUAD $0x143674203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r14 + 20], 1
	QUAD $0x153654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r14 + 21], 1
	QUAD $0x16365c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r14 + 22], 1
	QUAD $0x173644203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r14 + 23], 1
	QUAD $0x183654203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r14 + 24], 1
	QUAD $0x19364c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rsi + r14 + 25], 1
	QUAD $0x1a365c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r14 + 26], 1
	QUAD $0x1b364c203a0f4666; BYTE $0x01       // pinsrb    xmm9, byte [rsi + r14 + 27], 1
	QUAD $0x1c3664203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r14 + 28], 1
	QUAD $0x1d366c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r14 + 29], 1
	QUAD $0x1e3664203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rsi + r14 + 30], 1
	LONG $0x0654b60f; BYTE $0x1f               // movzx    edx, byte [rsi + rax + 31]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x1f3644203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rsi + r14 + 31], 1
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x0213167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 19], 2
	QUAD $0x02141674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 20], 2
	QUAD $0x02151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 2
	QUAD $0x0216165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 22], 2
	QUAD $0x171644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdx + 23], 2
	QUAD $0x181654203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdx + 24], 2
	QUAD $0x0219164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 25], 2
	QUAD $0x1a165c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdx + 26], 2
	QUAD $0x1b164c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdx + 27], 2
	QUAD $0x021c1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 28], 2
	QUAD $0x1d166c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdx + 29], 2
	QUAD $0x1e1664203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdx + 30], 2
	QUAD $0x021f1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 31], 2
	QUAD $0x13167c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r10 + 19], 3
	QUAD $0x131e7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r11 + 19], 4
	QUAD $0x132e7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r13 + 19], 5
	QUAD $0x06130e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 19], 6
	QUAD $0x07133e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 19], 7
	LONG $0x24748b4c; BYTE $0x38               // mov    r14, qword [rsp + 56]
	QUAD $0x13367c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r14 + 19], 8
	QUAD $0x130e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r9 + 19], 9
	QUAD $0x0a131e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 19], 10
	QUAD $0x133e7c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r15 + 19], 11
	QUAD $0x13267c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r12 + 19], 12
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0d13167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 19], 13
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0e13067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 19], 14
	QUAD $0x13067c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r8 + 19], 15
	QUAD $0x141674203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r10 + 20], 3
	QUAD $0x141e74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r11 + 20], 4
	QUAD $0x142e74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r13 + 20], 5
	QUAD $0x06140e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 20], 6
	QUAD $0x07143e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 20], 7
	QUAD $0x143674203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r14 + 20], 8
	QUAD $0x140e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 20], 9
	QUAD $0x0a141e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 20], 10
	QUAD $0x143e74203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r15 + 20], 11
	QUAD $0x142674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r12 + 20], 12
	QUAD $0x0d141674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 20], 13
	QUAD $0x0e140674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 20], 14
	QUAD $0x0000a024aceb0f66; BYTE $0x00       // por    xmm5, oword [rsp + 160]
	QUAD $0x140674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r8 + 20], 15
	QUAD $0x00c024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xff               // pcmpeqb    xmm7, xmm15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4166; BYTE $0xf7               // pcmpeqb    xmm6, xmm15
	QUAD $0x000000d0b5db0f66                   // pand    xmm6, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0x151654203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r10 + 21], 3
	QUAD $0x151e54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r11 + 21], 4
	QUAD $0x152e54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r13 + 21], 5
	QUAD $0x06150e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 21], 6
	QUAD $0x07153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 7
	QUAD $0x153654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r14 + 21], 8
	QUAD $0x150e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r9 + 21], 9
	QUAD $0x0a151e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 21], 10
	QUAD $0x153e54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r15 + 21], 11
	QUAD $0x152654203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r12 + 21], 12
	QUAD $0x0d151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 13
	QUAD $0x0e150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 14
	QUAD $0x150654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r8 + 21], 15
	LONG $0x740f4166; BYTE $0xd7               // pcmpeqb    xmm2, xmm15
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xd7db0f66                           // pand    xmm2, xmm7
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0xd5eb0f66                           // por    xmm2, xmm5
	QUAD $0x16165c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r10 + 22], 3
	QUAD $0x161e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r11 + 22], 4
	QUAD $0x162e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r13 + 22], 5
	QUAD $0x06160e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 22], 6
	QUAD $0x07163e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 22], 7
	QUAD $0x16365c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r14 + 22], 8
	QUAD $0x160e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 22], 9
	QUAD $0x0a161e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 22], 10
	QUAD $0x163e5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r15 + 22], 11
	QUAD $0x16265c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r12 + 22], 12
	QUAD $0x0d16165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 22], 13
	QUAD $0x0e16065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 22], 14
	QUAD $0x16065c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r8 + 22], 15
	QUAD $0x171644203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r10 + 23], 3
	QUAD $0x171e44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r11 + 23], 4
	QUAD $0x172e44203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r13 + 23], 5
	QUAD $0x170e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rcx + 23], 6
	QUAD $0x173e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rdi + 23], 7
	QUAD $0x173644203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r14 + 23], 8
	QUAD $0x170e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 23], 9
	QUAD $0x171e44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rbx + 23], 10
	QUAD $0x173e44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r15 + 23], 11
	QUAD $0x172644203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r12 + 23], 12
	QUAD $0x171644203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rdx + 23], 13
	QUAD $0x170644203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rax + 23], 14
	QUAD $0x170644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r8 + 23], 15
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x000000f0ad6f0f66                   // movdqa    xmm5, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0xdddb0f66                           // pand    xmm3, xmm5
	LONG $0x740f4566; BYTE $0xc7               // pcmpeqb    xmm8, xmm15
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	QUAD $0x19164c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rsi + r10 + 25], 3
	QUAD $0x191e4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r11 + 25], 4
	QUAD $0x192e4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r13 + 25], 5
	QUAD $0x06190e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 25], 6
	QUAD $0x07193e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 25], 7
	QUAD $0x19364c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r14 + 25], 8
	QUAD $0x190e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r9 + 25], 9
	QUAD $0x0a191e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 25], 10
	QUAD $0x193e4c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r15 + 25], 11
	QUAD $0x19264c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r12 + 25], 12
	QUAD $0x0d19164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 25], 13
	QUAD $0x0e19064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 25], 14
	QUAD $0x19064c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r8 + 25], 15
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x740f4166; BYTE $0xcf               // pcmpeqb    xmm1, xmm15
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	QUAD $0x000000a09d6f0f66                   // movdqa    xmm3, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd1f80f66                           // psubb    xmm2, xmm1
	QUAD $0x181654203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r10 + 24], 3
	QUAD $0x181e54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r11 + 24], 4
	QUAD $0x182e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r13 + 24], 5
	QUAD $0x180e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rcx + 24], 6
	QUAD $0x183e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rdi + 24], 7
	QUAD $0x183654203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r14 + 24], 8
	QUAD $0x180e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 24], 9
	QUAD $0x181e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rbx + 24], 10
	QUAD $0x183e54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r15 + 24], 11
	QUAD $0x182654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r12 + 24], 12
	QUAD $0x181654203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rdx + 24], 13
	QUAD $0x180654203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rax + 24], 14
	QUAD $0x180654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r8 + 24], 15
	LONG $0x740f4566; BYTE $0xd7               // pcmpeqb    xmm10, xmm15
	LONG $0xdb0f4466; BYTE $0xd3               // pand    xmm10, xmm3
	QUAD $0x1a165c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r10 + 26], 3
	QUAD $0x1a1e5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r11 + 26], 4
	QUAD $0x1a2e5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r13 + 26], 5
	QUAD $0x1a0e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rcx + 26], 6
	QUAD $0x1a3e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rdi + 26], 7
	QUAD $0x1a365c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r14 + 26], 8
	QUAD $0x1a0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 26], 9
	QUAD $0x1a1e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rbx + 26], 10
	QUAD $0x1a3e5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r15 + 26], 11
	QUAD $0x1a265c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r12 + 26], 12
	QUAD $0x1a165c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdx + 26], 13
	QUAD $0x1a065c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rax + 26], 14
	QUAD $0x1a065c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r8 + 26], 15
	LONG $0x740f4566; BYTE $0xdf               // pcmpeqb    xmm11, xmm15
	QUAD $0x0000b09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0xeb0f4466; BYTE $0xda               // por    xmm11, xmm2
	QUAD $0x1b164c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r10 + 27], 3
	QUAD $0x1b1e4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r11 + 27], 4
	QUAD $0x1b2e4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r13 + 27], 5
	QUAD $0x1b0e4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rcx + 27], 6
	QUAD $0x1b3e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rdi + 27], 7
	QUAD $0x1b364c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r14 + 27], 8
	QUAD $0x1b0e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 27], 9
	QUAD $0x1b1e4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + rbx + 27], 10
	QUAD $0x1b3e4c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r15 + 27], 11
	QUAD $0x1b264c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r12 + 27], 12
	QUAD $0x1b164c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + rdx + 27], 13
	QUAD $0x1b064c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + rax + 27], 14
	QUAD $0x1b064c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r8 + 27], 15
	QUAD $0x1c1664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r10 + 28], 3
	QUAD $0x1c1e64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r11 + 28], 4
	QUAD $0x1c2e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r13 + 28], 5
	QUAD $0x061c0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 28], 6
	QUAD $0x071c3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 28], 7
	QUAD $0x1c3664203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r14 + 28], 8
	QUAD $0x1c0e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 28], 9
	QUAD $0x0a1c1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 28], 10
	QUAD $0x1c3e64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r15 + 28], 11
	QUAD $0x1c2664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 28], 12
	QUAD $0x0d1c1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 28], 13
	QUAD $0x0e1c0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 28], 14
	QUAD $0x1c0664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r8 + 28], 15
	QUAD $0x1d166c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r10 + 29], 3
	QUAD $0x1d1e6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r11 + 29], 4
	QUAD $0x1d2e6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r13 + 29], 5
	QUAD $0x1d0e6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rcx + 29], 6
	QUAD $0x1d3e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rdi + 29], 7
	QUAD $0x1d366c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r14 + 29], 8
	QUAD $0x1d0e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r9 + 29], 9
	QUAD $0x1d1e6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rbx + 29], 10
	QUAD $0x1d3e6c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r15 + 29], 11
	QUAD $0x1d266c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r12 + 29], 12
	QUAD $0x1d166c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rdx + 29], 13
	QUAD $0x1d066c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + rax + 29], 14
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0x740f4566; BYTE $0xcf               // pcmpeqb    xmm9, xmm15
	QUAD $0x0000c08ddb0f4466; BYTE $0x00       // pand    xmm9, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4166; BYTE $0xe7               // pcmpeqb    xmm4, xmm15
	QUAD $0x000000d0a5db0f66                   // pand    xmm4, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	QUAD $0x1d066c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r8 + 29], 15
	LONG $0x740f4566; BYTE $0xef               // pcmpeqb    xmm13, xmm15
	LONG $0xdb0f4466; BYTE $0xef               // pand    xmm13, xmm7
	LONG $0xeb0f4466; BYTE $0xec               // por    xmm13, xmm4
	QUAD $0x1e1664203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r10 + 30], 3
	QUAD $0x1f1644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 31], 3
	QUAD $0x1e1e64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r11 + 30], 4
	QUAD $0x1f1e44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r11 + 31], 4
	QUAD $0x1e2e64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r13 + 30], 5
	QUAD $0x1f2e44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r13 + 31], 5
	QUAD $0x1e0e64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rcx + 30], 6
	QUAD $0x061f0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 31], 6
	QUAD $0x1e3e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rdi + 30], 7
	QUAD $0x071f3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 31], 7
	QUAD $0x1e3664203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r14 + 30], 8
	QUAD $0x1f3644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r14 + 31], 8
	QUAD $0x1e0e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 30], 9
	QUAD $0x1f0e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 31], 9
	QUAD $0x1e1e64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + rbx + 30], 10
	QUAD $0x0a1f1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 31], 10
	QUAD $0x0000008824bc8b48                   // mov    rdi, qword [rsp + 136]
	QUAD $0x1e3e64203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r15 + 30], 11
	QUAD $0x1f3e44203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r15 + 31], 11
	QUAD $0x1e2664203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r12 + 30], 12
	QUAD $0x1f2644203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r12 + 31], 12
	QUAD $0x1e1664203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rdx + 30], 13
	QUAD $0x0d1f1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 31], 13
	QUAD $0x1e0664203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rax + 30], 14
	QUAD $0x0e1f0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 31], 14
	QUAD $0x1e0664203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r8 + 30], 15
	QUAD $0x1f0644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r8 + 31], 15
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x740f4566; BYTE $0xe7               // pcmpeqb    xmm12, xmm15
	LONG $0xdb0f4466; BYTE $0xe5               // pand    xmm12, xmm5
	LONG $0x740f4166; BYTE $0xc7               // pcmpeqb    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xc6db0f66                           // pand    xmm0, xmm6
	LONG $0xeb0f4166; BYTE $0xc4               // por    xmm0, xmm12
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000b024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 176]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd9610f66                           // punpcklwd    xmm3, xmm1
	LONG $0xd1690f66                           // punpckhwd    xmm2, xmm1
	LONG $0x680f4466; BYTE $0xc0               // punpckhbw    xmm8, xmm0
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x647f0ff3; WORD $0x308f             // movdqu    oword [rdi + 4*rcx + 48], xmm4
	LONG $0x447f0ff3; WORD $0x208f             // movdqu    oword [rdi + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x108f             // movdqu    oword [rdi + 4*rcx + 16], xmm2
	LONG $0x1c7f0ff3; BYTE $0x8f               // movdqu    oword [rdi + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB1_88
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	QUAD $0x000000e824bc3b4c                   // cmp    r15, qword [rsp + 232]
	LONG $0x245c8a44; BYTE $0x04               // mov    r11b, byte [rsp + 4]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	JNE  LBB1_90
	JMP  LBB1_93

LBB1_67:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e824bc894c             // mov    qword [rsp + 232], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x38         // mov    qword [rsp + 56], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000c0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 192], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008824b4894c             // mov    qword [rsp + 136], r14

LBB1_68:
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	LONG $0x05e7c149                           // shl    r15, 5
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894d; BYTE $0xfa                   // mov    r10, r15
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfb                   // mov    r11, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	LONG $0x247c894c; BYTE $0x68               // mov    qword [rsp + 104], r15
	LONG $0x14b60f42; BYTE $0x3e               // movzx    edx, byte [rsi + r15]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0x54b60f42; WORD $0x013e             // movzx    edx, byte [rsi + r15 + 1]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x54b60f42; WORD $0x023e             // movzx    edx, byte [rsi + r15 + 2]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x54b60f42; WORD $0x033e             // movzx    edx, byte [rsi + r15 + 3]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x54b60f42; WORD $0x043e             // movzx    edx, byte [rsi + r15 + 4]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x54b60f42; WORD $0x053e             // movzx    edx, byte [rsi + r15 + 5]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0x54b60f42; WORD $0x063e             // movzx    edx, byte [rsi + r15 + 6]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	LONG $0x54b60f42; WORD $0x073e             // movzx    edx, byte [rsi + r15 + 7]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x0000d024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm0
	LONG $0x54b60f42; WORD $0x083e             // movzx    edx, byte [rsi + r15 + 8]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x54b60f42; WORD $0x093e             // movzx    edx, byte [rsi + r15 + 9]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x54b60f42; WORD $0x0a3e             // movzx    edx, byte [rsi + r15 + 10]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x54b60f42; WORD $0x0b3e             // movzx    edx, byte [rsi + r15 + 11]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	LONG $0x54b60f42; WORD $0x0c3e             // movzx    edx, byte [rsi + r15 + 12]
	LONG $0x6e0f4466; BYTE $0xea               // movd    xmm13, edx
	LONG $0x54b60f42; WORD $0x0d3e             // movzx    edx, byte [rsi + r15 + 13]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	LONG $0x54b60f42; WORD $0x0e3e             // movzx    edx, byte [rsi + r15 + 14]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x247c894c; BYTE $0x30               // mov    qword [rsp + 48], r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x28               // mov    qword [rsp + 40], r13
	LONG $0x40cf8348                           // or    rdi, 64
	LONG $0x60c98348                           // or    rcx, 96
	LONG $0x244c8948; BYTE $0x78               // mov    qword [rsp + 120], rcx
	LONG $0x80ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 128
	LONG $0xa0c88149; WORD $0x0000; BYTE $0x00 // or    r8, 160
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 256
	LONG $0x20cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 288
	LONG $0x40ce8149; WORD $0x0001; BYTE $0x00 // or    r14, 320
	LONG $0x01600d48; WORD $0x0000             // or    rax, 352
	QUAD $0x0000008024848948                   // mov    qword [rsp + 128], rax
	LONG $0x24548b48; BYTE $0x68               // mov    rdx, qword [rsp + 104]
	LONG $0x80ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 384
	LONG $0x24548948; BYTE $0x68               // mov    qword [rsp + 104], rdx
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x08               // mov    qword [rsp + 8], rax
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x20               // mov    qword [rsp + 32], rax
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	QUAD $0x012e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 1
	QUAD $0x023e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdi], 2
	QUAD $0x030e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rcx], 3
	QUAD $0x04163c203a0f4666                   // pinsrb    xmm15, byte [rsi + r10], 4
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	LONG $0x2444894c; BYTE $0x48               // mov    qword [rsp + 72], r8
	QUAD $0x05063c203a0f4666                   // pinsrb    xmm15, byte [rsi + r8], 5
	LONG $0x2464894c; BYTE $0x60               // mov    qword [rsp + 96], r12
	QUAD $0x06263c203a0f4666                   // pinsrb    xmm15, byte [rsi + r12], 6
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	QUAD $0x070e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r9], 7
	WORD $0x894d; BYTE $0xd9                   // mov    r9, r11
	LONG $0x245c894c; BYTE $0x18               // mov    qword [rsp + 24], r11
	QUAD $0x081e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r11], 8
	LONG $0x245c8948; BYTE $0x40               // mov    qword [rsp + 64], rbx
	QUAD $0x091e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rbx], 9
	LONG $0x2474894c; BYTE $0x58               // mov    qword [rsp + 88], r14
	QUAD $0x0a363c203a0f4666                   // pinsrb    xmm15, byte [rsi + r14], 10
	QUAD $0x0000008024ac8b4c                   // mov    r13, qword [rsp + 128]
	QUAD $0x0b2e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 11
	QUAD $0x0c163c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdx], 12
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x0d0e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rcx], 13
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x0e0e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rcx], 14
	QUAD $0x0f063c203a0f4466                   // pinsrb    xmm15, byte [rsi + rax], 15
	LONG $0x245c8b4c; BYTE $0x28               // mov    r11, qword [rsp + 40]
	QUAD $0x011e6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r11 + 1], 1
	QUAD $0x02013e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 1], 2
	LONG $0x245c8b4c; BYTE $0x78               // mov    r11, qword [rsp + 120]
	QUAD $0x011e6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r11 + 1], 3
	QUAD $0x01166c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r10 + 1], 4
	LONG $0x2454894c; BYTE $0x50               // mov    qword [rsp + 80], r10
	QUAD $0x013e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r15 + 1], 5
	QUAD $0x01266c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r12 + 1], 6
	QUAD $0x01066c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r8 + 1], 7
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	QUAD $0x010e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r9 + 1], 8
	QUAD $0x09011e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 1], 9
	QUAD $0x01366c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r14 + 1], 10
	QUAD $0x012e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r13 + 1], 11
	WORD $0x894d; BYTE $0xe8                   // mov    r8, r13
	QUAD $0x0c01166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 1], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0d01166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 1], 13
	QUAD $0x0e010e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 1], 14
	QUAD $0x0f01066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 1], 15
	QUAD $0x00c0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xe9               // pcmpeqb    xmm5, xmm9
	LONG $0xfd6f0f66                           // movdqa    xmm7, xmm5
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xfcdb0f66                           // pand    xmm7, xmm4
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	LONG $0x0654b60f; BYTE $0x0f               // movzx    edx, byte [rsi + rax + 15]
	LONG $0x6e0f4466; BYTE $0xf2               // movd    xmm14, edx
	LONG $0x740f4566; BYTE $0xf9               // pcmpeqb    xmm15, xmm9
	LONG $0x245c8b48; BYTE $0x28               // mov    rbx, qword [rsp + 40]
	QUAD $0x01021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 1
	QUAD $0x02023e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 2], 2
	WORD $0x894d; BYTE $0xdc                   // mov    r12, r11
	QUAD $0x021e74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r11 + 2], 3
	QUAD $0x021674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r10 + 2], 4
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x05020e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 2], 5
	LONG $0x245c8b4c; BYTE $0x60               // mov    r11, qword [rsp + 96]
	QUAD $0x021e74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r11 + 2], 6
	LONG $0x247c894c; BYTE $0x70               // mov    qword [rsp + 112], r15
	QUAD $0x023e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r15 + 2], 7
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x022e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r13 + 2], 8
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x023674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r14 + 2], 9
	LONG $0x244c8b4c; BYTE $0x58               // mov    r9, qword [rsp + 88]
	QUAD $0x020e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r9 + 2], 10
	QUAD $0x020674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r8 + 2], 11
	LONG $0x24548b48; BYTE $0x68               // mov    rdx, qword [rsp + 104]
	QUAD $0x0c021674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 2], 12
	LONG $0x24548b4c; BYTE $0x08               // mov    r10, qword [rsp + 8]
	QUAD $0x021674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r10 + 2], 13
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0e021674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 2], 14
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0f021674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 2], 15
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0x740f4166; BYTE $0xf1               // pcmpeqb    xmm6, xmm9
	QUAD $0x000000b0856f0f66                   // movdqa    xmm0, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xf0db0f66                           // pand    xmm6, xmm0
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x0654b60f; BYTE $0x10               // movzx    edx, byte [rsi + rax + 16]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	QUAD $0x01031e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 3], 1
	QUAD $0x02033e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 3], 2
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x032654203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r12 + 3], 3
	LONG $0x24648b4c; BYTE $0x50               // mov    r12, qword [rsp + 80]
	QUAD $0x032654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r12 + 3], 4
	QUAD $0x05030e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 3], 5
	QUAD $0x031e54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r11 + 3], 6
	QUAD $0x033e54203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r15 + 3], 7
	QUAD $0x032e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r13 + 3], 8
	QUAD $0x033654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r14 + 3], 9
	QUAD $0x030e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r9 + 3], 10
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	QUAD $0x030654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r8 + 3], 11
	LONG $0x247c8b4c; BYTE $0x68               // mov    r15, qword [rsp + 104]
	QUAD $0x033e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r15 + 3], 12
	QUAD $0x031654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r10 + 3], 13
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x032e54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r13 + 3], 14
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0f031654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 3], 15
	QUAD $0x01041e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 4], 1
	QUAD $0x02043e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 4], 2
	QUAD $0x0304064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 4], 3
	QUAD $0x04264c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r12 + 4], 4
	QUAD $0x05040e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 4], 5
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x041e4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r11 + 4], 6
	LONG $0x245c8b4c; BYTE $0x70               // mov    r11, qword [rsp + 112]
	QUAD $0x041e4c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rsi + r11 + 4], 7
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x040e4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r9 + 4], 8
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x09041e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 4], 9
	QUAD $0x04364c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r14 + 4], 10
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	QUAD $0x04064c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r8 + 4], 11
	WORD $0x894d; BYTE $0xc6                   // mov    r14, r8
	QUAD $0x043e4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r15 + 4], 12
	QUAD $0x04164c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r10 + 4], 13
	QUAD $0x042e4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r13 + 4], 14
	QUAD $0x0f04164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 4], 15
	WORD $0x8949; BYTE $0xd2                   // mov    r10, rdx
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	LONG $0x1e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rbx + 17]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xc9               // pcmpeqb    xmm1, xmm9
	QUAD $0x000000d0ad6f0f66                   // movdqa    xmm5, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xcddb0f66                           // pand    xmm1, xmm5
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x1e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rbx + 18]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x24448b4c; BYTE $0x28               // mov    r8, qword [rsp + 40]
	QUAD $0x050644203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r8 + 5], 1
	QUAD $0x053e44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdi + 5], 2
	QUAD $0x050644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rax + 5], 3
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x051644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rdx + 5], 4
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x051644203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rdx + 5], 5
	QUAD $0x050e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rcx + 5], 6
	QUAD $0x051e44203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r11 + 5], 7
	QUAD $0x050e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r9 + 5], 8
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x050e44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rsi + rcx + 5], 9
	QUAD $0x052644203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r12 + 5], 10
	QUAD $0x053644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r14 + 5], 11
	QUAD $0x053e44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r15 + 5], 12
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x050e44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rcx + 5], 13
	QUAD $0x052e44203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r13 + 5], 14
	QUAD $0x051644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r10 + 5], 15
	LONG $0x740f4566; BYTE $0xc1               // pcmpeqb    xmm8, xmm9
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xdb0f4466; BYTE $0xc2               // pand    xmm8, xmm2
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x1e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rbx + 19]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	LONG $0x1e54b60f; BYTE $0x14               // movzx    edx, byte [rsi + rbx + 20]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x06065c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r8 + 6], 1
	QUAD $0x02063e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 6], 2
	QUAD $0x0306065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 6], 3
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x061e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r11 + 6], 4
	LONG $0x244c8b4c; BYTE $0x48               // mov    r9, qword [rsp + 72]
	QUAD $0x060e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r9 + 6], 5
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x06065c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r8 + 6], 6
	LONG $0x24648b4c; BYTE $0x70               // mov    r12, qword [rsp + 112]
	QUAD $0x06265c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r12 + 6], 7
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0806065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 6], 8
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x09061e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 6], 9
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x06365c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r14 + 6], 10
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x0b060e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 6], 11
	QUAD $0x063e5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r15 + 6], 12
	LONG $0x24548b4c; BYTE $0x08               // mov    r10, qword [rsp + 8]
	QUAD $0x06165c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r10 + 6], 13
	QUAD $0x062e5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r13 + 6], 14
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0f060e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 6], 15
	QUAD $0x0000d024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 208]
	QUAD $0x01071654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 7], 1
	QUAD $0x02073e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 7], 2
	QUAD $0x000000a024bc8948                   // mov    qword [rsp + 160], rdi
	LONG $0x244c8b48; BYTE $0x78               // mov    rcx, qword [rsp + 120]
	QUAD $0x03070e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 7], 3
	QUAD $0x071e54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r11 + 7], 4
	QUAD $0x070e54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r9 + 7], 5
	QUAD $0x070654203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r8 + 7], 6
	QUAD $0x072654203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r12 + 7], 7
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	QUAD $0x08070654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 7], 8
	QUAD $0x09071e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 7], 9
	QUAD $0x073654203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r14 + 7], 10
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x0b070654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 7], 11
	QUAD $0x073e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r15 + 7], 12
	QUAD $0x071654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r10 + 7], 13
	QUAD $0x072e54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r13 + 7], 14
	LONG $0x24748b4c; BYTE $0x10               // mov    r14, qword [rsp + 16]
	QUAD $0x073654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r14 + 7], 15
	LONG $0x740f4166; BYTE $0xd9               // pcmpeqb    xmm3, xmm9
	QUAD $0x000000f08d6f0f66                   // movdqa    xmm1, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0xd9db0f66                           // pand    xmm3, xmm1
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0x4d6f0f66; BYTE $0x60               // movdqa    xmm1, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xd1db0f66                           // pand    xmm2, xmm1
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	LONG $0x1e54b60f; BYTE $0x15               // movzx    edx, byte [rsi + rbx + 21]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x091654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rdx + 9], 1
	QUAD $0x093e54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdi + 9], 2
	QUAD $0x090e54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rcx + 9], 3
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x093e54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rdi + 9], 4
	QUAD $0x090e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r9 + 9], 5
	QUAD $0x090654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r8 + 9], 6
	QUAD $0x091e54203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r11 + 9], 7
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x090e54203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rcx + 9], 8
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x090e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rcx + 9], 9
	QUAD $0x092654203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r12 + 9], 10
	QUAD $0x090654203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rax + 9], 11
	QUAD $0x093e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r15 + 9], 12
	QUAD $0x091654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r10 + 9], 13
	QUAD $0x092e54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r13 + 9], 14
	QUAD $0x093654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r14 + 9], 15
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x0000d0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm1
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	LONG $0xccdb0f66                           // pand    xmm1, xmm4
	LONG $0xf80f4166; BYTE $0xca               // psubb    xmm1, xmm10
	LONG $0x1e54b60f; BYTE $0x16               // movzx    edx, byte [rsi + rbx + 22]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	QUAD $0x0000f024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 240]
	LONG $0x24548b4c; BYTE $0x28               // mov    r10, qword [rsp + 40]
	QUAD $0x081664203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r10 + 8], 1
	QUAD $0x000000a024a48b4c                   // mov    r12, qword [rsp + 160]
	QUAD $0x082664203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r12 + 8], 2
	LONG $0x24448b48; BYTE $0x78               // mov    rax, qword [rsp + 120]
	QUAD $0x03080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 3
	QUAD $0x04083e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 8], 4
	QUAD $0x080e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r9 + 8], 5
	QUAD $0x080664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r8 + 8], 6
	WORD $0x894c; BYTE $0xdb                   // mov    rbx, r11
	QUAD $0x081e64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r11 + 8], 7
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x08081664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 8], 8
	QUAD $0x09080e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 8], 9
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x0a080e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 8], 10
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x083664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r14 + 8], 11
	QUAD $0x083e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r15 + 8], 12
	LONG $0x247c8b48; BYTE $0x08               // mov    rdi, qword [rsp + 8]
	QUAD $0x0d083e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 8], 13
	QUAD $0x082e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r13 + 8], 14
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0f083e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 8], 15
	LONG $0x740f4166; BYTE $0xe1               // pcmpeqb    xmm4, xmm9
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	QUAD $0x00b024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 176]
	QUAD $0x0a1654203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r10 + 10], 1
	QUAD $0x0a2654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r12 + 10], 2
	QUAD $0x0a0654203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rax + 10], 3
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x0a1e54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r11 + 10], 4
	QUAD $0x0a0e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r9 + 10], 5
	QUAD $0x0a0654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r8 + 10], 6
	WORD $0x894d; BYTE $0xc2                   // mov    r10, r8
	QUAD $0x0a1e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 10], 7
	WORD $0x8949; BYTE $0xd8                   // mov    r8, rbx
	QUAD $0x0a1654203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rdx + 10], 8
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x0a1e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rbx + 10], 9
	QUAD $0x0a0e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rcx + 10], 10
	QUAD $0x0a3654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r14 + 10], 11
	QUAD $0x0a3e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r15 + 10], 12
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x0a0e54203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rcx + 10], 13
	QUAD $0x0a2e54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r13 + 10], 14
	QUAD $0x0a3e54203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rdi + 10], 15
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	QUAD $0x0000b095db0f4466; BYTE $0x00       // pand    xmm10, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4466; BYTE $0xd4               // por    xmm10, xmm4
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	LONG $0x3e54b60f; BYTE $0x17               // movzx    edx, byte [rsi + rdi + 23]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00b024947f0f4466; WORD $0x0000     // movdqa    oword [rsp + 176], xmm10
	LONG $0x3e54b60f; BYTE $0x18               // movzx    edx, byte [rsi + rdi + 24]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0b165c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rdx + 11], 1
	QUAD $0x0b265c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rsi + r12 + 11], 2
	QUAD $0x0b065c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rax + 11], 3
	QUAD $0x0b1e5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r11 + 11], 4
	QUAD $0x0b0e5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r9 + 11], 5
	QUAD $0x0b165c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r10 + 11], 6
	QUAD $0x0b065c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r8 + 11], 7
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x0b0e5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r9 + 11], 8
	WORD $0x8949; BYTE $0xd8                   // mov    r8, rbx
	QUAD $0x0b1e5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rsi + rbx + 11], 9
	LONG $0x247c8b48; BYTE $0x58               // mov    rdi, qword [rsp + 88]
	QUAD $0x0b3e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rdi + 11], 10
	QUAD $0x0b365c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r14 + 11], 11
	QUAD $0x0b3e5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r15 + 11], 12
	QUAD $0x0b0e5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rcx + 11], 13
	QUAD $0x0b2e5c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r13 + 11], 14
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0b1e5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rbx + 11], 15
	QUAD $0x0c166c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rdx + 12], 1
	QUAD $0x0c266c203a0f4666; BYTE $0x02       // pinsrb    xmm13, byte [rsi + r12 + 12], 2
	QUAD $0x0c066c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rax + 12], 3
	QUAD $0x0c1e6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r11 + 12], 4
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x0c2e6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r13 + 12], 5
	QUAD $0x0c166c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r10 + 12], 6
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x0c1e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rbx + 12], 7
	QUAD $0x0c0e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r9 + 12], 8
	WORD $0x894d; BYTE $0xca                   // mov    r10, r9
	QUAD $0x0c066c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r8 + 12], 9
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	QUAD $0x0c3e6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rdi + 12], 10
	WORD $0x8949; BYTE $0xf8                   // mov    r8, rdi
	QUAD $0x0c366c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r14 + 12], 11
	QUAD $0x0c3e6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r15 + 12], 12
	QUAD $0x0c0e6c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rcx + 12], 13
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0c2e6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r13 + 12], 14
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0c3e6c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rdi + 12], 15
	QUAD $0x0d1664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rdx + 13], 1
	QUAD $0x0d2664203a0f4666; BYTE $0x02       // pinsrb    xmm12, byte [rsi + r12 + 13], 2
	QUAD $0x0d0664203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rax + 13], 3
	QUAD $0x0d1e64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r11 + 13], 4
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0d0664203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rax + 13], 5
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x0d1664203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rdx + 13], 6
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x0d1e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rbx + 13], 7
	QUAD $0x0d1664203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r10 + 13], 8
	QUAD $0x0d0e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 13], 9
	QUAD $0x0d0664203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r8 + 13], 10
	QUAD $0x0d3664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r14 + 13], 11
	QUAD $0x0d3e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r15 + 13], 12
	QUAD $0x0d0e64203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rcx + 13], 13
	QUAD $0x0d2e64203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r13 + 13], 14
	QUAD $0x0d3e64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rdi + 13], 15
	LONG $0x740f4566; BYTE $0xd9               // pcmpeqb    xmm11, xmm9
	QUAD $0x0000c09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4566; BYTE $0xe9               // pcmpeqb    xmm13, xmm9
	QUAD $0x0000d0addb0f4466; BYTE $0x00       // pand    xmm13, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	LONG $0x0e54b60f; BYTE $0x19               // movzx    edx, byte [rsi + rcx + 25]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x740f4566; BYTE $0xe1               // pcmpeqb    xmm12, xmm9
	QUAD $0x0000e0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x0e54b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rcx + 26]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x010e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 14], 1
	QUAD $0x0e2664203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r12 + 14], 2
	LONG $0x24548b4c; BYTE $0x78               // mov    r10, qword [rsp + 120]
	QUAD $0x0e1664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r10 + 14], 3
	QUAD $0x0e1e64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r11 + 14], 4
	QUAD $0x050e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 14], 5
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x060e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 14], 6
	WORD $0x8948; BYTE $0xdf                   // mov    rdi, rbx
	QUAD $0x070e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 14], 7
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x0e0664203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r8 + 14], 8
	QUAD $0x0e0e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 14], 9
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x0a0e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 14], 10
	QUAD $0x0e3664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r14 + 14], 11
	QUAD $0x0e3e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r15 + 14], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0d0e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 13
	QUAD $0x0e2e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r13 + 14], 14
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0f0e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 15
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0f1674203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rdx + 15], 1
	QUAD $0x0f2674203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r12 + 15], 2
	QUAD $0x0f1674203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r10 + 15], 3
	QUAD $0x0f1e74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rsi + r11 + 15], 4
	QUAD $0x0f0674203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rsi + rax + 15], 5
	QUAD $0x0f0e74203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rsi + rcx + 15], 6
	QUAD $0x0f3e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rdi + 15], 7
	QUAD $0x0f0674203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r8 + 15], 8
	QUAD $0x0f0e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 15], 9
	QUAD $0x0f1e74203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + rbx + 15], 10
	QUAD $0x0f3674203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r14 + 15], 11
	QUAD $0x0f3e74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r15 + 15], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0f1674203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + rdx + 15], 13
	QUAD $0x0f2e74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r13 + 15], 14
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0f1674203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + rdx + 15], 15
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x10167c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rdx + 16], 1
	QUAD $0x10267c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r12 + 16], 2
	QUAD $0x10167c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r10 + 16], 3
	QUAD $0x101e7c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r11 + 16], 4
	QUAD $0x10067c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rax + 16], 5
	QUAD $0x100e7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rcx + 16], 6
	QUAD $0x103e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rdi + 16], 7
	QUAD $0x10067c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r8 + 16], 8
	QUAD $0x100e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 16], 9
	QUAD $0x101e7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + rbx + 16], 10
	QUAD $0x10367c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r14 + 16], 11
	QUAD $0x103e7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r15 + 16], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x10167c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdx + 16], 13
	QUAD $0x102e7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r13 + 16], 14
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x01111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 1
	QUAD $0x112644203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r12 + 17], 2
	QUAD $0x111644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 17], 3
	QUAD $0x111e44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r11 + 17], 4
	QUAD $0x05110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 5
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	QUAD $0x06110e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 17], 6
	QUAD $0x07113e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 17], 7
	QUAD $0x110644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r8 + 17], 8
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x110e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 17], 9
	QUAD $0x0a111e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 17], 10
	QUAD $0x113644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r14 + 17], 11
	QUAD $0x113e44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r15 + 17], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0d111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 13
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0e111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 14
	QUAD $0x00b024a4eb0f4466; WORD $0x0000     // por    xmm12, oword [rsp + 176]
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x54b60f42; WORD $0x1b26             // movzx    edx, byte [rsi + r12 + 27]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x00c024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xe5               // pcmpeqb    xmm4, xmm13
	QUAD $0x000000f0a5db0f66                   // pand    xmm4, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0x740f4566; BYTE $0xf5               // pcmpeqb    xmm14, xmm13
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x54b60f42; WORD $0x1c26             // movzx    edx, byte [rsi + r12 + 28]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0x24448b4c; BYTE $0x10               // mov    r8, qword [rsp + 16]
	QUAD $0x110644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r8 + 17], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	LONG $0x740f4166; BYTE $0xc5               // pcmpeqb    xmm0, xmm13
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xdb0f4566; BYTE $0xec               // pand    xmm13, xmm12
	LONG $0xf80f4466; BYTE $0xe8               // psubb    xmm13, xmm0
	QUAD $0x00b024ac7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 176], xmm13
	LONG $0x54b60f42; WORD $0x1d26             // movzx    edx, byte [rsi + r12 + 29]
	LONG $0x6e0f4466; BYTE $0xea               // movd    xmm13, edx
	QUAD $0x10067c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r8 + 16], 15
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	LONG $0x740f4466; BYTE $0xf8               // pcmpeqb    xmm15, xmm0
	LONG $0x24648b4c; BYTE $0x28               // mov    r12, qword [rsp + 40]
	QUAD $0x12266c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r12 + 18], 1
	QUAD $0x000000a024948b48                   // mov    rdx, qword [rsp + 160]
	QUAD $0x0212166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 2
	QUAD $0x12166c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r10 + 18], 3
	QUAD $0x121e6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r11 + 18], 4
	QUAD $0x122e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r13 + 18], 5
	QUAD $0x06120e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 18], 6
	QUAD $0x07123e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 18], 7
	QUAD $0x0812066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 18], 8
	QUAD $0x120e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 18], 9
	QUAD $0x0a121e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 18], 10
	QUAD $0x12366c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r14 + 18], 11
	QUAD $0x123e6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r15 + 18], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0d12166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 13
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0e12166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 14
	LONG $0xdb0f4566; BYTE $0xfc               // pand    xmm15, xmm12
	QUAD $0x12066c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r8 + 18], 15
	LONG $0xe8740f66                           // pcmpeqb    xmm5, xmm0
	QUAD $0x000000b0addb0f66                   // pand    xmm5, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4166; BYTE $0xef               // por    xmm5, xmm15
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	LONG $0x0654b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rax + 30]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	QUAD $0x13267c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rsi + r12 + 19], 1
	QUAD $0x142674203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r12 + 20], 1
	QUAD $0x152654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r12 + 21], 1
	QUAD $0x16265c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r12 + 22], 1
	QUAD $0x172644203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r12 + 23], 1
	QUAD $0x182654203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r12 + 24], 1
	QUAD $0x19264c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rsi + r12 + 25], 1
	QUAD $0x1a265c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r12 + 26], 1
	QUAD $0x1b264c203a0f4666; BYTE $0x01       // pinsrb    xmm9, byte [rsi + r12 + 27], 1
	QUAD $0x1c2664203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r12 + 28], 1
	QUAD $0x1d266c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r12 + 29], 1
	QUAD $0x1e2664203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rsi + r12 + 30], 1
	LONG $0x0654b60f; BYTE $0x1f               // movzx    edx, byte [rsi + rax + 31]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x1f2644203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rsi + r12 + 31], 1
	QUAD $0x000000a024948b48                   // mov    rdx, qword [rsp + 160]
	QUAD $0x0213167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 19], 2
	QUAD $0x02141674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 20], 2
	QUAD $0x02151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 2
	QUAD $0x0216165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 22], 2
	QUAD $0x171644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdx + 23], 2
	QUAD $0x181654203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdx + 24], 2
	QUAD $0x0219164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 25], 2
	QUAD $0x1a165c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdx + 26], 2
	QUAD $0x1b164c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdx + 27], 2
	QUAD $0x021c1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 28], 2
	QUAD $0x1d166c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdx + 29], 2
	QUAD $0x1e1664203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdx + 30], 2
	QUAD $0x021f1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 31], 2
	QUAD $0x13167c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r10 + 19], 3
	QUAD $0x131e7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r11 + 19], 4
	QUAD $0x132e7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r13 + 19], 5
	QUAD $0x06130e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 19], 6
	QUAD $0x07133e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 19], 7
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0813067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 19], 8
	QUAD $0x130e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r9 + 19], 9
	QUAD $0x0a131e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 19], 10
	QUAD $0x13367c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r14 + 19], 11
	QUAD $0x133e7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r15 + 19], 12
	LONG $0x24548b48; BYTE $0x08               // mov    rdx, qword [rsp + 8]
	QUAD $0x0d13167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 19], 13
	LONG $0x24648b4c; BYTE $0x20               // mov    r12, qword [rsp + 32]
	QUAD $0x13267c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r12 + 19], 14
	QUAD $0x13067c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r8 + 19], 15
	QUAD $0x141674203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r10 + 20], 3
	QUAD $0x141e74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r11 + 20], 4
	QUAD $0x142e74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r13 + 20], 5
	QUAD $0x06140e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 20], 6
	QUAD $0x07143e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 20], 7
	QUAD $0x08140674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 20], 8
	QUAD $0x140e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 20], 9
	QUAD $0x0a141e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 20], 10
	QUAD $0x143674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r14 + 20], 11
	QUAD $0x143e74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r15 + 20], 12
	QUAD $0x0d141674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 20], 13
	QUAD $0x142674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r12 + 20], 14
	QUAD $0x0000b024aceb0f66; BYTE $0x00       // por    xmm5, oword [rsp + 176]
	QUAD $0x140674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r8 + 20], 15
	QUAD $0x00c024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 192]
	LONG $0x740f4166; BYTE $0xff               // pcmpeqb    xmm7, xmm15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4166; BYTE $0xf7               // pcmpeqb    xmm6, xmm15
	QUAD $0x000000d0b5db0f66                   // pand    xmm6, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0x151654203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r10 + 21], 3
	QUAD $0x151e54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r11 + 21], 4
	QUAD $0x152e54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r13 + 21], 5
	QUAD $0x06150e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 21], 6
	QUAD $0x07153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 7
	QUAD $0x08150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 8
	QUAD $0x150e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r9 + 21], 9
	QUAD $0x0a151e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 21], 10
	QUAD $0x153654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r14 + 21], 11
	QUAD $0x153e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r15 + 21], 12
	QUAD $0x0d151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 13
	QUAD $0x152654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r12 + 21], 14
	QUAD $0x150654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r8 + 21], 15
	LONG $0x740f4166; BYTE $0xd7               // pcmpeqb    xmm2, xmm15
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI1_14] */
	LONG $0xd7db0f66                           // pand    xmm2, xmm7
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0xd5eb0f66                           // por    xmm2, xmm5
	QUAD $0x16165c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r10 + 22], 3
	QUAD $0x161e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r11 + 22], 4
	QUAD $0x162e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r13 + 22], 5
	QUAD $0x06160e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 22], 6
	QUAD $0x07163e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 22], 7
	QUAD $0x0816065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 22], 8
	QUAD $0x160e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 22], 9
	QUAD $0x0a161e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 22], 10
	QUAD $0x16365c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r14 + 22], 11
	QUAD $0x163e5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r15 + 22], 12
	QUAD $0x0d16165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 22], 13
	QUAD $0x16265c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r12 + 22], 14
	QUAD $0x16065c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r8 + 22], 15
	QUAD $0x171644203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r10 + 23], 3
	QUAD $0x171e44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r11 + 23], 4
	QUAD $0x172e44203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r13 + 23], 5
	QUAD $0x170e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rcx + 23], 6
	QUAD $0x173e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rdi + 23], 7
	QUAD $0x170644203a0f4466; BYTE $0x08       // pinsrb    xmm8, byte [rsi + rax + 23], 8
	QUAD $0x170e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 23], 9
	QUAD $0x171e44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rbx + 23], 10
	QUAD $0x173644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r14 + 23], 11
	QUAD $0x173e44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r15 + 23], 12
	QUAD $0x171644203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rdx + 23], 13
	QUAD $0x172644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r12 + 23], 14
	QUAD $0x170644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r8 + 23], 15
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x000000f0ad6f0f66                   // movdqa    xmm5, oword 240[rbp] /* [rip + .LCPI1_15] */
	LONG $0xdddb0f66                           // pand    xmm3, xmm5
	LONG $0x740f4566; BYTE $0xc7               // pcmpeqb    xmm8, xmm15
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	QUAD $0x19164c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rsi + r10 + 25], 3
	QUAD $0x191e4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r11 + 25], 4
	QUAD $0x192e4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r13 + 25], 5
	QUAD $0x06190e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 25], 6
	QUAD $0x07193e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 25], 7
	QUAD $0x0819064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 25], 8
	QUAD $0x190e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r9 + 25], 9
	QUAD $0x0a191e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 25], 10
	QUAD $0x19364c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r14 + 25], 11
	QUAD $0x193e4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r15 + 25], 12
	QUAD $0x0d19164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 25], 13
	QUAD $0x19264c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r12 + 25], 14
	QUAD $0x19064c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r8 + 25], 15
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x740f4166; BYTE $0xcf               // pcmpeqb    xmm1, xmm15
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	QUAD $0x000000a09d6f0f66                   // movdqa    xmm3, oword 160[rbp] /* [rip + .LCPI1_10] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd1f80f66                           // psubb    xmm2, xmm1
	QUAD $0x181654203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r10 + 24], 3
	QUAD $0x181e54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r11 + 24], 4
	QUAD $0x182e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r13 + 24], 5
	QUAD $0x180e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rcx + 24], 6
	QUAD $0x183e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rdi + 24], 7
	QUAD $0x180654203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rax + 24], 8
	QUAD $0x180e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 24], 9
	QUAD $0x181e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rbx + 24], 10
	QUAD $0x183654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r14 + 24], 11
	QUAD $0x183e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r15 + 24], 12
	QUAD $0x181654203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rdx + 24], 13
	QUAD $0x182654203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r12 + 24], 14
	QUAD $0x180654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r8 + 24], 15
	LONG $0x740f4566; BYTE $0xd7               // pcmpeqb    xmm10, xmm15
	LONG $0xdb0f4466; BYTE $0xd3               // pand    xmm10, xmm3
	QUAD $0x1a165c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r10 + 26], 3
	QUAD $0x1a1e5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r11 + 26], 4
	QUAD $0x1a2e5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r13 + 26], 5
	QUAD $0x1a0e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rcx + 26], 6
	QUAD $0x1a3e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rdi + 26], 7
	QUAD $0x1a065c203a0f4466; BYTE $0x08       // pinsrb    xmm11, byte [rsi + rax + 26], 8
	QUAD $0x1a0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 26], 9
	QUAD $0x1a1e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rbx + 26], 10
	QUAD $0x1a365c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r14 + 26], 11
	QUAD $0x1a3e5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r15 + 26], 12
	QUAD $0x1a165c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdx + 26], 13
	QUAD $0x1a265c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r12 + 26], 14
	QUAD $0x1a065c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r8 + 26], 15
	LONG $0x740f4566; BYTE $0xdf               // pcmpeqb    xmm11, xmm15
	QUAD $0x0000b09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 176[rbp] /* [rip + .LCPI1_11] */
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0xeb0f4466; BYTE $0xda               // por    xmm11, xmm2
	QUAD $0x1b164c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r10 + 27], 3
	QUAD $0x1b1e4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r11 + 27], 4
	QUAD $0x1b2e4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r13 + 27], 5
	QUAD $0x1b0e4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rcx + 27], 6
	QUAD $0x1b3e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rdi + 27], 7
	QUAD $0x1b064c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rsi + rax + 27], 8
	QUAD $0x1b0e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 27], 9
	QUAD $0x1b1e4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + rbx + 27], 10
	QUAD $0x1b364c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r14 + 27], 11
	QUAD $0x1b3e4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r15 + 27], 12
	QUAD $0x1b164c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + rdx + 27], 13
	QUAD $0x1b264c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r12 + 27], 14
	QUAD $0x1b064c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r8 + 27], 15
	QUAD $0x1c1664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r10 + 28], 3
	QUAD $0x1c1e64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r11 + 28], 4
	QUAD $0x1c2e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r13 + 28], 5
	QUAD $0x061c0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 28], 6
	QUAD $0x071c3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 28], 7
	QUAD $0x081c0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 28], 8
	QUAD $0x1c0e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 28], 9
	QUAD $0x0a1c1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 28], 10
	QUAD $0x1c3664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r14 + 28], 11
	QUAD $0x1c3e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r15 + 28], 12
	QUAD $0x0d1c1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 28], 13
	QUAD $0x1c2664203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r12 + 28], 14
	QUAD $0x1c0664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r8 + 28], 15
	QUAD $0x1d166c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r10 + 29], 3
	QUAD $0x1d1e6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r11 + 29], 4
	QUAD $0x1d2e6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r13 + 29], 5
	QUAD $0x1d0e6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rcx + 29], 6
	QUAD $0x1d3e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rdi + 29], 7
	QUAD $0x1d066c203a0f4466; BYTE $0x08       // pinsrb    xmm13, byte [rsi + rax + 29], 8
	QUAD $0x1d0e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r9 + 29], 9
	QUAD $0x1d1e6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rbx + 29], 10
	QUAD $0x1d366c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r14 + 29], 11
	QUAD $0x1d3e6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r15 + 29], 12
	QUAD $0x1d166c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rdx + 29], 13
	QUAD $0x1d266c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r12 + 29], 14
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0x740f4566; BYTE $0xcf               // pcmpeqb    xmm9, xmm15
	QUAD $0x0000c08ddb0f4466; BYTE $0x00       // pand    xmm9, oword 192[rbp] /* [rip + .LCPI1_12] */
	LONG $0x740f4166; BYTE $0xe7               // pcmpeqb    xmm4, xmm15
	QUAD $0x000000d0a5db0f66                   // pand    xmm4, oword 208[rbp] /* [rip + .LCPI1_13] */
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	QUAD $0x1d066c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r8 + 29], 15
	LONG $0x740f4566; BYTE $0xef               // pcmpeqb    xmm13, xmm15
	LONG $0xdb0f4466; BYTE $0xef               // pand    xmm13, xmm7
	LONG $0xeb0f4466; BYTE $0xec               // por    xmm13, xmm4
	QUAD $0x1e1664203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r10 + 30], 3
	QUAD $0x1f1644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 31], 3
	QUAD $0x1e1e64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r11 + 30], 4
	QUAD $0x1f1e44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r11 + 31], 4
	QUAD $0x1e2e64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r13 + 30], 5
	QUAD $0x1f2e44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r13 + 31], 5
	QUAD $0x1e0e64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rcx + 30], 6
	QUAD $0x061f0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 31], 6
	QUAD $0x1e3e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rdi + 30], 7
	QUAD $0x071f3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 31], 7
	QUAD $0x1e0664203a0f4466; BYTE $0x08       // pinsrb    xmm12, byte [rsi + rax + 30], 8
	QUAD $0x081f0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 31], 8
	QUAD $0x1e0e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 30], 9
	QUAD $0x1f0e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 31], 9
	QUAD $0x1e1e64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + rbx + 30], 10
	QUAD $0x0a1f1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 31], 10
	QUAD $0x1e3664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r14 + 30], 11
	QUAD $0x1f3644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r14 + 31], 11
	QUAD $0x0000008824848b48                   // mov    rax, qword [rsp + 136]
	QUAD $0x1e3e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r15 + 30], 12
	QUAD $0x1f3e44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r15 + 31], 12
	QUAD $0x1e1664203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rdx + 30], 13
	QUAD $0x0d1f1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 31], 13
	QUAD $0x1e2664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r12 + 30], 14
	QUAD $0x1f2644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r12 + 31], 14
	QUAD $0x1e0664203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r8 + 30], 15
	QUAD $0x1f0644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r8 + 31], 15
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x740f4566; BYTE $0xe7               // pcmpeqb    xmm12, xmm15
	LONG $0xdb0f4466; BYTE $0xe5               // pand    xmm12, xmm5
	LONG $0x740f4166; BYTE $0xc7               // pcmpeqb    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xc6db0f66                           // pand    xmm0, xmm6
	LONG $0xeb0f4166; BYTE $0xc4               // por    xmm0, xmm12
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000d024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 208]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd9610f66                           // punpcklwd    xmm3, xmm1
	LONG $0xd1690f66                           // punpckhwd    xmm2, xmm1
	LONG $0x680f4466; BYTE $0xc0               // punpckhbw    xmm8, xmm0
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x647f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm4
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm2
	LONG $0x1c7f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB1_68
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	QUAD $0x000000e824bc3b4c                   // cmp    r15, qword [rsp + 232]
	LONG $0x245c8a44; BYTE $0x04               // mov    r11b, byte [rsp + 4]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	JNE  LBB1_70
	JMP  LBB1_73

LBB1_111:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	LONG $0x24448948; BYTE $0x38         // mov    qword [rsp + 56], rax
	LONG $0x247c894c; BYTE $0x20         // mov    qword [rsp + 32], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x08         // mov    qword [rsp + 8], rax
	LONG $0x6e0f4166; BYTE $0xc3         // movd    xmm0, r11d
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	WORD $0x3145; BYTE $0xff             // xor    r15d, r15d
	QUAD $0x000080bd6f0f4466; BYTE $0x00 // movdqa    xmm15, oword 128[rbp] /* [rip + .LCPI1_8] */
	LONG $0x6f0f4466; WORD $0x104d       // movdqa    xmm9, oword 16[rbp] /* [rip + .LCPI1_1] */
	LONG $0x6f0f4466; WORD $0x2055       // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI1_2] */
	LONG $0x6f0f4466; WORD $0x305d       // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI1_3] */
	LONG $0x6f0f4466; WORD $0x4065       // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI1_4] */
	LONG $0x6f0f4466; WORD $0x506d       // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI1_5] */
	LONG $0x6f0f4466; WORD $0x6075       // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI1_6] */
	QUAD $0x0000008824b4894c             // mov    qword [rsp + 136], r14

LBB1_112:
	LONG $0x247c894c; BYTE $0x28               // mov    qword [rsp + 40], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xfa                   // mov    rdx, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x34b70f46; BYTE $0x3e               // movzx    r14d, word [rsi + r15]
	LONG $0x44b70f42; WORD $0x023e             // movzx    eax, word [rsi + r15 + 2]
	LONG $0x54b70f46; WORD $0x043e             // movzx    r10d, word [rsi + r15 + 4]
	LONG $0x7cb70f42; WORD $0x063e             // movzx    edi, word [rsi + r15 + 6]
	LONG $0x5cb70f46; WORD $0x083e             // movzx    r11d, word [rsi + r15 + 8]
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 384
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0xc40f4266; WORD $0x0624; BYTE $0x01 // pinsrw    xmm4, word [rsi + r8], 1
	LONG $0xc40f4266; WORD $0x0e24; BYTE $0x02 // pinsrw    xmm4, word [rsi + r9], 2
	LONG $0xc40f4266; WORD $0x2624; BYTE $0x03 // pinsrw    xmm4, word [rsi + r12], 3
	LONG $0xc40f4266; WORD $0x2e24; BYTE $0x04 // pinsrw    xmm4, word [rsi + r13], 4
	LONG $0x24c40f66; WORD $0x050e             // pinsrw    xmm4, word [rsi + rcx], 5
	LONG $0x24c40f66; WORD $0x0616             // pinsrw    xmm4, word [rsi + rdx], 6
	LONG $0x24c40f66; WORD $0x071e             // pinsrw    xmm4, word [rsi + rbx], 7
	LONG $0x74b70f46; WORD $0x0a3e             // movzx    r14d, word [rsi + r15 + 10]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x01020674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 2], 1
	QUAD $0x02020e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 2], 2
	QUAD $0x03022674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 2], 3
	LONG $0x44b70f42; WORD $0x0c3e             // movzx    eax, word [rsi + r15 + 12]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x04022e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 2], 4
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x44b70f42; WORD $0x0e3e             // movzx    eax, word [rsi + r15 + 14]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x74c40f66; WORD $0x020e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 2], 5
	LONG $0xef6e0f66                           // movd    xmm5, edi
	LONG $0x7cb70f42; WORD $0x103e             // movzx    edi, word [rsi + r15 + 16]
	LONG $0x74c40f66; WORD $0x0216; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 2], 6
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x44b70f42; WORD $0x123e             // movzx    eax, word [rsi + r15 + 18]
	LONG $0x30244489                           // mov    dword [rsp + 48], eax
	LONG $0x74c40f66; WORD $0x021e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 2], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xcef80f66                           // psubb    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	LONG $0x54b70f46; WORD $0x143e             // movzx    r10d, word [rsi + r15 + 20]
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	QUAD $0x01040654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 4], 1
	QUAD $0x02040e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 4], 2
	QUAD $0x03042654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 4], 3
	QUAD $0x04042e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x0416; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 4], 6
	LONG $0x54c40f66; WORD $0x041e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 4], 7
	QUAD $0x0106066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 6], 1
	QUAD $0x02060e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 6], 2
	QUAD $0x0306266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 6], 3
	QUAD $0x04062e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 6], 4
	LONG $0x6cc40f66; WORD $0x060e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 6], 5
	LONG $0x6cc40f66; WORD $0x0616; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 6], 6
	LONG $0x6cc40f66; WORD $0x061e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 6], 7
	QUAD $0x0108065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 8], 1
	QUAD $0x02080e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 8], 2
	QUAD $0x0308265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 8], 3
	QUAD $0x04082e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 8], 4
	LONG $0x5cc40f66; WORD $0x080e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 8], 5
	LONG $0x5cc40f66; WORD $0x0816; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 8], 6
	LONG $0x5cc40f66; WORD $0x081e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 8], 7
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x44b70f42; WORD $0x163e             // movzx    eax, word [rsi + r15 + 22]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0xdb0f4166; BYTE $0xd1               // pand    xmm2, xmm9
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x646e0f66; WORD $0x1024             // movd    xmm4, dword [rsp + 16]
	LONG $0x5cb70f46; WORD $0x183e             // movzx    r11d, word [rsi + r15 + 24]
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xcf6e0f66                           // movd    xmm1, edi
	LONG $0x7cb70f42; WORD $0x1a3e             // movzx    edi, word [rsi + r15 + 26]
	QUAD $0x010a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 10], 1
	QUAD $0x020a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 10], 2
	QUAD $0x030a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 10], 3
	QUAD $0x040a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 10], 4
	LONG $0x74c40f66; WORD $0x0a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 10], 5
	LONG $0x74c40f66; WORD $0x0a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 10], 6
	LONG $0x74c40f66; WORD $0x0a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 10], 7
	QUAD $0x010c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 12], 1
	QUAD $0x020c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 12], 2
	QUAD $0x030c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 12], 3
	QUAD $0x040c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 12], 4
	LONG $0x7cc40f66; WORD $0x0c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 12], 5
	LONG $0x7cc40f66; WORD $0x0c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 12], 6
	LONG $0x7cc40f66; WORD $0x0c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 12], 7
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4466; WORD $0x2444; BYTE $0x30 // movd    xmm8, dword [rsp + 48]
	LONG $0x74b70f46; WORD $0x1c3e             // movzx    r14d, word [rsi + r15 + 28]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	LONG $0x54b70f46; WORD $0x1e3e             // movzx    r10d, word [rsi + r15 + 30]
	QUAD $0x010e0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 14], 1
	QUAD $0x020e0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 14], 2
	QUAD $0x030e2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 14], 3
	QUAD $0x040e2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 14], 4
	LONG $0x64c40f66; WORD $0x0e0e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rcx + 14], 5
	LONG $0x64c40f66; WORD $0x0e16; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdx + 14], 6
	LONG $0x64c40f66; WORD $0x0e1e; BYTE $0x07 // pinsrw    xmm4, word [rsi + rbx + 14], 7
	QUAD $0x01120644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 18], 1
	QUAD $0x02120e44c40f4666                   // pinsrw    xmm8, word [rsi + r9 + 18], 2
	QUAD $0x03122644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 18], 3
	QUAD $0x04122e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 18], 4
	QUAD $0x05120e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 18], 5
	QUAD $0x06121644c40f4466                   // pinsrw    xmm8, word [rsi + rdx + 18], 6
	QUAD $0x07121e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 18], 7
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x203e             // movzx    eax, word [rsi + r15 + 32]
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x750f4466; BYTE $0xc0               // pcmpeqw    xmm8, xmm0
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf80f4166; BYTE $0xf8               // psubb    xmm7, xmm8
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x5cb70f46; WORD $0x223e             // movzx    r11d, word [rsi + r15 + 34]
	QUAD $0x0110064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 16], 1
	QUAD $0x02100e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 16], 2
	QUAD $0x0310264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 16], 3
	QUAD $0x04102e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 16], 4
	LONG $0x4cc40f66; WORD $0x100e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 16], 5
	LONG $0x4cc40f66; WORD $0x1016; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 16], 6
	LONG $0x4cc40f66; WORD $0x101e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 16], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xf76e0f66                           // movd    xmm6, edi
	LONG $0x7cb70f42; WORD $0x243e             // movzx    edi, word [rsi + r15 + 36]
	LONG $0x30247c89                           // mov    dword [rsp + 48], edi
	QUAD $0x0114066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 20], 1
	QUAD $0x02140e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 20], 2
	QUAD $0x0314266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 20], 3
	QUAD $0x04142e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 20], 4
	LONG $0x6cc40f66; WORD $0x140e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 20], 5
	LONG $0x6cc40f66; WORD $0x1416; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 20], 6
	LONG $0x6cc40f66; WORD $0x141e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 20], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe9               // pand    xmm5, xmm9
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6e0f4166; BYTE $0xfe               // movd    xmm7, r14d
	LONG $0x7cb70f42; WORD $0x263e             // movzx    edi, word [rsi + r15 + 38]
	LONG $0x10247c89                           // mov    dword [rsp + 16], edi
	QUAD $0x01160654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 22], 1
	QUAD $0x02160e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 22], 2
	QUAD $0x03162654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 22], 3
	QUAD $0x04162e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 22], 4
	LONG $0x54c40f66; WORD $0x160e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 22], 5
	LONG $0x54c40f66; WORD $0x1616; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 22], 6
	LONG $0x54c40f66; WORD $0x161e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 22], 7
	QUAD $0x0118065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 24], 1
	QUAD $0x02180e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 24], 2
	QUAD $0x0318265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 24], 3
	QUAD $0x04182e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 24], 4
	LONG $0x5cc40f66; WORD $0x180e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 24], 5
	LONG $0x5cc40f66; WORD $0x1816; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 24], 6
	LONG $0x5cc40f66; WORD $0x181e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 24], 7
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x7cb70f42; WORD $0x283e             // movzx    edi, word [rsi + r15 + 40]
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x2a3e             // movzx    eax, word [rsi + r15 + 42]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x011a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 26], 1
	QUAD $0x021a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 26], 2
	QUAD $0x031a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 26], 3
	QUAD $0x041a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 26], 4
	LONG $0x74c40f66; WORD $0x1a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 26], 5
	LONG $0x74c40f66; WORD $0x1a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 26], 6
	LONG $0x74c40f66; WORD $0x1a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 26], 7
	QUAD $0x011c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 28], 1
	QUAD $0x021c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 28], 2
	QUAD $0x031c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 28], 3
	QUAD $0x041c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 28], 4
	LONG $0x7cc40f66; WORD $0x1c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 28], 5
	LONG $0x7cc40f66; WORD $0x1c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 28], 6
	LONG $0x7cc40f66; WORD $0x1c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 28], 7
	QUAD $0x011e0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 30], 1
	QUAD $0x021e0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 30], 2
	QUAD $0x031e2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 30], 3
	QUAD $0x041e2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 30], 4
	LONG $0x54c40f66; WORD $0x1e0e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 30], 5
	LONG $0x54c40f66; WORD $0x1e16; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 30], 6
	LONG $0x54c40f66; WORD $0x1e1e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 30], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x54b70f46; WORD $0x2c3e             // movzx    r10d, word [rsi + r15 + 44]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x746e0f66; WORD $0x3024             // movd    xmm6, dword [rsp + 48]
	LONG $0x74b70f46; WORD $0x2e3e             // movzx    r14d, word [rsi + r15 + 46]
	QUAD $0x0120066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 32], 1
	QUAD $0x02200e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 32], 2
	QUAD $0x0320266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 32], 3
	QUAD $0x04202e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 32], 4
	LONG $0x6cc40f66; WORD $0x200e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 32], 5
	LONG $0x6cc40f66; WORD $0x2016; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 32], 6
	QUAD $0x0122064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 34], 1
	QUAD $0x02220e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 34], 2
	QUAD $0x0322264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 34], 3
	QUAD $0x04222e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 34], 4
	LONG $0x4cc40f66; WORD $0x220e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 34], 5
	LONG $0x4cc40f66; WORD $0x2216; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 34], 6
	LONG $0x4cc40f66; WORD $0x221e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 34], 7
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0x5c6e0f66; WORD $0x1024             // movd    xmm3, dword [rsp + 16]
	LONG $0x44b70f42; WORD $0x303e             // movzx    eax, word [rsi + r15 + 48]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x6cc40f66; WORD $0x201e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 32], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	QUAD $0x01240674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 36], 1
	QUAD $0x02240e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 36], 2
	QUAD $0x03242674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 36], 3
	QUAD $0x04242e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 36], 4
	LONG $0x74c40f66; WORD $0x240e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 36], 5
	LONG $0x74c40f66; WORD $0x2416; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 36], 6
	LONG $0x74c40f66; WORD $0x241e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 36], 7
	QUAD $0x0126065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 38], 1
	QUAD $0x02260e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 38], 2
	QUAD $0x0326265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 38], 3
	QUAD $0x04262e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 38], 4
	LONG $0x5cc40f66; WORD $0x260e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 38], 5
	LONG $0x5cc40f66; WORD $0x2616; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 38], 6
	LONG $0x5cc40f66; WORD $0x261e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 38], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0xef6e0f66                           // movd    xmm5, edi
	QUAD $0x0128066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 40], 1
	QUAD $0x02280e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 40], 2
	QUAD $0x0328266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 40], 3
	QUAD $0x04282e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 40], 4
	LONG $0x6cc40f66; WORD $0x280e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 40], 5
	LONG $0x6cc40f66; WORD $0x2816; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 40], 6
	LONG $0x44b70f42; WORD $0x323e             // movzx    eax, word [rsi + r15 + 50]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf1               // pand    xmm6, xmm9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	LONG $0x7cb70f42; WORD $0x343e             // movzx    edi, word [rsi + r15 + 52]
	LONG $0x18247c89                           // mov    dword [rsp + 24], edi
	LONG $0x6cc40f66; WORD $0x281e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 40], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0xdb0f4166; BYTE $0xda               // pand    xmm3, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x5cb70f46; WORD $0x363e             // movzx    r11d, word [rsi + r15 + 54]
	QUAD $0x012a064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 42], 1
	QUAD $0x022a0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 42], 2
	QUAD $0x032a264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 42], 3
	QUAD $0x042a2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 42], 4
	LONG $0x4cc40f66; WORD $0x2a0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 42], 5
	LONG $0x4cc40f66; WORD $0x2a16; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 42], 6
	LONG $0x4cc40f66; WORD $0x2a1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 42], 7
	QUAD $0x012c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 44], 1
	QUAD $0x022c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 44], 2
	QUAD $0x032c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 44], 3
	QUAD $0x042c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 44], 4
	LONG $0x7cc40f66; WORD $0x2c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 44], 5
	LONG $0x7cc40f66; WORD $0x2c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 44], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xde               // movd    xmm3, r14d
	LONG $0x54b70f46; WORD $0x383e             // movzx    r10d, word [rsi + r15 + 56]
	LONG $0x7cc40f66; WORD $0x2c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 44], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x05               // psllw    xmm1, 5
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x746e0f66; WORD $0x1024             // movd    xmm6, dword [rsp + 16]
	LONG $0x74b70f46; WORD $0x3a3e             // movzx    r14d, word [rsi + r15 + 58]
	QUAD $0x012e065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 46], 1
	QUAD $0x022e0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 46], 2
	QUAD $0x032e265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 46], 3
	QUAD $0x042e2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 46], 4
	LONG $0x5cc40f66; WORD $0x2e0e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 46], 5
	LONG $0x5cc40f66; WORD $0x2e16; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 46], 6
	LONG $0x5cc40f66; WORD $0x2e1e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 46], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x7cb70f42; WORD $0x3c3e             // movzx    edi, word [rsi + r15 + 60]
	LONG $0x7cb70f46; WORD $0x3e3e             // movzx    r15d, word [rsi + r15 + 62]
	QUAD $0x0132064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 50], 1
	QUAD $0x02320e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 50], 2
	QUAD $0x0332264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 50], 3
	QUAD $0x04322e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x320e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 50], 5
	LONG $0x4cc40f66; WORD $0x3216; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 50], 6
	LONG $0x4cc40f66; WORD $0x321e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 50], 7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	QUAD $0x0000008824848b48                   // mov    rax, qword [rsp + 136]
	QUAD $0x01300674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 48], 1
	QUAD $0x02300e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 48], 2
	QUAD $0x03302674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 48], 3
	QUAD $0x04302e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 48], 4
	LONG $0x74c40f66; WORD $0x300e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 48], 5
	LONG $0x74c40f66; WORD $0x3016; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 48], 6
	LONG $0x74c40f66; WORD $0x301e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 48], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x0134064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 52], 1
	QUAD $0x02340e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 52], 2
	QUAD $0x0334264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 52], 3
	QUAD $0x04342e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 52], 4
	LONG $0x4cc40f66; WORD $0x340e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 52], 5
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x4cc40f66; WORD $0x3416; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 52], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x4cc40f66; WORD $0x341e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 52], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x02               // psllw    xmm1, 2
	LONG $0xdb0f4166; BYTE $0xc9               // pand    xmm1, xmm9
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	QUAD $0x01360674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 54], 1
	QUAD $0x02360e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 54], 2
	QUAD $0x03362674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 54], 3
	QUAD $0x04362e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x3616; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 54], 6
	LONG $0x74c40f66; WORD $0x361e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 54], 7
	QUAD $0x0138066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 56], 1
	QUAD $0x02380e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 56], 2
	QUAD $0x0338266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 56], 3
	QUAD $0x04382e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 56], 4
	LONG $0x6cc40f66; WORD $0x380e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 56], 5
	LONG $0x6cc40f66; WORD $0x3816; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 56], 6
	LONG $0x6cc40f66; WORD $0x381e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 56], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x03               // psllw    xmm6, 3
	LONG $0xdb0f4166; BYTE $0xf2               // pand    xmm6, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	QUAD $0x013a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 58], 1
	QUAD $0x023a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 58], 2
	QUAD $0x033a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 58], 3
	QUAD $0x043a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 58], 4
	LONG $0x74c40f66; WORD $0x3a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 58], 5
	LONG $0x74c40f66; WORD $0x3a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 58], 6
	LONG $0x74c40f66; WORD $0x3a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 58], 7
	LONG $0xe9eb0f66                           // por    xmm5, xmm1
	LONG $0xcf6e0f66                           // movd    xmm1, edi
	QUAD $0x013c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 60], 1
	QUAD $0x023c0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 60], 2
	QUAD $0x033c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 60], 3
	QUAD $0x043c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 60], 4
	LONG $0x4cc40f66; WORD $0x3c0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 60], 5
	LONG $0x4cc40f66; WORD $0x3c16; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 60], 6
	LONG $0x4cc40f66; WORD $0x3c1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 60], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x06               // psllw    xmm1, 6
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf7               // movd    xmm6, r15d
	QUAD $0x013e0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 62], 1
	QUAD $0x023e0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 62], 2
	QUAD $0x033e2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 62], 3
	QUAD $0x043e2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 62], 4
	LONG $0x74c40f66; WORD $0x3e0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 62], 5
	LONG $0x74c40f66; WORD $0x3e16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 62], 6
	LONG $0x74c40f66; WORD $0x3e1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 62], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0xdb0f4166; BYTE $0xf6               // pand    xmm6, xmm14
	LONG $0xf1eb0f66                           // por    xmm6, xmm1
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	LONG $0xeb6f0f66                           // movdqa    xmm5, xmm3
	LONG $0xee6c0f66                           // punpcklqdq    xmm5, xmm6
	QUAD $0x00000090bd6f0f66                   // movdqa    xmm7, oword 144[rbp] /* [rip + .LCPI1_9] */
	LONG $0x00380f66; BYTE $0xef               // pshufb    xmm5, xmm7
	LONG $0x00380f66; BYTE $0xcf               // pshufb    xmm1, xmm7
	LONG $0xcd610f66                           // punpcklwd    xmm1, xmm5
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe2600f66                           // punpcklbw    xmm4, xmm2
	LONG $0xe3610f66                           // punpcklwd    xmm4, xmm3
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	LONG $0x247f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm4
	LONG $0x4c7f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB1_112
	QUAD $0x000000f024bc8b4c                   // mov    r15, qword [rsp + 240]
	LONG $0x247c3b4c; BYTE $0x20               // cmp    r15, qword [rsp + 32]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	LONG $0x245c8b44; BYTE $0x04               // mov    r11d, dword [rsp + 4]
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	JNE  LBB1_114
	JMP  LBB1_117

LBB1_134:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	LONG $0x24448948; BYTE $0x38         // mov    qword [rsp + 56], rax
	LONG $0x247c894c; BYTE $0x20         // mov    qword [rsp + 32], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x08         // mov    qword [rsp + 8], rax
	LONG $0x6e0f4166; BYTE $0xc3         // movd    xmm0, r11d
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	WORD $0x3145; BYTE $0xff             // xor    r15d, r15d
	QUAD $0x000080bd6f0f4466; BYTE $0x00 // movdqa    xmm15, oword 128[rbp] /* [rip + .LCPI1_8] */
	LONG $0x6f0f4466; WORD $0x104d       // movdqa    xmm9, oword 16[rbp] /* [rip + .LCPI1_1] */
	LONG $0x6f0f4466; WORD $0x2055       // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI1_2] */
	LONG $0x6f0f4466; WORD $0x305d       // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI1_3] */
	LONG $0x6f0f4466; WORD $0x4065       // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI1_4] */
	LONG $0x6f0f4466; WORD $0x506d       // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI1_5] */
	LONG $0x6f0f4466; WORD $0x6075       // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI1_6] */
	QUAD $0x0000008824b4894c             // mov    qword [rsp + 136], r14

LBB1_135:
	LONG $0x247c894c; BYTE $0x28               // mov    qword [rsp + 40], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xfa                   // mov    rdx, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x34b70f46; BYTE $0x3e               // movzx    r14d, word [rsi + r15]
	LONG $0x44b70f42; WORD $0x023e             // movzx    eax, word [rsi + r15 + 2]
	LONG $0x54b70f46; WORD $0x043e             // movzx    r10d, word [rsi + r15 + 4]
	LONG $0x7cb70f42; WORD $0x063e             // movzx    edi, word [rsi + r15 + 6]
	LONG $0x5cb70f46; WORD $0x083e             // movzx    r11d, word [rsi + r15 + 8]
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 384
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0xc40f4266; WORD $0x0624; BYTE $0x01 // pinsrw    xmm4, word [rsi + r8], 1
	LONG $0xc40f4266; WORD $0x0e24; BYTE $0x02 // pinsrw    xmm4, word [rsi + r9], 2
	LONG $0xc40f4266; WORD $0x2624; BYTE $0x03 // pinsrw    xmm4, word [rsi + r12], 3
	LONG $0xc40f4266; WORD $0x2e24; BYTE $0x04 // pinsrw    xmm4, word [rsi + r13], 4
	LONG $0x24c40f66; WORD $0x050e             // pinsrw    xmm4, word [rsi + rcx], 5
	LONG $0x24c40f66; WORD $0x0616             // pinsrw    xmm4, word [rsi + rdx], 6
	LONG $0x24c40f66; WORD $0x071e             // pinsrw    xmm4, word [rsi + rbx], 7
	LONG $0x74b70f46; WORD $0x0a3e             // movzx    r14d, word [rsi + r15 + 10]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x01020674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 2], 1
	QUAD $0x02020e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 2], 2
	QUAD $0x03022674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 2], 3
	LONG $0x44b70f42; WORD $0x0c3e             // movzx    eax, word [rsi + r15 + 12]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x04022e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 2], 4
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x44b70f42; WORD $0x0e3e             // movzx    eax, word [rsi + r15 + 14]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x74c40f66; WORD $0x020e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 2], 5
	LONG $0xef6e0f66                           // movd    xmm5, edi
	LONG $0x7cb70f42; WORD $0x103e             // movzx    edi, word [rsi + r15 + 16]
	LONG $0x74c40f66; WORD $0x0216; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 2], 6
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x44b70f42; WORD $0x123e             // movzx    eax, word [rsi + r15 + 18]
	LONG $0x30244489                           // mov    dword [rsp + 48], eax
	LONG $0x74c40f66; WORD $0x021e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 2], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xcef80f66                           // psubb    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	LONG $0x54b70f46; WORD $0x143e             // movzx    r10d, word [rsi + r15 + 20]
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	QUAD $0x01040654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 4], 1
	QUAD $0x02040e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 4], 2
	QUAD $0x03042654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 4], 3
	QUAD $0x04042e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x0416; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 4], 6
	LONG $0x54c40f66; WORD $0x041e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 4], 7
	QUAD $0x0106066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 6], 1
	QUAD $0x02060e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 6], 2
	QUAD $0x0306266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 6], 3
	QUAD $0x04062e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 6], 4
	LONG $0x6cc40f66; WORD $0x060e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 6], 5
	LONG $0x6cc40f66; WORD $0x0616; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 6], 6
	LONG $0x6cc40f66; WORD $0x061e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 6], 7
	QUAD $0x0108065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 8], 1
	QUAD $0x02080e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 8], 2
	QUAD $0x0308265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 8], 3
	QUAD $0x04082e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 8], 4
	LONG $0x5cc40f66; WORD $0x080e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 8], 5
	LONG $0x5cc40f66; WORD $0x0816; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 8], 6
	LONG $0x5cc40f66; WORD $0x081e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 8], 7
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x44b70f42; WORD $0x163e             // movzx    eax, word [rsi + r15 + 22]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0xdb0f4166; BYTE $0xd1               // pand    xmm2, xmm9
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x646e0f66; WORD $0x1024             // movd    xmm4, dword [rsp + 16]
	LONG $0x5cb70f46; WORD $0x183e             // movzx    r11d, word [rsi + r15 + 24]
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xcf6e0f66                           // movd    xmm1, edi
	LONG $0x7cb70f42; WORD $0x1a3e             // movzx    edi, word [rsi + r15 + 26]
	QUAD $0x010a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 10], 1
	QUAD $0x020a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 10], 2
	QUAD $0x030a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 10], 3
	QUAD $0x040a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 10], 4
	LONG $0x74c40f66; WORD $0x0a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 10], 5
	LONG $0x74c40f66; WORD $0x0a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 10], 6
	LONG $0x74c40f66; WORD $0x0a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 10], 7
	QUAD $0x010c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 12], 1
	QUAD $0x020c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 12], 2
	QUAD $0x030c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 12], 3
	QUAD $0x040c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 12], 4
	LONG $0x7cc40f66; WORD $0x0c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 12], 5
	LONG $0x7cc40f66; WORD $0x0c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 12], 6
	LONG $0x7cc40f66; WORD $0x0c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 12], 7
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4466; WORD $0x2444; BYTE $0x30 // movd    xmm8, dword [rsp + 48]
	LONG $0x74b70f46; WORD $0x1c3e             // movzx    r14d, word [rsi + r15 + 28]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	LONG $0x54b70f46; WORD $0x1e3e             // movzx    r10d, word [rsi + r15 + 30]
	QUAD $0x010e0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 14], 1
	QUAD $0x020e0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 14], 2
	QUAD $0x030e2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 14], 3
	QUAD $0x040e2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 14], 4
	LONG $0x64c40f66; WORD $0x0e0e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rcx + 14], 5
	LONG $0x64c40f66; WORD $0x0e16; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdx + 14], 6
	LONG $0x64c40f66; WORD $0x0e1e; BYTE $0x07 // pinsrw    xmm4, word [rsi + rbx + 14], 7
	QUAD $0x01120644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 18], 1
	QUAD $0x02120e44c40f4666                   // pinsrw    xmm8, word [rsi + r9 + 18], 2
	QUAD $0x03122644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 18], 3
	QUAD $0x04122e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 18], 4
	QUAD $0x05120e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 18], 5
	QUAD $0x06121644c40f4466                   // pinsrw    xmm8, word [rsi + rdx + 18], 6
	QUAD $0x07121e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 18], 7
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x203e             // movzx    eax, word [rsi + r15 + 32]
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x750f4466; BYTE $0xc0               // pcmpeqw    xmm8, xmm0
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf80f4166; BYTE $0xf8               // psubb    xmm7, xmm8
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x5cb70f46; WORD $0x223e             // movzx    r11d, word [rsi + r15 + 34]
	QUAD $0x0110064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 16], 1
	QUAD $0x02100e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 16], 2
	QUAD $0x0310264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 16], 3
	QUAD $0x04102e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 16], 4
	LONG $0x4cc40f66; WORD $0x100e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 16], 5
	LONG $0x4cc40f66; WORD $0x1016; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 16], 6
	LONG $0x4cc40f66; WORD $0x101e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 16], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xf76e0f66                           // movd    xmm6, edi
	LONG $0x7cb70f42; WORD $0x243e             // movzx    edi, word [rsi + r15 + 36]
	LONG $0x30247c89                           // mov    dword [rsp + 48], edi
	QUAD $0x0114066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 20], 1
	QUAD $0x02140e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 20], 2
	QUAD $0x0314266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 20], 3
	QUAD $0x04142e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 20], 4
	LONG $0x6cc40f66; WORD $0x140e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 20], 5
	LONG $0x6cc40f66; WORD $0x1416; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 20], 6
	LONG $0x6cc40f66; WORD $0x141e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 20], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe9               // pand    xmm5, xmm9
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6e0f4166; BYTE $0xfe               // movd    xmm7, r14d
	LONG $0x7cb70f42; WORD $0x263e             // movzx    edi, word [rsi + r15 + 38]
	LONG $0x10247c89                           // mov    dword [rsp + 16], edi
	QUAD $0x01160654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 22], 1
	QUAD $0x02160e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 22], 2
	QUAD $0x03162654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 22], 3
	QUAD $0x04162e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 22], 4
	LONG $0x54c40f66; WORD $0x160e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 22], 5
	LONG $0x54c40f66; WORD $0x1616; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 22], 6
	LONG $0x54c40f66; WORD $0x161e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 22], 7
	QUAD $0x0118065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 24], 1
	QUAD $0x02180e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 24], 2
	QUAD $0x0318265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 24], 3
	QUAD $0x04182e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 24], 4
	LONG $0x5cc40f66; WORD $0x180e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 24], 5
	LONG $0x5cc40f66; WORD $0x1816; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 24], 6
	LONG $0x5cc40f66; WORD $0x181e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 24], 7
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x7cb70f42; WORD $0x283e             // movzx    edi, word [rsi + r15 + 40]
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x2a3e             // movzx    eax, word [rsi + r15 + 42]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x011a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 26], 1
	QUAD $0x021a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 26], 2
	QUAD $0x031a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 26], 3
	QUAD $0x041a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 26], 4
	LONG $0x74c40f66; WORD $0x1a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 26], 5
	LONG $0x74c40f66; WORD $0x1a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 26], 6
	LONG $0x74c40f66; WORD $0x1a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 26], 7
	QUAD $0x011c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 28], 1
	QUAD $0x021c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 28], 2
	QUAD $0x031c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 28], 3
	QUAD $0x041c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 28], 4
	LONG $0x7cc40f66; WORD $0x1c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 28], 5
	LONG $0x7cc40f66; WORD $0x1c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 28], 6
	LONG $0x7cc40f66; WORD $0x1c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 28], 7
	QUAD $0x011e0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 30], 1
	QUAD $0x021e0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 30], 2
	QUAD $0x031e2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 30], 3
	QUAD $0x041e2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 30], 4
	LONG $0x54c40f66; WORD $0x1e0e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 30], 5
	LONG $0x54c40f66; WORD $0x1e16; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdx + 30], 6
	LONG $0x54c40f66; WORD $0x1e1e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 30], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x54b70f46; WORD $0x2c3e             // movzx    r10d, word [rsi + r15 + 44]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x746e0f66; WORD $0x3024             // movd    xmm6, dword [rsp + 48]
	LONG $0x74b70f46; WORD $0x2e3e             // movzx    r14d, word [rsi + r15 + 46]
	QUAD $0x0120066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 32], 1
	QUAD $0x02200e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 32], 2
	QUAD $0x0320266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 32], 3
	QUAD $0x04202e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 32], 4
	LONG $0x6cc40f66; WORD $0x200e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 32], 5
	LONG $0x6cc40f66; WORD $0x2016; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 32], 6
	QUAD $0x0122064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 34], 1
	QUAD $0x02220e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 34], 2
	QUAD $0x0322264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 34], 3
	QUAD $0x04222e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 34], 4
	LONG $0x4cc40f66; WORD $0x220e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 34], 5
	LONG $0x4cc40f66; WORD $0x2216; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 34], 6
	LONG $0x4cc40f66; WORD $0x221e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 34], 7
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0x5c6e0f66; WORD $0x1024             // movd    xmm3, dword [rsp + 16]
	LONG $0x44b70f42; WORD $0x303e             // movzx    eax, word [rsi + r15 + 48]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x6cc40f66; WORD $0x201e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 32], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	QUAD $0x01240674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 36], 1
	QUAD $0x02240e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 36], 2
	QUAD $0x03242674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 36], 3
	QUAD $0x04242e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 36], 4
	LONG $0x74c40f66; WORD $0x240e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 36], 5
	LONG $0x74c40f66; WORD $0x2416; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 36], 6
	LONG $0x74c40f66; WORD $0x241e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 36], 7
	QUAD $0x0126065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 38], 1
	QUAD $0x02260e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 38], 2
	QUAD $0x0326265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 38], 3
	QUAD $0x04262e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 38], 4
	LONG $0x5cc40f66; WORD $0x260e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 38], 5
	LONG $0x5cc40f66; WORD $0x2616; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 38], 6
	LONG $0x5cc40f66; WORD $0x261e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 38], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0xef6e0f66                           // movd    xmm5, edi
	QUAD $0x0128066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 40], 1
	QUAD $0x02280e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 40], 2
	QUAD $0x0328266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 40], 3
	QUAD $0x04282e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 40], 4
	LONG $0x6cc40f66; WORD $0x280e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 40], 5
	LONG $0x6cc40f66; WORD $0x2816; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 40], 6
	LONG $0x44b70f42; WORD $0x323e             // movzx    eax, word [rsi + r15 + 50]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf1               // pand    xmm6, xmm9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	LONG $0x7cb70f42; WORD $0x343e             // movzx    edi, word [rsi + r15 + 52]
	LONG $0x18247c89                           // mov    dword [rsp + 24], edi
	LONG $0x6cc40f66; WORD $0x281e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 40], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0xdb0f4166; BYTE $0xda               // pand    xmm3, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x5cb70f46; WORD $0x363e             // movzx    r11d, word [rsi + r15 + 54]
	QUAD $0x012a064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 42], 1
	QUAD $0x022a0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 42], 2
	QUAD $0x032a264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 42], 3
	QUAD $0x042a2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 42], 4
	LONG $0x4cc40f66; WORD $0x2a0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 42], 5
	LONG $0x4cc40f66; WORD $0x2a16; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 42], 6
	LONG $0x4cc40f66; WORD $0x2a1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 42], 7
	QUAD $0x012c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 44], 1
	QUAD $0x022c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 44], 2
	QUAD $0x032c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 44], 3
	QUAD $0x042c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 44], 4
	LONG $0x7cc40f66; WORD $0x2c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 44], 5
	LONG $0x7cc40f66; WORD $0x2c16; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdx + 44], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xde               // movd    xmm3, r14d
	LONG $0x54b70f46; WORD $0x383e             // movzx    r10d, word [rsi + r15 + 56]
	LONG $0x7cc40f66; WORD $0x2c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 44], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x05               // psllw    xmm1, 5
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x746e0f66; WORD $0x1024             // movd    xmm6, dword [rsp + 16]
	LONG $0x74b70f46; WORD $0x3a3e             // movzx    r14d, word [rsi + r15 + 58]
	QUAD $0x012e065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 46], 1
	QUAD $0x022e0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 46], 2
	QUAD $0x032e265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 46], 3
	QUAD $0x042e2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 46], 4
	LONG $0x5cc40f66; WORD $0x2e0e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 46], 5
	LONG $0x5cc40f66; WORD $0x2e16; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdx + 46], 6
	LONG $0x5cc40f66; WORD $0x2e1e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 46], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x7cb70f42; WORD $0x3c3e             // movzx    edi, word [rsi + r15 + 60]
	LONG $0x7cb70f46; WORD $0x3e3e             // movzx    r15d, word [rsi + r15 + 62]
	QUAD $0x0132064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 50], 1
	QUAD $0x02320e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 50], 2
	QUAD $0x0332264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 50], 3
	QUAD $0x04322e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x320e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 50], 5
	LONG $0x4cc40f66; WORD $0x3216; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 50], 6
	LONG $0x4cc40f66; WORD $0x321e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 50], 7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	QUAD $0x0000008824848b48                   // mov    rax, qword [rsp + 136]
	QUAD $0x01300674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 48], 1
	QUAD $0x02300e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 48], 2
	QUAD $0x03302674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 48], 3
	QUAD $0x04302e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 48], 4
	LONG $0x74c40f66; WORD $0x300e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 48], 5
	LONG $0x74c40f66; WORD $0x3016; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 48], 6
	LONG $0x74c40f66; WORD $0x301e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 48], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x0134064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 52], 1
	QUAD $0x02340e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 52], 2
	QUAD $0x0334264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 52], 3
	QUAD $0x04342e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 52], 4
	LONG $0x4cc40f66; WORD $0x340e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 52], 5
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x4cc40f66; WORD $0x3416; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 52], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x4cc40f66; WORD $0x341e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 52], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x02               // psllw    xmm1, 2
	LONG $0xdb0f4166; BYTE $0xc9               // pand    xmm1, xmm9
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	QUAD $0x01360674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 54], 1
	QUAD $0x02360e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 54], 2
	QUAD $0x03362674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 54], 3
	QUAD $0x04362e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x3616; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 54], 6
	LONG $0x74c40f66; WORD $0x361e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 54], 7
	QUAD $0x0138066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 56], 1
	QUAD $0x02380e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 56], 2
	QUAD $0x0338266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 56], 3
	QUAD $0x04382e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 56], 4
	LONG $0x6cc40f66; WORD $0x380e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 56], 5
	LONG $0x6cc40f66; WORD $0x3816; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdx + 56], 6
	LONG $0x6cc40f66; WORD $0x381e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 56], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x03               // psllw    xmm6, 3
	LONG $0xdb0f4166; BYTE $0xf2               // pand    xmm6, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	QUAD $0x013a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 58], 1
	QUAD $0x023a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 58], 2
	QUAD $0x033a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 58], 3
	QUAD $0x043a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 58], 4
	LONG $0x74c40f66; WORD $0x3a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 58], 5
	LONG $0x74c40f66; WORD $0x3a16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 58], 6
	LONG $0x74c40f66; WORD $0x3a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 58], 7
	LONG $0xe9eb0f66                           // por    xmm5, xmm1
	LONG $0xcf6e0f66                           // movd    xmm1, edi
	QUAD $0x013c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 60], 1
	QUAD $0x023c0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 60], 2
	QUAD $0x033c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 60], 3
	QUAD $0x043c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 60], 4
	LONG $0x4cc40f66; WORD $0x3c0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 60], 5
	LONG $0x4cc40f66; WORD $0x3c16; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdx + 60], 6
	LONG $0x4cc40f66; WORD $0x3c1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 60], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x06               // psllw    xmm1, 6
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf7               // movd    xmm6, r15d
	QUAD $0x013e0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 62], 1
	QUAD $0x023e0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 62], 2
	QUAD $0x033e2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 62], 3
	QUAD $0x043e2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 62], 4
	LONG $0x74c40f66; WORD $0x3e0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 62], 5
	LONG $0x74c40f66; WORD $0x3e16; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdx + 62], 6
	LONG $0x74c40f66; WORD $0x3e1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 62], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0xdb0f4166; BYTE $0xf6               // pand    xmm6, xmm14
	LONG $0xf1eb0f66                           // por    xmm6, xmm1
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	LONG $0xeb6f0f66                           // movdqa    xmm5, xmm3
	LONG $0xee6c0f66                           // punpcklqdq    xmm5, xmm6
	QUAD $0x00000090bd6f0f66                   // movdqa    xmm7, oword 144[rbp] /* [rip + .LCPI1_9] */
	LONG $0x00380f66; BYTE $0xef               // pshufb    xmm5, xmm7
	LONG $0x00380f66; BYTE $0xcf               // pshufb    xmm1, xmm7
	LONG $0xcd610f66                           // punpcklwd    xmm1, xmm5
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe2600f66                           // punpcklbw    xmm4, xmm2
	LONG $0xe3610f66                           // punpcklwd    xmm4, xmm3
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	LONG $0x247f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm4
	LONG $0x4c7f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB1_135
	QUAD $0x000000f024bc8b4c                   // mov    r15, qword [rsp + 240]
	LONG $0x247c3b4c; BYTE $0x20               // cmp    r15, qword [rsp + 32]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	LONG $0x245c8b44; BYTE $0x04               // mov    r11d, dword [rsp + 4]
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	JNE  LBB1_137
	JMP  LBB1_140

LBB1_182:
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x0148; BYTE $0xf3                   // add    rbx, rsi
	LONG $0x863c8d4f                           // lea    r15, [r14 + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc68148; WORD $0x0001; BYTE $0x00 // add    rsi, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI1_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI1_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI1_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI1_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI1_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI1_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI1_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI1_7] */

LBB1_183:
	QUAD $0xfffffe04b6100ff3                   // movss    xmm6, dword [rsi - 508]
	QUAD $0xfffffe08be100ff3                   // movss    xmm7, dword [rsi - 504]
	QUAD $0xfffffe0cae100ff3                   // movss    xmm5, dword [rsi - 500]
	QUAD $0xfffffe10a6100ff3                   // movss    xmm4, dword [rsi - 496]
	QUAD $0xfffe84b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 380], 16
	QUAD $0xffff04b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 252], 32
	LONG $0x213a0f66; WORD $0x8476; BYTE $0x30 // insertps    xmm6, dword [rsi - 124], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	QUAD $0xfffe88be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 376], 16
	QUAD $0xffff08be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 248], 32
	LONG $0x213a0f66; WORD $0x887e; BYTE $0x30 // insertps    xmm7, dword [rsi - 120], 48
	QUAD $0xfffe8cae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 372], 16
	QUAD $0xffff0cae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 244], 32
	LONG $0x213a0f66; WORD $0x8c6e; BYTE $0x30 // insertps    xmm5, dword [rsi - 116], 48
	QUAD $0xfffe90a6213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rsi - 368], 16
	QUAD $0xffff10a6213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rsi - 240], 32
	LONG $0x213a0f66; WORD $0x9066; BYTE $0x30 // insertps    xmm4, dword [rsi - 112], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xd7f80f66                           // psubb    xmm2, xmm7
	QUAD $0xfffffe14be100ff3                   // movss    xmm7, dword [rsi - 492]
	QUAD $0xfffe94be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 364], 16
	QUAD $0xffff14be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 236], 32
	LONG $0x213a0f66; WORD $0x947e; BYTE $0x30 // insertps    xmm7, dword [rsi - 108], 48
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe18b6100ff3                   // movss    xmm6, dword [rsi - 488]
	QUAD $0xfffe98b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 360], 16
	QUAD $0xffff18b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 232], 32
	LONG $0x213a0f66; WORD $0x9876; BYTE $0x30 // insertps    xmm6, dword [rsi - 104], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe1c9e100ff3                   // movss    xmm3, dword [rsi - 484]
	QUAD $0xfffe9c9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 356], 16
	QUAD $0xffff1c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 228], 32
	LONG $0x213a0f66; WORD $0x9c5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 100], 48
	LONG $0x00e1c20f                           // cmpeqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2               // pand    xmm4, xmm10
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04               // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	QUAD $0xfffffe20a6100ff3                   // movss    xmm4, dword [rsi - 480]
	QUAD $0xfffea0a6213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rsi - 352], 16
	QUAD $0xffff20a6213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rsi - 224], 32
	LONG $0x213a0f66; WORD $0xa066; BYTE $0x30 // insertps    xmm4, dword [rsi - 96], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe24ae100ff3                   // movss    xmm5, dword [rsi - 476]
	QUAD $0xfffea4ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 348], 16
	QUAD $0xffff24ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 220], 32
	LONG $0x213a0f66; WORD $0xa46e; BYTE $0x30 // insertps    xmm5, dword [rsi - 92], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06               // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd               // pand    xmm3, xmm13
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe2896100ff3                   // movss    xmm2, dword [rsi - 472]
	QUAD $0xfffea896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 344], 16
	QUAD $0xffff2896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 216], 32
	LONG $0x213a0f66; WORD $0xa856; BYTE $0x30 // insertps    xmm2, dword [rsi - 88], 48
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x00e1c20f                           // cmpeqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	QUAD $0xfffffe2c9e100ff3                   // movss    xmm3, dword [rsi - 468]
	QUAD $0xfffeac9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 340], 16
	QUAD $0xffff2c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 212], 32
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0x213a0f66; WORD $0xac5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 84], 48
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe30be100ff3                   // movss    xmm7, dword [rsi - 464]
	QUAD $0xfffeb0be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 336], 16
	QUAD $0xffff30be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 208], 32
	LONG $0x213a0f66; WORD $0xb07e; BYTE $0x30 // insertps    xmm7, dword [rsi - 80], 48
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe34ae100ff3                   // movss    xmm5, dword [rsi - 460]
	QUAD $0xfffeb4ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 332], 16
	QUAD $0xffff34ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 204], 32
	LONG $0x213a0f66; WORD $0xb46e; BYTE $0x30 // insertps    xmm5, dword [rsi - 76], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe38b6100ff3                   // movss    xmm6, dword [rsi - 456]
	QUAD $0xfffeb8b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 328], 16
	QUAD $0xffff38b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 200], 32
	LONG $0x213a0f66; WORD $0xb876; BYTE $0x30 // insertps    xmm6, dword [rsi - 72], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03               // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa               // pand    xmm7, xmm10
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0xfffffe3c96100ff3                   // movss    xmm2, dword [rsi - 452]
	QUAD $0xfffebc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 324], 16
	QUAD $0xffff3c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 196], 32
	LONG $0x213a0f66; WORD $0xbc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 68], 48
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	QUAD $0xfffffe40be100ff3                   // movss    xmm7, dword [rsi - 448]
	QUAD $0xfffec0be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 320], 16
	QUAD $0xffff40be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 192], 32
	LONG $0x213a0f66; WORD $0xc07e; BYTE $0x30 // insertps    xmm7, dword [rsi - 64], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe44b6100ff3                   // movss    xmm6, dword [rsi - 444]
	QUAD $0xfffec4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 316], 16
	QUAD $0xffff44b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 188], 32
	LONG $0x213a0f66; WORD $0xc476; BYTE $0x30 // insertps    xmm6, dword [rsi - 60], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07               // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe               // pand    xmm7, xmm14
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0xfffffe4896100ff3                   // movss    xmm2, dword [rsi - 440]
	QUAD $0xfffec896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 312], 16
	QUAD $0xffff4896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 184], 32
	LONG $0x213a0f66; WORD $0xc856; BYTE $0x30 // insertps    xmm2, dword [rsi - 56], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe4c9e100ff3                   // movss    xmm3, dword [rsi - 436]
	QUAD $0xfffecc9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 308], 16
	QUAD $0xffff4c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x213a0f66; WORD $0xcc5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 52], 48
	LONG $0xe7620f66                           // punpckldq    xmm4, xmm7
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xfaf80f66                           // psubb    xmm7, xmm2
	QUAD $0xfffffe50ae100ff3                   // movss    xmm5, dword [rsi - 432]
	QUAD $0xfffed0ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 304], 16
	QUAD $0xffff50ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 176], 32
	LONG $0x213a0f66; WORD $0xd06e; BYTE $0x30 // insertps    xmm5, dword [rsi - 48], 48
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	QUAD $0xfffffe54b6100ff3                   // movss    xmm6, dword [rsi - 428]
	QUAD $0xfffed4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 300], 16
	QUAD $0xffff54b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 172], 32
	LONG $0x213a0f66; WORD $0xd476; BYTE $0x30 // insertps    xmm6, dword [rsi - 44], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	QUAD $0xfffffe58be100ff3                   // movss    xmm7, dword [rsi - 424]
	QUAD $0xfffed8be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 296], 16
	QUAD $0xffff58be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 168], 32
	LONG $0x213a0f66; WORD $0xd87e; BYTE $0x30 // insertps    xmm7, dword [rsi - 40], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe5c96100ff3                   // movss    xmm2, dword [rsi - 420]
	QUAD $0xfffedc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 292], 16
	QUAD $0xffff5c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 164], 32
	LONG $0x213a0f66; WORD $0xdc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 36], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe60ae100ff3                   // movss    xmm5, dword [rsi - 416]
	QUAD $0xfffee0ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 288], 16
	QUAD $0xffff60ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 160], 32
	LONG $0x213a0f66; WORD $0xe06e; BYTE $0x30 // insertps    xmm5, dword [rsi - 32], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe64be100ff3                   // movss    xmm7, dword [rsi - 412]
	QUAD $0xfffee4be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 284], 16
	QUAD $0xffff64be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 156], 32
	LONG $0x213a0f66; WORD $0xe47e; BYTE $0x30 // insertps    xmm7, dword [rsi - 28], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07               // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee               // pand    xmm5, xmm14
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe6896100ff3                   // movss    xmm2, dword [rsi - 408]
	QUAD $0xfffee896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 280], 16
	QUAD $0xffff6896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 152], 32
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0x213a0f66; WORD $0xe856; BYTE $0x30 // insertps    xmm2, dword [rsi - 24], 48
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe6c9e100ff3                   // movss    xmm3, dword [rsi - 404]
	QUAD $0xfffeec9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 276], 16
	QUAD $0xffff6c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 148], 32
	LONG $0x213a0f66; WORD $0xec5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 20], 48
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0xfffffe7096100ff3                   // movss    xmm2, dword [rsi - 400]
	QUAD $0xfffef096213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 272], 16
	QUAD $0xffff7096213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 144], 32
	LONG $0x213a0f66; WORD $0xf056; BYTE $0x30 // insertps    xmm2, dword [rsi - 16], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe74b6100ff3                   // movss    xmm6, dword [rsi - 396]
	QUAD $0xfffef4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 268], 16
	QUAD $0xffff74b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 140], 32
	LONG $0x213a0f66; WORD $0xf476; BYTE $0x30 // insertps    xmm6, dword [rsi - 12], 48
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	QUAD $0xfffffe78be100ff3                   // movss    xmm7, dword [rsi - 392]
	QUAD $0xfffef8be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 264], 16
	QUAD $0xffff78be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 136], 32
	LONG $0x213a0f66; WORD $0xf87e; BYTE $0x30 // insertps    xmm7, dword [rsi - 8], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe7c96100ff3                   // movss    xmm2, dword [rsi - 388]
	QUAD $0xfffefc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 260], 16
	QUAD $0xffff7c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 132], 32
	LONG $0x213a0f66; WORD $0xfc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 4], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe809e100ff3                   // movss    xmm3, dword [rsi - 384]
	QUAD $0xffff009e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 256], 16
	LONG $0x213a0f66; WORD $0x805e; BYTE $0x20 // insertps    xmm3, dword [rsi - 128], 32
	LONG $0x213a0f66; WORD $0x301e             // insertps    xmm3, dword [rsi], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	LONG $0xeb620f66                           // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                           // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100             // pshufb    xmm4, xmm9
	LONG $0x7f0f41f3; WORD $0x8e24             // movdqu    oword [r14 + 4*rcx], xmm4
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x00c68148; WORD $0x0002; BYTE $0x00 // add    rsi, 512
	WORD $0x3949; BYTE $0xc8                   // cmp    r8, rcx
	JNE  LBB1_183
	WORD $0x394d; BYTE $0xc3                   // cmp    r11, r8
	JNE  LBB1_185
	JMP  LBB1_188

DATA LCDATA2<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA2<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA2<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA2<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA2<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA2<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA2<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA2<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA2<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA2<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA2<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA2<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA2<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA2<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA2<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA2<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA2<>+0x080(SB)/8, $0x0101010101010101
DATA LCDATA2<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA2<>+0x090(SB)/8, $0x0f070e060d050c04
DATA LCDATA2<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA2<>+0x0a0(SB)/8, $0x0101010101010101
DATA LCDATA2<>+0x0a8(SB)/8, $0x0101010101010101
DATA LCDATA2<>+0x0b0(SB)/8, $0x0404040404040404
DATA LCDATA2<>+0x0b8(SB)/8, $0x0404040404040404
DATA LCDATA2<>+0x0c0(SB)/8, $0x0808080808080808
DATA LCDATA2<>+0x0c8(SB)/8, $0x0808080808080808
DATA LCDATA2<>+0x0d0(SB)/8, $0x1010101010101010
DATA LCDATA2<>+0x0d8(SB)/8, $0x1010101010101010
DATA LCDATA2<>+0x0e0(SB)/8, $0x2020202020202020
DATA LCDATA2<>+0x0e8(SB)/8, $0x2020202020202020
DATA LCDATA2<>+0x0f0(SB)/8, $0x4040404040404040
DATA LCDATA2<>+0x0f8(SB)/8, $0x4040404040404040
GLOBL LCDATA2<>(SB), 8, $256

TEXT ·_comparison_equal_scalar_arr_sse4(SB), $328-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 304(SP)
	LEAQ LCDATA2<>(SB), BP

	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0x240c8948         // mov    qword [rsp], rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB2_17
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB2_32
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB2_83
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB2_95
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB2_177
	WORD $0x8b44; BYTE $0x2e // mov    r13d, dword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_9
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB2_7:
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x31               // movzx    r8d, byte [r9 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x313c8841                           // mov    byte [r9 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB2_7
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB2_9:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_13
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11

LBB2_11:
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x046a3b44                           // cmp    r13d, dword [rdx + 4]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x086a3b44                           // cmp    r13d, dword [rdx + 8]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0c6a3b44                           // cmp    r13d, dword [rdx + 12]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x106a3b44                           // cmp    r13d, dword [rdx + 16]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x146a3b44                           // cmp    r13d, dword [rdx + 20]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x186a3b44                           // cmp    r13d, dword [rdx + 24]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x1c6a3b44                           // cmp    r13d, dword [rdx + 28]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x206a3b44                           // cmp    r13d, dword [rdx + 32]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x246a3b44                           // cmp    r13d, dword [rdx + 36]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x286a3b44                           // cmp    r13d, dword [rdx + 40]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x2c6a3b44                           // cmp    r13d, dword [rdx + 44]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x306a3b44                           // cmp    r13d, dword [rdx + 48]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x346a3b44                           // cmp    r13d, dword [rdx + 52]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x386a3b44                           // cmp    r13d, dword [rdx + 56]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x3c6a3b44                           // cmp    r13d, dword [rdx + 60]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x406a3b44                           // cmp    r13d, dword [rdx + 64]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x446a3b44                           // cmp    r13d, dword [rdx + 68]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x486a3b44                           // cmp    r13d, dword [rdx + 72]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x4c6a3b44                           // cmp    r13d, dword [rdx + 76]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x506a3b44                           // cmp    r13d, dword [rdx + 80]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x546a3b44                           // cmp    r13d, dword [rdx + 84]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x586a3b44                           // cmp    r13d, dword [rdx + 88]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x5c6a3b44                           // cmp    r13d, dword [rdx + 92]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x606a3b44                           // cmp    r13d, dword [rdx + 96]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x646a3b44                           // cmp    r13d, dword [rdx + 100]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x686a3b44                           // cmp    r13d, dword [rdx + 104]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x6c6a3b44                           // cmp    r13d, dword [rdx + 108]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x706a3b44                           // cmp    r13d, dword [rdx + 112]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x746a3b44                           // cmp    r13d, dword [rdx + 116]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x786a3b44                           // cmp    r13d, dword [rdx + 120]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x7c6a3b44                           // cmp    r13d, dword [rdx + 124]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000c024940244                   // add    r10b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000d024b40240                   // add    sil, byte [rsp + 208]
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	WORD $0x8941; BYTE $0xda                   // mov    r10d, ebx
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x70               // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xd3                   // or    bl, r10b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x0000b02484b60f44; BYTE $0x00       // movzx    r8d, byte [rsp + 176]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x48245c02                           // add    bl, byte [rsp + 72]
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8840; BYTE $0x3e                   // mov    byte [rsi], dil
	LONG $0x247cb60f; BYTE $0x40               // movzx    edi, byte [rsp + 64]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0x4688; BYTE $0x01                   // mov    byte [rsi + 1], al
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8844                           // mov    byte [rsi + 2], r15b
	WORD $0x4e88; BYTE $0x03                   // mov    byte [rsi + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_11
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB2_13:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JE   LBB2_82
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_16:
	WORD $0x3b44; BYTE $0x2a     // cmp    r13d, dword [rdx]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x331c8841             // mov    byte [r11 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x046a3b44             // cmp    r13d, dword [rdx + 4]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd1940f41             // sete    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x33048841             // mov    byte [r11 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB2_16
	JMP  LBB2_153

LBB2_17:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB2_46
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB2_107
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB2_118
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB2_177
	LONG $0x1f728d4d         // lea    r14, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xf2490f4d         // cmovns    r14, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff2         // movsd    xmm0, qword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_25
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_23:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xcb20                 // and    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_23
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_25:
	LONG $0x05fec149         // sar    r14, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_29
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x000000f024b4894c // mov    qword [rsp + 240], r14
	QUAD $0x0000009824b4894c // mov    qword [rsp + 152], r14

LBB2_27:
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xc320                               // and    bl, al
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd5940f41                           // sete    r13b
	WORD $0x2041; BYTE $0xc5                   // and    r13b, al
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xd0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 208], cl
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x2041; BYTE $0xc6                   // and    r14b, al
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x2041; BYTE $0xc4                   // and    r12b, al
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f40                           // sete    sil
	WORD $0x2040; BYTE $0xc6                   // and    sil, al
	WORD $0xdb00                               // add    bl, bl
	LONG $0x18245c02                           // add    bl, byte [rsp + 24]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x08244488                           // mov    byte [rsp + 8], al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x247cb60f; BYTE $0x48               // movzx    edi, byte [rsp + 72]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x6cb60f44; WORD $0x7024             // movzx    r13d, byte [rsp + 112]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xc900                               // add    cl, cl
	LONG $0x50244c02                           // add    cl, byte [rsp + 80]
	LONG $0x247cb60f; BYTE $0x78               // movzx    edi, byte [rsp + 120]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	QUAD $0x000000b0248cb60f                   // movzx    ecx, byte [rsp + 176]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xcf89                               // mov    edi, ecx
	QUAD $0x000000d0248cb60f                   // movzx    ecx, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x247cb60f; BYTE $0x08               // movzx    edi, byte [rsp + 8]
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e7c041                           // shl    r15b, 6
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0845; BYTE $0xf9                   // or    r9b, r15b
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	QUAD $0x000000a024b40244                   // add    r14b, byte [rsp + 160]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xf3                   // or    r11b, r14b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	WORD $0x8840; BYTE $0x38                   // mov    byte [rax], dil
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0844; BYTE $0xc6                   // or    sil, r8b
	WORD $0x0844; BYTE $0xe6                   // or    sil, r12b
	LONG $0x02488844                           // mov    byte [rax + 2], r9b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24048948                           // mov    qword [rsp], rax
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB2_27
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x000000f024b48b4c                   // mov    r14, qword [rsp + 240]

LBB2_29:
	LONG $0x05e6c149         // shl    r14, 5
	WORD $0x394d; BYTE $0xd6 // cmp    r14, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf0 // sub    r8, r14
	WORD $0xf749; BYTE $0xd6 // not    r14
	WORD $0x014d; BYTE $0xd6 // add    r14, r10
	JNE  LBB2_162
	WORD $0xff31             // xor    edi, edi
	JMP  LBB2_164

LBB2_32:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB2_60
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB2_177
	WORD $0x8a44; BYTE $0x36 // mov    r14b, byte [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_38
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_36:
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_36
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_38:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB2_130
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x24748844; BYTE $0x08 // mov    byte [rsp + 8], r14b
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x000000e824bc894c     // mov    qword [rsp + 232], r15
	JB   LBB2_42
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xd0     // add    rax, rdx
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB2_182
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0xb8048d4a             // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xc2     // cmp    rdx, rax
	JAE  LBB2_182

LBB2_42:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e024848948     // mov    qword [rsp + 224], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax

LBB2_43:
	QUAD $0x000000e024bc2b4c // sub    r15, qword [rsp + 224]
	QUAD $0x0000008824bc894c // mov    qword [rsp + 136], r15

LBB2_44:
	WORD $0x8948; BYTE $0xf1             // mov    rcx, rsi
	WORD $0x3a44; BYTE $0x36             // cmp    r14b, byte [rsi]
	QUAD $0x000000c02494940f             // sete    byte [rsp + 192]
	LONG $0x01763a44                     // cmp    r14b, byte [rsi + 1]
	LONG $0xd7940f40                     // sete    dil
	LONG $0x02763a44                     // cmp    r14b, byte [rsi + 2]
	LONG $0xd3940f41                     // sete    r11b
	LONG $0x03763a44                     // cmp    r14b, byte [rsi + 3]
	LONG $0xd7940f41                     // sete    r15b
	LONG $0x04763a44                     // cmp    r14b, byte [rsi + 4]
	QUAD $0x000000a02494940f             // sete    byte [rsp + 160]
	LONG $0x05763a44                     // cmp    r14b, byte [rsi + 5]
	LONG $0x2454940f; BYTE $0x40         // sete    byte [rsp + 64]
	LONG $0x06763a44                     // cmp    r14b, byte [rsi + 6]
	WORD $0x940f; BYTE $0xd3             // sete    bl
	LONG $0x07763a44                     // cmp    r14b, byte [rsi + 7]
	LONG $0xd5940f41                     // sete    r13b
	LONG $0x08763a44                     // cmp    r14b, byte [rsi + 8]
	QUAD $0x000000d02494940f             // sete    byte [rsp + 208]
	LONG $0x09763a44                     // cmp    r14b, byte [rsi + 9]
	LONG $0xd6940f40                     // sete    sil
	LONG $0x0a713a44                     // cmp    r14b, byte [rcx + 10]
	LONG $0xd0940f41                     // sete    r8b
	LONG $0x0b713a44                     // cmp    r14b, byte [rcx + 11]
	LONG $0xd1940f41                     // sete    r9b
	LONG $0x0c713a44                     // cmp    r14b, byte [rcx + 12]
	LONG $0xd6940f41                     // sete    r14b
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0d             // cmp    al, byte [rcx + 13]
	LONG $0xd4940f41                     // sete    r12b
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0e             // cmp    al, byte [rcx + 14]
	QUAD $0x000000b02494940f             // sete    byte [rsp + 176]
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0f             // cmp    al, byte [rcx + 15]
	WORD $0x940f; BYTE $0xd0             // sete    al
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x10             // cmp    dl, byte [rcx + 16]
	LONG $0x2454940f; BYTE $0x78         // sete    byte [rsp + 120]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x11             // cmp    dl, byte [rcx + 17]
	QUAD $0x000000802494940f             // sete    byte [rsp + 128]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x12             // cmp    dl, byte [rcx + 18]
	LONG $0x2454940f; BYTE $0x70         // sete    byte [rsp + 112]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x13             // cmp    dl, byte [rcx + 19]
	LONG $0x2454940f; BYTE $0x60         // sete    byte [rsp + 96]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x14             // cmp    dl, byte [rcx + 20]
	LONG $0x2454940f; BYTE $0x48         // sete    byte [rsp + 72]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x15             // cmp    dl, byte [rcx + 21]
	LONG $0x2454940f; BYTE $0x58         // sete    byte [rsp + 88]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x16             // cmp    dl, byte [rcx + 22]
	LONG $0x2454940f; BYTE $0x50         // sete    byte [rsp + 80]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x17             // cmp    dl, byte [rcx + 23]
	LONG $0xd2940f41                     // sete    r10b
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x18             // cmp    dl, byte [rcx + 24]
	LONG $0x2454940f; BYTE $0x20         // sete    byte [rsp + 32]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x19             // cmp    dl, byte [rcx + 25]
	LONG $0x2454940f; BYTE $0x38         // sete    byte [rsp + 56]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1a             // cmp    dl, byte [rcx + 26]
	LONG $0x2454940f; BYTE $0x28         // sete    byte [rsp + 40]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1b             // cmp    dl, byte [rcx + 27]
	LONG $0x2454940f; BYTE $0x18         // sete    byte [rsp + 24]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1c             // cmp    dl, byte [rcx + 28]
	LONG $0x2454940f; BYTE $0x30         // sete    byte [rsp + 48]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1d             // cmp    dl, byte [rcx + 29]
	LONG $0x2454940f; BYTE $0x10         // sete    byte [rsp + 16]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1e             // cmp    dl, byte [rcx + 30]
	LONG $0x2414940f                     // sete    byte [rsp]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1f             // cmp    dl, byte [rcx + 31]
	WORD $0x940f; BYTE $0xd2             // sete    dl
	WORD $0x0040; BYTE $0xff             // add    dil, dil
	QUAD $0x000000c024bc0240             // add    dil, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	LONG $0x07e5c041                     // shl    r13b, 7
	WORD $0x0841; BYTE $0xdd             // or    r13b, bl
	LONG $0x02e3c041                     // shl    r11b, 2
	WORD $0x0841; BYTE $0xfb             // or    r11b, dil
	WORD $0x0040; BYTE $0xf6             // add    sil, sil
	QUAD $0x000000d024b40240             // add    sil, byte [rsp + 208]
	LONG $0x03e7c041                     // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf             // or    r15b, r11b
	LONG $0x02e0c041                     // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0             // or    r8b, sil
	QUAD $0x000000a0249cb60f             // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0844; BYTE $0xfb             // or    bl, r15b
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x03e1c041                     // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1             // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x40         // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x05             // shl    bl, 5
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	LONG $0x04e6c041                     // shl    r14b, 4
	WORD $0x0845; BYTE $0xce             // or    r14b, r9b
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0845; BYTE $0xf4             // or    r12b, r14b
	LONG $0x74b60f44; WORD $0x0824       // movzx    r14d, byte [rsp + 8]
	QUAD $0x000000b024b4b60f             // movzx    esi, byte [rsp + 176]
	LONG $0x06e6c040                     // shl    sil, 6
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0x0841; BYTE $0xdd             // or    r13b, bl
	WORD $0x0844; BYTE $0xe0             // or    al, r12b
	QUAD $0x00000080249cb60f             // movzx    ebx, byte [rsp + 128]
	WORD $0xdb00                         // add    bl, bl
	LONG $0x78245c02                     // add    bl, byte [rsp + 120]
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x70         // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x02             // shl    bl, 2
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x60         // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03             // shl    bl, 3
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x48         // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x58         // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05             // shl    bl, 5
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	LONG $0x247c8b48; BYTE $0x68         // mov    rdi, qword [rsp + 104]
	WORD $0x8844; BYTE $0x2f             // mov    byte [rdi], r13b
	LONG $0x2474b60f; BYTE $0x50         // movzx    esi, byte [rsp + 80]
	LONG $0x06e6c040                     // shl    sil, 6
	LONG $0x07e2c041                     // shl    r10b, 7
	WORD $0x0841; BYTE $0xf2             // or    r10b, sil
	WORD $0x4788; BYTE $0x01             // mov    byte [rdi + 1], al
	WORD $0x0841; BYTE $0xda             // or    r10b, bl
	LONG $0x2444b60f; BYTE $0x38         // movzx    eax, byte [rsp + 56]
	WORD $0xc000                         // add    al, al
	LONG $0x20244402                     // add    al, byte [rsp + 32]
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28         // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18         // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30         // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10         // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xd808                         // or    al, bl
	LONG $0x241cb60f                     // movzx    ebx, byte [rsp]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07             // shl    dl, 7
	WORD $0xda08                         // or    dl, bl
	WORD $0xc208                         // or    dl, al
	LONG $0x02578844                     // mov    byte [rdi + 2], r10b
	WORD $0x5788; BYTE $0x03             // mov    byte [rdi + 3], dl
	LONG $0x20718d48                     // lea    rsi, [rcx + 32]
	LONG $0x04c78348                     // add    rdi, 4
	LONG $0x247c8948; BYTE $0x68         // mov    qword [rsp + 104], rdi
	QUAD $0x0000008824848348; BYTE $0xff // add    qword [rsp + 136], -1
	JNE  LBB2_44
	QUAD $0x0000009024948b4c             // mov    r10, qword [rsp + 144]
	QUAD $0x000000e824bc8b4c             // mov    r15, qword [rsp + 232]
	JMP  LBB2_131

LBB2_46:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB2_72
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB2_177
	WORD $0x8b4c; BYTE $0x2e // mov    r13, qword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_52
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB2_50:
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x31               // movzx    r8d, byte [r9 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x313c8841                           // mov    byte [r9 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB2_50
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB2_52:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_56
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11

LBB2_54:
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x086a3b4c                           // cmp    r13, qword [rdx + 8]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x106a3b4c                           // cmp    r13, qword [rdx + 16]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x186a3b4c                           // cmp    r13, qword [rdx + 24]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x206a3b4c                           // cmp    r13, qword [rdx + 32]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x286a3b4c                           // cmp    r13, qword [rdx + 40]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x306a3b4c                           // cmp    r13, qword [rdx + 48]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x386a3b4c                           // cmp    r13, qword [rdx + 56]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x406a3b4c                           // cmp    r13, qword [rdx + 64]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x486a3b4c                           // cmp    r13, qword [rdx + 72]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x506a3b4c                           // cmp    r13, qword [rdx + 80]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x586a3b4c                           // cmp    r13, qword [rdx + 88]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x606a3b4c                           // cmp    r13, qword [rdx + 96]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x686a3b4c                           // cmp    r13, qword [rdx + 104]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x706a3b4c                           // cmp    r13, qword [rdx + 112]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x786a3b4c                           // cmp    r13, qword [rdx + 120]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x80aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 128]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x88aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 136]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x90aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 144]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x98aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 152]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0xa0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 160]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0xa8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 168]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0xb0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 176]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0xb8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 184]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0xc0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 192]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0xc8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 200]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0xd0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 208]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0xd8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 216]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0xe0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 224]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0xe8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 232]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xf0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 240]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0xf8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 248]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000c024940244                   // add    r10b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000d024b40240                   // add    sil, byte [rsp + 208]
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	WORD $0x8941; BYTE $0xda                   // mov    r10d, ebx
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x70               // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xd3                   // or    bl, r10b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x0000b02484b60f44; BYTE $0x00       // movzx    r8d, byte [rsp + 176]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x48245c02                           // add    bl, byte [rsp + 72]
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8840; BYTE $0x3e                   // mov    byte [rsi], dil
	LONG $0x247cb60f; BYTE $0x40               // movzx    edi, byte [rsp + 64]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0x4688; BYTE $0x01                   // mov    byte [rsi + 1], al
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8844                           // mov    byte [rsi + 2], r15b
	WORD $0x4e88; BYTE $0x03                   // mov    byte [rsi + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_54
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB2_56:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JE   LBB2_117
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_59:
	WORD $0x3b4c; BYTE $0x2a     // cmp    r13, qword [rdx]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x331c8841             // mov    byte [r11 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x086a3b4c             // cmp    r13, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0xd1940f41             // sete    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x33048841             // mov    byte [r11 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB2_59
	JMP  LBB2_168

LBB2_60:
	WORD $0x8a44; BYTE $0x36 // mov    r14b, byte [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_64
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_62:
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_62
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_64:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB2_134
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x24748844; BYTE $0x08 // mov    byte [rsp + 8], r14b
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x000000e824bc894c     // mov    qword [rsp + 232], r15
	JB   LBB2_68
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xd0     // add    rax, rdx
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB2_185
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0xb8048d4a             // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xc2     // cmp    rdx, rax
	JAE  LBB2_185

LBB2_68:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e024848948     // mov    qword [rsp + 224], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax

LBB2_69:
	QUAD $0x000000e024bc2b4c // sub    r15, qword [rsp + 224]
	QUAD $0x0000008824bc894c // mov    qword [rsp + 136], r15

LBB2_70:
	WORD $0x8948; BYTE $0xf1             // mov    rcx, rsi
	WORD $0x3a44; BYTE $0x36             // cmp    r14b, byte [rsi]
	QUAD $0x000000c02494940f             // sete    byte [rsp + 192]
	LONG $0x01763a44                     // cmp    r14b, byte [rsi + 1]
	LONG $0xd7940f40                     // sete    dil
	LONG $0x02763a44                     // cmp    r14b, byte [rsi + 2]
	LONG $0xd3940f41                     // sete    r11b
	LONG $0x03763a44                     // cmp    r14b, byte [rsi + 3]
	LONG $0xd7940f41                     // sete    r15b
	LONG $0x04763a44                     // cmp    r14b, byte [rsi + 4]
	QUAD $0x000000a02494940f             // sete    byte [rsp + 160]
	LONG $0x05763a44                     // cmp    r14b, byte [rsi + 5]
	LONG $0x2454940f; BYTE $0x40         // sete    byte [rsp + 64]
	LONG $0x06763a44                     // cmp    r14b, byte [rsi + 6]
	WORD $0x940f; BYTE $0xd3             // sete    bl
	LONG $0x07763a44                     // cmp    r14b, byte [rsi + 7]
	LONG $0xd5940f41                     // sete    r13b
	LONG $0x08763a44                     // cmp    r14b, byte [rsi + 8]
	QUAD $0x000000d02494940f             // sete    byte [rsp + 208]
	LONG $0x09763a44                     // cmp    r14b, byte [rsi + 9]
	LONG $0xd6940f40                     // sete    sil
	LONG $0x0a713a44                     // cmp    r14b, byte [rcx + 10]
	LONG $0xd0940f41                     // sete    r8b
	LONG $0x0b713a44                     // cmp    r14b, byte [rcx + 11]
	LONG $0xd1940f41                     // sete    r9b
	LONG $0x0c713a44                     // cmp    r14b, byte [rcx + 12]
	LONG $0xd6940f41                     // sete    r14b
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0d             // cmp    al, byte [rcx + 13]
	LONG $0xd4940f41                     // sete    r12b
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0e             // cmp    al, byte [rcx + 14]
	QUAD $0x000000b02494940f             // sete    byte [rsp + 176]
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0x413a; BYTE $0x0f             // cmp    al, byte [rcx + 15]
	WORD $0x940f; BYTE $0xd0             // sete    al
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x10             // cmp    dl, byte [rcx + 16]
	LONG $0x2454940f; BYTE $0x78         // sete    byte [rsp + 120]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x11             // cmp    dl, byte [rcx + 17]
	QUAD $0x000000802494940f             // sete    byte [rsp + 128]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x12             // cmp    dl, byte [rcx + 18]
	LONG $0x2454940f; BYTE $0x70         // sete    byte [rsp + 112]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x13             // cmp    dl, byte [rcx + 19]
	LONG $0x2454940f; BYTE $0x60         // sete    byte [rsp + 96]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x14             // cmp    dl, byte [rcx + 20]
	LONG $0x2454940f; BYTE $0x48         // sete    byte [rsp + 72]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x15             // cmp    dl, byte [rcx + 21]
	LONG $0x2454940f; BYTE $0x58         // sete    byte [rsp + 88]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x16             // cmp    dl, byte [rcx + 22]
	LONG $0x2454940f; BYTE $0x50         // sete    byte [rsp + 80]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x17             // cmp    dl, byte [rcx + 23]
	LONG $0xd2940f41                     // sete    r10b
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x18             // cmp    dl, byte [rcx + 24]
	LONG $0x2454940f; BYTE $0x20         // sete    byte [rsp + 32]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x19             // cmp    dl, byte [rcx + 25]
	LONG $0x2454940f; BYTE $0x38         // sete    byte [rsp + 56]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1a             // cmp    dl, byte [rcx + 26]
	LONG $0x2454940f; BYTE $0x28         // sete    byte [rsp + 40]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1b             // cmp    dl, byte [rcx + 27]
	LONG $0x2454940f; BYTE $0x18         // sete    byte [rsp + 24]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1c             // cmp    dl, byte [rcx + 28]
	LONG $0x2454940f; BYTE $0x30         // sete    byte [rsp + 48]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1d             // cmp    dl, byte [rcx + 29]
	LONG $0x2454940f; BYTE $0x10         // sete    byte [rsp + 16]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1e             // cmp    dl, byte [rcx + 30]
	LONG $0x2414940f                     // sete    byte [rsp]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x513a; BYTE $0x1f             // cmp    dl, byte [rcx + 31]
	WORD $0x940f; BYTE $0xd2             // sete    dl
	WORD $0x0040; BYTE $0xff             // add    dil, dil
	QUAD $0x000000c024bc0240             // add    dil, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	LONG $0x07e5c041                     // shl    r13b, 7
	WORD $0x0841; BYTE $0xdd             // or    r13b, bl
	LONG $0x02e3c041                     // shl    r11b, 2
	WORD $0x0841; BYTE $0xfb             // or    r11b, dil
	WORD $0x0040; BYTE $0xf6             // add    sil, sil
	QUAD $0x000000d024b40240             // add    sil, byte [rsp + 208]
	LONG $0x03e7c041                     // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf             // or    r15b, r11b
	LONG $0x02e0c041                     // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0             // or    r8b, sil
	QUAD $0x000000a0249cb60f             // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0844; BYTE $0xfb             // or    bl, r15b
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x03e1c041                     // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1             // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x40         // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x05             // shl    bl, 5
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	LONG $0x04e6c041                     // shl    r14b, 4
	WORD $0x0845; BYTE $0xce             // or    r14b, r9b
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0845; BYTE $0xf4             // or    r12b, r14b
	LONG $0x74b60f44; WORD $0x0824       // movzx    r14d, byte [rsp + 8]
	QUAD $0x000000b024b4b60f             // movzx    esi, byte [rsp + 176]
	LONG $0x06e6c040                     // shl    sil, 6
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0x0841; BYTE $0xdd             // or    r13b, bl
	WORD $0x0844; BYTE $0xe0             // or    al, r12b
	QUAD $0x00000080249cb60f             // movzx    ebx, byte [rsp + 128]
	WORD $0xdb00                         // add    bl, bl
	LONG $0x78245c02                     // add    bl, byte [rsp + 120]
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x70         // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x02             // shl    bl, 2
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x60         // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03             // shl    bl, 3
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x48         // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0xde89                         // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x58         // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05             // shl    bl, 5
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	LONG $0x247c8b48; BYTE $0x68         // mov    rdi, qword [rsp + 104]
	WORD $0x8844; BYTE $0x2f             // mov    byte [rdi], r13b
	LONG $0x2474b60f; BYTE $0x50         // movzx    esi, byte [rsp + 80]
	LONG $0x06e6c040                     // shl    sil, 6
	LONG $0x07e2c041                     // shl    r10b, 7
	WORD $0x0841; BYTE $0xf2             // or    r10b, sil
	WORD $0x4788; BYTE $0x01             // mov    byte [rdi + 1], al
	WORD $0x0841; BYTE $0xda             // or    r10b, bl
	LONG $0x2444b60f; BYTE $0x38         // movzx    eax, byte [rsp + 56]
	WORD $0xc000                         // add    al, al
	LONG $0x20244402                     // add    al, byte [rsp + 32]
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28         // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18         // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30         // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xd808                         // or    al, bl
	WORD $0xc389                         // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10         // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xd808                         // or    al, bl
	LONG $0x241cb60f                     // movzx    ebx, byte [rsp]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07             // shl    dl, 7
	WORD $0xda08                         // or    dl, bl
	WORD $0xc208                         // or    dl, al
	LONG $0x02578844                     // mov    byte [rdi + 2], r10b
	WORD $0x5788; BYTE $0x03             // mov    byte [rdi + 3], dl
	LONG $0x20718d48                     // lea    rsi, [rcx + 32]
	LONG $0x04c78348                     // add    rdi, 4
	LONG $0x247c8948; BYTE $0x68         // mov    qword [rsp + 104], rdi
	QUAD $0x0000008824848348; BYTE $0xff // add    qword [rsp + 136], -1
	JNE  LBB2_70
	QUAD $0x0000009024948b4c             // mov    r10, qword [rsp + 144]
	QUAD $0x000000e824bc8b4c             // mov    r15, qword [rsp + 232]
	JMP  LBB2_135

LBB2_72:
	WORD $0x8b44; BYTE $0x2e // mov    r13d, dword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_76
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB2_74:
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x31               // movzx    r8d, byte [r9 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x313c8841                           // mov    byte [r9 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB2_74
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB2_76:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_80
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11

LBB2_78:
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x046a3b44                           // cmp    r13d, dword [rdx + 4]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x086a3b44                           // cmp    r13d, dword [rdx + 8]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x0c6a3b44                           // cmp    r13d, dword [rdx + 12]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x106a3b44                           // cmp    r13d, dword [rdx + 16]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x146a3b44                           // cmp    r13d, dword [rdx + 20]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x186a3b44                           // cmp    r13d, dword [rdx + 24]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x1c6a3b44                           // cmp    r13d, dword [rdx + 28]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x206a3b44                           // cmp    r13d, dword [rdx + 32]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x246a3b44                           // cmp    r13d, dword [rdx + 36]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x286a3b44                           // cmp    r13d, dword [rdx + 40]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x2c6a3b44                           // cmp    r13d, dword [rdx + 44]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x306a3b44                           // cmp    r13d, dword [rdx + 48]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x346a3b44                           // cmp    r13d, dword [rdx + 52]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x386a3b44                           // cmp    r13d, dword [rdx + 56]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x3c6a3b44                           // cmp    r13d, dword [rdx + 60]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x406a3b44                           // cmp    r13d, dword [rdx + 64]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x446a3b44                           // cmp    r13d, dword [rdx + 68]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x486a3b44                           // cmp    r13d, dword [rdx + 72]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x4c6a3b44                           // cmp    r13d, dword [rdx + 76]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x506a3b44                           // cmp    r13d, dword [rdx + 80]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x546a3b44                           // cmp    r13d, dword [rdx + 84]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x586a3b44                           // cmp    r13d, dword [rdx + 88]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x5c6a3b44                           // cmp    r13d, dword [rdx + 92]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x606a3b44                           // cmp    r13d, dword [rdx + 96]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x646a3b44                           // cmp    r13d, dword [rdx + 100]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x686a3b44                           // cmp    r13d, dword [rdx + 104]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x6c6a3b44                           // cmp    r13d, dword [rdx + 108]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x706a3b44                           // cmp    r13d, dword [rdx + 112]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x746a3b44                           // cmp    r13d, dword [rdx + 116]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0x786a3b44                           // cmp    r13d, dword [rdx + 120]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0x7c6a3b44                           // cmp    r13d, dword [rdx + 124]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000c024940244                   // add    r10b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000d024b40240                   // add    sil, byte [rsp + 208]
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	WORD $0x8941; BYTE $0xda                   // mov    r10d, ebx
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x70               // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xd3                   // or    bl, r10b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x0000b02484b60f44; BYTE $0x00       // movzx    r8d, byte [rsp + 176]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x48245c02                           // add    bl, byte [rsp + 72]
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8840; BYTE $0x3e                   // mov    byte [rsi], dil
	LONG $0x247cb60f; BYTE $0x40               // movzx    edi, byte [rsp + 64]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0x4688; BYTE $0x01                   // mov    byte [rsi + 1], al
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8844                           // mov    byte [rsi + 2], r15b
	WORD $0x4e88; BYTE $0x03                   // mov    byte [rsi + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_78
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB2_80:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB2_151

LBB2_82:
	WORD $0xff31  // xor    edi, edi
	JMP  LBB2_153

LBB2_83:
	LONG $0x36b70f44         // movzx    r14d, word [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_87
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_85:
	LONG $0x323b4466             // cmp    r14w, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_85
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_87:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB2_138
	LONG $0x08ff8349             // cmp    r15, 8
	LONG $0x24748944; BYTE $0x08 // mov    dword [rsp + 8], r14d
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x0000009824bc894c     // mov    qword [rsp + 152], r15
	JB   LBB2_91
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x0148; BYTE $0xd0     // add    rax, rdx
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB2_188
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0xb8048d4a             // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xd0     // cmp    rax, rdx
	JBE  LBB2_188

LBB2_91:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x10 // mov    qword [rsp + 16], rax

LBB2_92:
	LONG $0x247c2b4c; BYTE $0x20 // sub    r15, qword [rsp + 32]
	QUAD $0x0000008824bc894c     // mov    qword [rsp + 136], r15

LBB2_93:
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	LONG $0x363b4466                           // cmp    r14w, word [rsi]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x763b4466; BYTE $0x02               // cmp    r14w, word [rsi + 2]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x763b4466; BYTE $0x04               // cmp    r14w, word [rsi + 4]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x763b4466; BYTE $0x06               // cmp    r14w, word [rsi + 6]
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x763b4466; BYTE $0x08               // cmp    r14w, word [rsi + 8]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x763b4466; BYTE $0x0a               // cmp    r14w, word [rsi + 10]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x763b4466; BYTE $0x0c               // cmp    r14w, word [rsi + 12]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x763b4466; BYTE $0x0e               // cmp    r14w, word [rsi + 14]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x763b4466; BYTE $0x10               // cmp    r14w, word [rsi + 16]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x763b4466; BYTE $0x12               // cmp    r14w, word [rsi + 18]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x763b4466; BYTE $0x14               // cmp    r14w, word [rsi + 20]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	LONG $0x763b4466; BYTE $0x16               // cmp    r14w, word [rsi + 22]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x723b4566; BYTE $0x18               // cmp    r14w, word [r10 + 24]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x723b4566; BYTE $0x1a               // cmp    r14w, word [r10 + 26]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x723b4566; BYTE $0x1c               // cmp    r14w, word [r10 + 28]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x723b4566; BYTE $0x1e               // cmp    r14w, word [r10 + 30]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x723b4566; BYTE $0x20               // cmp    r14w, word [r10 + 32]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x723b4566; BYTE $0x22               // cmp    r14w, word [r10 + 34]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x723b4566; BYTE $0x24               // cmp    r14w, word [r10 + 36]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x723b4566; BYTE $0x26               // cmp    r14w, word [r10 + 38]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x723b4566; BYTE $0x28               // cmp    r14w, word [r10 + 40]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x723b4566; BYTE $0x2a               // cmp    r14w, word [r10 + 42]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x723b4566; BYTE $0x2c               // cmp    r14w, word [r10 + 44]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x723b4566; BYTE $0x2e               // cmp    r14w, word [r10 + 46]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x30               // cmp    bx, word [r10 + 48]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x32               // cmp    bx, word [r10 + 50]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x34               // cmp    bx, word [r10 + 52]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x36               // cmp    bx, word [r10 + 54]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x38               // cmp    bx, word [r10 + 56]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3a               // cmp    bx, word [r10 + 58]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3c               // cmp    bx, word [r10 + 60]
	LONG $0x2414940f                           // sete    byte [rsp]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3e               // cmp    bx, word [r10 + 62]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0xc900                               // add    cl, cl
	LONG $0xd0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 208]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xca08                               // or    dl, cl
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0xcf89                               // mov    edi, ecx
	LONG $0x03e6c040                           // shl    sil, 3
	WORD $0x0840; BYTE $0xd6                   // or    sil, dl
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x04e1c041                           // shl    r9b, 4
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xcc                   // or    r12b, r9b
	QUAD $0x000000b02494b60f                   // movzx    edx, byte [rsp + 176]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	WORD $0x0845; BYTE $0xe0                   // or    r8b, r12b
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	WORD $0x8844; BYTE $0x19                   // mov    byte [rcx], r11b
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	LONG $0x01418844                           // mov    byte [rcx + 1], r8b
	WORD $0x0841; BYTE $0xf6                   // or    r14b, sil
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd008                               // or    al, dl
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xd308                               // or    bl, dl
	WORD $0xc308                               // or    bl, al
	LONG $0x02718844                           // mov    byte [rcx + 2], r14b
	LONG $0x24748b44; BYTE $0x08               // mov    r14d, dword [rsp + 8]
	WORD $0x5988; BYTE $0x03                   // mov    byte [rcx + 3], bl
	LONG $0x40728d49                           // lea    rsi, [r10 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x10               // mov    qword [rsp + 16], rcx
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_93
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x0000009824bc8b4c                   // mov    r15, qword [rsp + 152]
	JMP  LBB2_139

LBB2_95:
	LONG $0x36b70f44         // movzx    r14d, word [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_99
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_97:
	LONG $0x323b4466             // cmp    r14w, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_97
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_99:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB2_143
	LONG $0x08ff8349             // cmp    r15, 8
	LONG $0x24748944; BYTE $0x08 // mov    dword [rsp + 8], r14d
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x0000009824bc894c     // mov    qword [rsp + 152], r15
	JB   LBB2_103
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x0148; BYTE $0xd0     // add    rax, rdx
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB2_191
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0xb8048d4a             // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xd0     // cmp    rax, rdx
	JBE  LBB2_191

LBB2_103:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x10 // mov    qword [rsp + 16], rax

LBB2_104:
	LONG $0x247c2b4c; BYTE $0x20 // sub    r15, qword [rsp + 32]
	QUAD $0x0000008824bc894c     // mov    qword [rsp + 136], r15

LBB2_105:
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	LONG $0x363b4466                           // cmp    r14w, word [rsi]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x763b4466; BYTE $0x02               // cmp    r14w, word [rsi + 2]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x763b4466; BYTE $0x04               // cmp    r14w, word [rsi + 4]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0x763b4466; BYTE $0x06               // cmp    r14w, word [rsi + 6]
	LONG $0xd5940f41                           // sete    r13b
	LONG $0x763b4466; BYTE $0x08               // cmp    r14w, word [rsi + 8]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x763b4466; BYTE $0x0a               // cmp    r14w, word [rsi + 10]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0x763b4466; BYTE $0x0c               // cmp    r14w, word [rsi + 12]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x763b4466; BYTE $0x0e               // cmp    r14w, word [rsi + 14]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x763b4466; BYTE $0x10               // cmp    r14w, word [rsi + 16]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x763b4466; BYTE $0x12               // cmp    r14w, word [rsi + 18]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	LONG $0x763b4466; BYTE $0x14               // cmp    r14w, word [rsi + 20]
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	LONG $0x763b4466; BYTE $0x16               // cmp    r14w, word [rsi + 22]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x723b4566; BYTE $0x18               // cmp    r14w, word [r10 + 24]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x723b4566; BYTE $0x1a               // cmp    r14w, word [r10 + 26]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x723b4566; BYTE $0x1c               // cmp    r14w, word [r10 + 28]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x723b4566; BYTE $0x1e               // cmp    r14w, word [r10 + 30]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x723b4566; BYTE $0x20               // cmp    r14w, word [r10 + 32]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0x723b4566; BYTE $0x22               // cmp    r14w, word [r10 + 34]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x723b4566; BYTE $0x24               // cmp    r14w, word [r10 + 36]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x723b4566; BYTE $0x26               // cmp    r14w, word [r10 + 38]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x723b4566; BYTE $0x28               // cmp    r14w, word [r10 + 40]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x723b4566; BYTE $0x2a               // cmp    r14w, word [r10 + 42]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x723b4566; BYTE $0x2c               // cmp    r14w, word [r10 + 44]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0x723b4566; BYTE $0x2e               // cmp    r14w, word [r10 + 46]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x30               // cmp    bx, word [r10 + 48]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x32               // cmp    bx, word [r10 + 50]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x34               // cmp    bx, word [r10 + 52]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x36               // cmp    bx, word [r10 + 54]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x38               // cmp    bx, word [r10 + 56]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3a               // cmp    bx, word [r10 + 58]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3c               // cmp    bx, word [r10 + 60]
	LONG $0x2414940f                           // sete    byte [rsp]
	LONG $0x08245c8b                           // mov    ebx, dword [rsp + 8]
	LONG $0x5a3b4166; BYTE $0x3e               // cmp    bx, word [r10 + 62]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0xc900                               // add    cl, cl
	LONG $0xd0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 208]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xca08                               // or    dl, cl
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0xcf89                               // mov    edi, ecx
	LONG $0x03e6c040                           // shl    sil, 3
	WORD $0x0840; BYTE $0xd6                   // or    sil, dl
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x04e1c041                           // shl    r9b, 4
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xcc                   // or    r12b, r9b
	QUAD $0x000000b02494b60f                   // movzx    edx, byte [rsp + 176]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	WORD $0x0845; BYTE $0xe0                   // or    r8b, r12b
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	WORD $0x8844; BYTE $0x19                   // mov    byte [rcx], r11b
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	LONG $0x01418844                           // mov    byte [rcx + 1], r8b
	WORD $0x0841; BYTE $0xf6                   // or    r14b, sil
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd008                               // or    al, dl
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xd308                               // or    bl, dl
	WORD $0xc308                               // or    bl, al
	LONG $0x02718844                           // mov    byte [rcx + 2], r14b
	LONG $0x24748b44; BYTE $0x08               // mov    r14d, dword [rsp + 8]
	WORD $0x5988; BYTE $0x03                   // mov    byte [rcx + 3], bl
	LONG $0x40728d49                           // lea    rsi, [r10 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x10               // mov    qword [rsp + 16], rcx
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_105
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x0000009824bc8b4c                   // mov    r15, qword [rsp + 152]
	JMP  LBB2_144

LBB2_107:
	WORD $0x8b4c; BYTE $0x2e // mov    r13, qword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_111
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB2_109:
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x31               // movzx    r8d, byte [r9 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x313c8841                           // mov    byte [r9 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB2_109
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB2_111:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_115
	QUAD $0x000000902494894c // mov    qword [rsp + 144], r10
	QUAD $0x00000098249c894c // mov    qword [rsp + 152], r11
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11

LBB2_113:
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	QUAD $0x000000c02494940f                   // sete    byte [rsp + 192]
	LONG $0x086a3b4c                           // cmp    r13, qword [rdx + 8]
	LONG $0xd2940f41                           // sete    r10b
	LONG $0x106a3b4c                           // cmp    r13, qword [rdx + 16]
	LONG $0xd6940f41                           // sete    r14b
	LONG $0x186a3b4c                           // cmp    r13, qword [rdx + 24]
	QUAD $0x000000a02494940f                   // sete    byte [rsp + 160]
	LONG $0x206a3b4c                           // cmp    r13, qword [rdx + 32]
	LONG $0x2454940f; BYTE $0x70               // sete    byte [rsp + 112]
	LONG $0x286a3b4c                           // cmp    r13, qword [rdx + 40]
	LONG $0x2454940f; BYTE $0x58               // sete    byte [rsp + 88]
	LONG $0x306a3b4c                           // cmp    r13, qword [rdx + 48]
	WORD $0x940f; BYTE $0xd3                   // sete    bl
	LONG $0x386a3b4c                           // cmp    r13, qword [rdx + 56]
	LONG $0xd7940f40                           // sete    dil
	LONG $0x406a3b4c                           // cmp    r13, qword [rdx + 64]
	QUAD $0x000000d02494940f                   // sete    byte [rsp + 208]
	LONG $0x486a3b4c                           // cmp    r13, qword [rdx + 72]
	LONG $0xd6940f40                           // sete    sil
	LONG $0x506a3b4c                           // cmp    r13, qword [rdx + 80]
	LONG $0xd0940f41                           // sete    r8b
	LONG $0x586a3b4c                           // cmp    r13, qword [rdx + 88]
	LONG $0xd1940f41                           // sete    r9b
	LONG $0x606a3b4c                           // cmp    r13, qword [rdx + 96]
	LONG $0xd3940f41                           // sete    r11b
	LONG $0x686a3b4c                           // cmp    r13, qword [rdx + 104]
	LONG $0xd4940f41                           // sete    r12b
	LONG $0x706a3b4c                           // cmp    r13, qword [rdx + 112]
	QUAD $0x000000b02494940f                   // sete    byte [rsp + 176]
	LONG $0x786a3b4c                           // cmp    r13, qword [rdx + 120]
	WORD $0x940f; BYTE $0xd0                   // sete    al
	LONG $0x80aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 128]
	LONG $0x2454940f; BYTE $0x48               // sete    byte [rsp + 72]
	LONG $0x88aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 136]
	LONG $0x2454940f; BYTE $0x78               // sete    byte [rsp + 120]
	LONG $0x90aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 144]
	QUAD $0x000000802494940f                   // sete    byte [rsp + 128]
	LONG $0x98aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 152]
	LONG $0x2454940f; BYTE $0x60               // sete    byte [rsp + 96]
	LONG $0xa0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 160]
	LONG $0x2454940f; BYTE $0x50               // sete    byte [rsp + 80]
	LONG $0xa8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 168]
	LONG $0x2454940f; BYTE $0x68               // sete    byte [rsp + 104]
	LONG $0xb0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 176]
	LONG $0x2454940f; BYTE $0x40               // sete    byte [rsp + 64]
	LONG $0xb8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 184]
	LONG $0xd7940f41                           // sete    r15b
	LONG $0xc0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 192]
	LONG $0x2454940f; BYTE $0x18               // sete    byte [rsp + 24]
	LONG $0xc8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 200]
	LONG $0x2454940f; BYTE $0x20               // sete    byte [rsp + 32]
	LONG $0xd0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 208]
	LONG $0x2454940f; BYTE $0x38               // sete    byte [rsp + 56]
	LONG $0xd8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 216]
	LONG $0x2454940f; BYTE $0x28               // sete    byte [rsp + 40]
	LONG $0xe0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 224]
	LONG $0x2454940f; BYTE $0x30               // sete    byte [rsp + 48]
	LONG $0xe8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 232]
	LONG $0x2454940f; BYTE $0x10               // sete    byte [rsp + 16]
	LONG $0xf0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 240]
	LONG $0x2454940f; BYTE $0x08               // sete    byte [rsp + 8]
	LONG $0xf8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 248]
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000c024940244                   // add    r10b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000d024b40240                   // add    sil, byte [rsp + 208]
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	WORD $0x8941; BYTE $0xda                   // mov    r10d, ebx
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x70               // movzx    ebx, byte [rsp + 112]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xd3                   // or    bl, r10b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x0000b02484b60f44; BYTE $0x00       // movzx    r8d, byte [rsp + 176]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x48245c02                           // add    bl, byte [rsp + 72]
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x8840; BYTE $0x3e                   // mov    byte [rsi], dil
	LONG $0x247cb60f; BYTE $0x40               // movzx    edi, byte [rsp + 64]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	WORD $0x4688; BYTE $0x01                   // mov    byte [rsi + 1], al
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8844                           // mov    byte [rsi + 2], r15b
	WORD $0x4e88; BYTE $0x03                   // mov    byte [rsi + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x0000008824848348; BYTE $0xff       // add    qword [rsp + 136], -1
	JNE  LBB2_113
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]

LBB2_115:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB2_166

LBB2_117:
	WORD $0xff31  // xor    edi, edi
	JMP  LBB2_168

LBB2_118:
	LONG $0x1f728d4d         // lea    r14, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xf2490f4d         // cmovns    r14, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff3         // movss    xmm0, dword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB2_122
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_120:
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xcb20                 // and    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x333c8841             // mov    byte [r11 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB2_120
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB2_122:
	LONG $0x05fec149         // sar    r14, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB2_147
	LONG $0x04fe8349         // cmp    r14, 4
	JB   LBB2_126
	WORD $0x894c; BYTE $0xf0 // mov    rax, r14
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	LONG $0x24043948         // cmp    qword [rsp], rax
	JAE  LBB2_194
	LONG $0x24048b48         // mov    rax, qword [rsp]
	LONG $0xb0048d4a         // lea    rax, [rax + 4*r14]
	WORD $0x3948; BYTE $0xd0 // cmp    rax, rdx
	JBE  LBB2_194

LBB2_126:
	WORD $0x3145; BYTE $0xc0 // xor    r8d, r8d
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx
	LONG $0x243c8b4c         // mov    r15, qword [rsp]

LBB2_127:
	LONG $0x247c894c; BYTE $0x08 // mov    qword [rsp + 8], r15
	QUAD $0x000000902494894c     // mov    qword [rsp + 144], r10
	QUAD $0x000000f024b4894c     // mov    qword [rsp + 240], r14
	WORD $0x294d; BYTE $0xc6     // sub    r14, r8
	QUAD $0x0000009824b4894c     // mov    qword [rsp + 152], r14

LBB2_128:
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd2                   // sete    dl
	WORD $0xc220                               // and    dl, al
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	WORD $0x0c88; BYTE $0x24                   // mov    byte [rsp], cl
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd4940f41                           // sete    r12b
	WORD $0x2041; BYTE $0xc4                   // and    r12b, al
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xd0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 208], cl
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f41                           // sete    r14b
	WORD $0x2041; BYTE $0xc6                   // and    r14b, al
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd0940f41                           // sete    r8b
	WORD $0x2041; BYTE $0xc0                   // and    r8b, al
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd3940f41                           // sete    r11b
	WORD $0x2041; BYTE $0xc3                   // and    r11b, al
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd2940f41                           // sete    r10b
	WORD $0x2041; BYTE $0xc2                   // and    r10b, al
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd1940f41                           // sete    r9b
	WORD $0x2041; BYTE $0xc1                   // and    r9b, al
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f41                           // sete    r15b
	WORD $0x2041; BYTE $0xc7                   // and    r15b, al
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	WORD $0x940f; BYTE $0xd1                   // sete    cl
	WORD $0xc120                               // and    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd7940f40                           // sete    dil
	WORD $0x2040; BYTE $0xc7                   // and    dil, al
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x9b0f; BYTE $0xd0                   // setnp    al
	LONG $0xd6940f40                           // sete    sil
	WORD $0x2040; BYTE $0xc6                   // and    sil, al
	WORD $0xd200                               // add    dl, dl
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd5                   // mov    r13d, edx
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x244cb60f; BYTE $0x40               // movzx    ecx, byte [rsp + 64]
	WORD $0xc900                               // add    cl, cl
	LONG $0x28244c02                           // add    cl, byte [rsp + 40]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0x0488; BYTE $0x24                   // mov    byte [rsp], al
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xca08                               // or    dl, cl
	LONG $0x6cb60f44; WORD $0x6024             // movzx    r13d, byte [rsp + 96]
	LONG $0x05e5c041                           // shl    r13b, 5
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x6cb60f44; WORD $0x7024             // movzx    r13d, byte [rsp + 112]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x48               // add    r12b, byte [rsp + 72]
	WORD $0x8944; BYTE $0xe1                   // mov    ecx, r12d
	LONG $0x64b60f44; WORD $0x7824             // movzx    r12d, byte [rsp + 120]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xcc                   // or    r12b, cl
	QUAD $0x000000b0248cb60f                   // movzx    ecx, byte [rsp + 176]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0x8941; BYTE $0xcc                   // mov    r12d, ecx
	QUAD $0x000000d0248cb60f                   // movzx    ecx, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x24b60f44; BYTE $0x24               // movzx    r12d, byte [rsp]
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e6c041                           // shl    r14b, 6
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	WORD $0x0841; BYTE $0xd5                   // or    r13b, dl
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf0                   // or    r8b, r14b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000a0249c0244                   // add    r11b, byte [rsp + 160]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	LONG $0x04e7c041                           // shl    r15b, 4
	WORD $0x0845; BYTE $0xcf                   // or    r15b, r9b
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	WORD $0x8844; BYTE $0x20                   // mov    byte [rax], r12b
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0844; BYTE $0xfe                   // or    sil, r15b
	LONG $0x02408844                           // mov    byte [rax + 2], r8b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24448948; BYTE $0x08               // mov    qword [rsp + 8], rax
	QUAD $0x0000009824848348; BYTE $0xff       // add    qword [rsp + 152], -1
	JNE  LBB2_128
	LONG $0x247c8b4c; BYTE $0x08               // mov    r15, qword [rsp + 8]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x000000f024b48b4c                   // mov    r14, qword [rsp + 240]
	JMP  LBB2_148

LBB2_130:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB2_131:
	LONG $0x05e7c149             // shl    r15, 5
	WORD $0x394d; BYTE $0xd7     // cmp    r15, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0     // mov    r8, r10
	WORD $0x294d; BYTE $0xf8     // sub    r8, r15
	WORD $0xf749; BYTE $0xd7     // not    r15
	WORD $0x014d; BYTE $0xd7     // add    r15, r10
	JE   LBB2_137
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x245c8b4c; BYTE $0x68 // mov    r11, qword [rsp + 104]

LBB2_156:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e343a46             // cmp    r14b, byte [rsi + r9]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x06743a44; BYTE $0x01 // cmp    r14b, byte [rsi + rax + 1]
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB2_156
	JMP  LBB2_159

LBB2_134:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB2_135:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB2_157

LBB2_137:
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177
	JMP  LBB2_161

LBB2_138:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x10 // mov    qword [rsp + 16], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB2_139:
	LONG $0x05e7c149             // shl    r15, 5
	WORD $0x394d; BYTE $0xd7     // cmp    r15, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0     // mov    r8, r10
	WORD $0x294d; BYTE $0xf8     // sub    r8, r15
	WORD $0xf749; BYTE $0xd7     // not    r15
	WORD $0x014d; BYTE $0xd7     // add    r15, r10
	JE   LBB2_146
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0x3145; BYTE $0xff     // xor    r15d, r15d
	LONG $0x245c8b4c; BYTE $0x10 // mov    r11, qword [rsp + 16]

LBB2_142:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x363b4466             // cmp    r14w, word [rsi]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xff     // mov    rdi, r15
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3b // movzx    r10d, byte [r11 + rdi]
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3b1c8841             // mov    byte [r11 + rdi], bl
	LONG $0x02c78349             // add    r15, 2
	LONG $0x763b4466; BYTE $0x02 // cmp    r14w, word [rsi + 2]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x394d; BYTE $0xf9     // cmp    r9, r15
	JNE  LBB2_142
	JMP  LBB2_173

LBB2_143:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x10 // mov    qword [rsp + 16], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB2_144:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB2_171

LBB2_146:
	WORD $0x3145; BYTE $0xff // xor    r15d, r15d
	JMP  LBB2_173

LBB2_147:
	LONG $0x243c8b4c         // mov    r15, qword [rsp]
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx

LBB2_148:
	LONG $0x05e6c149         // shl    r14, 5
	WORD $0x394d; BYTE $0xd6 // cmp    r14, r10
	JGE  LBB2_177
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf0 // sub    r8, r14
	WORD $0xf749; BYTE $0xd6 // not    r14
	WORD $0x014d; BYTE $0xd6 // add    r14, r10
	JNE  LBB2_178
	WORD $0xf631             // xor    esi, esi
	JMP  LBB2_180

LBB2_151:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_152:
	WORD $0x3b44; BYTE $0x2a     // cmp    r13d, dword [rdx]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x331c8841             // mov    byte [r11 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x046a3b44             // cmp    r13d, dword [rdx + 4]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd1940f41             // sete    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x33048841             // mov    byte [r11 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB2_152

LBB2_153:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177
	WORD $0x3b44; BYTE $0x2a // cmp    r13d, dword [rdx]
	JMP  LBB2_170

LBB2_157:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x245c8b4c; BYTE $0x68 // mov    r11, qword [rsp + 104]

LBB2_158:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e343a46             // cmp    r14b, byte [rsi + r9]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x06743a44; BYTE $0x01 // cmp    r14b, byte [rsi + rax + 1]
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x940f; BYTE $0xd3     // sete    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB2_158

LBB2_159:
	WORD $0x014c; BYTE $0xce // add    rsi, r9
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177

LBB2_161:
	WORD $0x3a44; BYTE $0x36     // cmp    r14b, byte [rsi]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x68 // mov    r8, qword [rsp + 104]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	JMP  LBB2_175

LBB2_162:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xff31             // xor    edi, edi
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB2_163:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xc820                 // and    al, cl
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x36 // movzx    r10d, byte [r14 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0xb341; BYTE $0x01     // mov    r11b, 1
	WORD $0xd241; BYTE $0xe3     // shl    r11b, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0x2041; BYTE $0xc3     // and    r11b, al
	WORD $0x3045; BYTE $0xd3     // xor    r11b, r10b
	LONG $0x361c8845             // mov    byte [r14 + rsi], r11b
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x422e0f66; BYTE $0x08 // ucomisd    xmm0, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0xd29b0f41             // setnp    r10b
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0x2044; BYTE $0xd0     // and    al, r10b
	WORD $0xd8f6                 // neg    al
	WORD $0x3044; BYTE $0xd8     // xor    al, r11b
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xdb     // xor    bl, r11b
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	WORD $0x3949; BYTE $0xf9     // cmp    r9, rdi
	JNE  LBB2_163

LBB2_164:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177
	LONG $0x022e0f66         // ucomisd    xmm0, qword [rdx]
	WORD $0x9b0f; BYTE $0xd0 // setnp    al
	WORD $0x940f; BYTE $0xd2 // sete    dl
	WORD $0xc220             // and    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x8948; BYTE $0xf8 // mov    rax, rdi
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x24048b4c         // mov    r8, qword [rsp]
	LONG $0x00348a41         // mov    sil, byte [r8 + rax]
	LONG $0x07e78040         // and    dil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf989             // mov    ecx, edi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf2 // xor    dl, sil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x001c8841         // mov    byte [r8 + rax], bl
	JMP  LBB2_177

LBB2_166:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB2_167:
	WORD $0x3b4c; BYTE $0x2a     // cmp    r13, qword [rdx]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x33 // movzx    r9d, byte [r11 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x331c8841             // mov    byte [r11 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x086a3b4c             // cmp    r13, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0xd1940f41             // sete    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x33048841             // mov    byte [r11 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB2_167

LBB2_168:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177
	WORD $0x3b4c; BYTE $0x2a // cmp    r13, qword [rdx]

LBB2_170:
	WORD $0x940f; BYTE $0xd0 // sete    al
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xfa // mov    rdx, rdi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x24048b4c         // mov    r8, qword [rsp]
	LONG $0x10348a41         // mov    sil, byte [r8 + rdx]
	LONG $0x07e78040         // and    dil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf989             // mov    ecx, edi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	JMP  LBB2_176

LBB2_171:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0x3145; BYTE $0xff     // xor    r15d, r15d
	LONG $0x245c8b4c; BYTE $0x10 // mov    r11, qword [rsp + 16]

LBB2_172:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x363b4466             // cmp    r14w, word [rsi]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xff     // mov    rdi, r15
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3b // movzx    r10d, byte [r11 + rdi]
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3b1c8841             // mov    byte [r11 + rdi], bl
	LONG $0x02c78349             // add    r15, 2
	LONG $0x763b4466; BYTE $0x02 // cmp    r14w, word [rsi + 2]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x394d; BYTE $0xf9     // cmp    r9, r15
	JNE  LBB2_172

LBB2_173:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB2_177
	LONG $0x363b4466             // cmp    r14w, word [rsi]
	WORD $0x940f; BYTE $0xd0     // sete    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xfa     // mov    rdx, r15
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x10 // mov    r8, qword [rsp + 16]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e78041             // and    r15b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d

LBB2_175:
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil

LBB2_176:
	LONG $0x101c8841 // mov    byte [r8 + rdx], bl

LBB2_177:
	MOVQ 304(SP), SP
	RET

LBB2_178:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi
	WORD $0x894d; BYTE $0xfe // mov    r14, r15

LBB2_179:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd1     // setnp    cl
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0xca20                 // and    dl, cl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0xb341; BYTE $0x01     // mov    r11b, 1
	WORD $0xd241; BYTE $0xe3     // shl    r11b, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0x2041; BYTE $0xd3     // and    r11b, dl
	WORD $0x3045; BYTE $0xd3     // xor    r11b, r10b
	LONG $0x3e1c8845             // mov    byte [r14 + rdi], r11b
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0x085b8d48             // lea    rbx, [rbx + 8]
	LONG $0xd29b0f41             // setnp    r10b
	WORD $0x940f; BYTE $0xd2     // sete    dl
	WORD $0x2044; BYTE $0xd2     // and    dl, r10b
	WORD $0xdaf6                 // neg    dl
	WORD $0x3044; BYTE $0xda     // xor    dl, r11b
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xd8     // xor    al, r11b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB2_179

LBB2_180:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB2_177
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0x9b0f; BYTE $0xd0 // setnp    al
	WORD $0x940f; BYTE $0xd2 // sete    dl
	WORD $0xc220             // and    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x8948; BYTE $0xf0 // mov    rax, rsi
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x073c8a41         // mov    dil, byte [r15 + rax]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xfa // xor    dl, dil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x071c8841         // mov    byte [r15 + rax], bl
	JMP  LBB2_177

LBB2_182:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e024bc894c             // mov    qword [rsp + 224], r15
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x68         // mov    qword [rsp + 104], rax
	LONG $0xc6b60f41                     // movzx    eax, r14b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000b0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 176], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB2_183:
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	LONG $0x05e7c148                           // shl    rdi, 5
	WORD $0x8948; BYTE $0xfe                   // mov    rsi, rdi
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	WORD $0x8949; BYTE $0xf9                   // mov    r9, rdi
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	LONG $0x247c8948; BYTE $0x50               // mov    qword [rsp + 80], rdi
	LONG $0x247c8948; BYTE $0x60               // mov    qword [rsp + 96], rdi
	LONG $0x3a0cb60f                           // movzx    ecx, byte [rdx + rdi]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x3a4cb60f; BYTE $0x01               // movzx    ecx, byte [rdx + rdi + 1]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x3a4cb60f; BYTE $0x02               // movzx    ecx, byte [rdx + rdi + 2]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x3a4cb60f; BYTE $0x03               // movzx    ecx, byte [rdx + rdi + 3]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x3a4cb60f; BYTE $0x04               // movzx    ecx, byte [rdx + rdi + 4]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x3a4cb60f; BYTE $0x05               // movzx    ecx, byte [rdx + rdi + 5]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x3a4cb60f; BYTE $0x06               // movzx    ecx, byte [rdx + rdi + 6]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x3a4cb60f; BYTE $0x07               // movzx    ecx, byte [rdx + rdi + 7]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000d024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm0
	LONG $0x3a4cb60f; BYTE $0x08               // movzx    ecx, byte [rdx + rdi + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x3a4cb60f; BYTE $0x09               // movzx    ecx, byte [rdx + rdi + 9]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x3a4cb60f; BYTE $0x0a               // movzx    ecx, byte [rdx + rdi + 10]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x3a4cb60f; BYTE $0x0b               // movzx    ecx, byte [rdx + rdi + 11]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x3a4cb60f; BYTE $0x0c               // movzx    ecx, byte [rdx + rdi + 12]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x3a4cb60f; BYTE $0x0d               // movzx    ecx, byte [rdx + rdi + 13]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x3a4cb60f; BYTE $0x0e               // movzx    ecx, byte [rdx + rdi + 14]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x247c8948; BYTE $0x40               // mov    qword [rsp + 64], rdi
	WORD $0x8949; BYTE $0xfd                   // mov    r13, rdi
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x18               // mov    qword [rsp + 24], r13
	LONG $0x40ce8348                           // or    rsi, 64
	LONG $0x24748948; BYTE $0x28               // mov    qword [rsp + 40], rsi
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	LONG $0x60c98348                           // or    rcx, 96
	LONG $0x80ce8149; WORD $0x0000; BYTE $0x00 // or    r14, 128
	LONG $0xa0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 160
	LONG $0xc0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 192
	LONG $0xe0cb8149; WORD $0x0000; BYTE $0x00 // or    r11, 224
	LONG $0x00cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 256
	LONG $0x20c98149; WORD $0x0001; BYTE $0x00 // or    r9, 288
	LONG $0x244c894c; BYTE $0x48               // mov    qword [rsp + 72], r9
	LONG $0x40cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 320
	LONG $0x245c8948; BYTE $0x78               // mov    qword [rsp + 120], rbx
	LONG $0x245c8b48; BYTE $0x50               // mov    rbx, qword [rsp + 80]
	LONG $0x60cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 352
	LONG $0x245c8948; BYTE $0x50               // mov    qword [rsp + 80], rbx
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	LONG $0x80c88149; WORD $0x0001; BYTE $0x00 // or    r8, 384
	LONG $0x2444894c; BYTE $0x60               // mov    qword [rsp + 96], r8
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x30               // mov    qword [rsp + 48], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	QUAD $0x012a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r13], 1
	QUAD $0x02323c203a0f4466                   // pinsrb    xmm15, byte [rdx + rsi], 2
	LONG $0x244c8948; BYTE $0x38               // mov    qword [rsp + 56], rcx
	QUAD $0x030a3c203a0f4466                   // pinsrb    xmm15, byte [rdx + rcx], 3
	LONG $0x2474894c; BYTE $0x70               // mov    qword [rsp + 112], r14
	QUAD $0x04323c203a0f4666                   // pinsrb    xmm15, byte [rdx + r14], 4
	QUAD $0x0000008024bc894c                   // mov    qword [rsp + 128], r15
	QUAD $0x053a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r15], 5
	WORD $0x894c; BYTE $0xd7                   // mov    rdi, r10
	QUAD $0x06123c203a0f4666                   // pinsrb    xmm15, byte [rdx + r10], 6
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	LONG $0x245c894c; BYTE $0x58               // mov    qword [rsp + 88], r11
	QUAD $0x071a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r11], 7
	QUAD $0x08223c203a0f4666                   // pinsrb    xmm15, byte [rdx + r12], 8
	QUAD $0x090a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r9], 9
	LONG $0x246c8b4c; BYTE $0x78               // mov    r13, qword [rsp + 120]
	QUAD $0x0a2a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r13], 10
	QUAD $0x0b1a3c203a0f4466                   // pinsrb    xmm15, byte [rdx + rbx], 11
	QUAD $0x0c023c203a0f4666                   // pinsrb    xmm15, byte [rdx + r8], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0d323c203a0f4466                   // pinsrb    xmm15, byte [rdx + rsi], 13
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0e323c203a0f4466                   // pinsrb    xmm15, byte [rdx + rsi], 14
	QUAD $0x0f023c203a0f4466                   // pinsrb    xmm15, byte [rdx + rax], 15
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x011a6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rdx + r11 + 1], 1
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0201326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 1], 2
	QUAD $0x03010a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 1], 3
	QUAD $0x01326c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r14 + 1], 4
	QUAD $0x013a6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rdx + r15 + 1], 5
	QUAD $0x06013a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 1], 6
	QUAD $0x01126c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r10 + 1], 7
	QUAD $0x01226c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r12 + 1], 8
	WORD $0x894d; BYTE $0xe6                   // mov    r14, r12
	QUAD $0x000000c024a4894c                   // mov    qword [rsp + 192], r12
	QUAD $0x010a6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r9 + 1], 9
	QUAD $0x012a6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r13 + 1], 10
	WORD $0x894d; BYTE $0xef                   // mov    r15, r13
	QUAD $0x0b011a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 1], 11
	QUAD $0x01026c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r8 + 1], 12
	LONG $0x244c8b4c; BYTE $0x10               // mov    r9, qword [rsp + 16]
	QUAD $0x010a6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r9 + 1], 13
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x011a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r11 + 1], 14
	QUAD $0x0f01026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 1], 15
	QUAD $0x00b0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xe9               // pcmpeqb    xmm5, xmm9
	LONG $0xfd6f0f66                           // movdqa    xmm7, xmm5
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xfcdb0f66                           // pand    xmm7, xmm4
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0x24648b4c; BYTE $0x40               // mov    r12, qword [rsp + 64]
	LONG $0x74b60f42; WORD $0x0f22             // movzx    esi, byte [rdx + r12 + 15]
	LONG $0x6e0f4466; BYTE $0xf6               // movd    xmm14, esi
	LONG $0x740f4566; BYTE $0xf9               // pcmpeqb    xmm15, xmm9
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x020274203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rdx + r8 + 2], 1
	LONG $0x24548b4c; BYTE $0x28               // mov    r10, qword [rsp + 40]
	QUAD $0x021274203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rdx + r10 + 2], 2
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x03020a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 2], 3
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x04021a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 2], 4
	QUAD $0x0000008024b48b48                   // mov    rsi, qword [rsp + 128]
	QUAD $0x05023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 5
	QUAD $0x06023a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 2], 6
	LONG $0x24748b48; BYTE $0x58               // mov    rsi, qword [rsp + 88]
	QUAD $0x07023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 7
	QUAD $0x023274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r14 + 2], 8
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x022a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r13 + 2], 9
	QUAD $0x023a74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r15 + 2], 10
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x023274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r14 + 2], 11
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x023a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 2], 12
	QUAD $0x020a74203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rdx + r9 + 2], 13
	QUAD $0x021a74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r11 + 2], 14
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x0f020274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 2], 15
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0x740f4166; BYTE $0xf1               // pcmpeqb    xmm6, xmm9
	QUAD $0x000000b0856f0f66                   // movdqa    xmm0, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xf0db0f66                           // pand    xmm6, xmm0
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x74b60f42; WORD $0x1022             // movzx    esi, byte [rdx + r12 + 16]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	WORD $0x894c; BYTE $0xc6                   // mov    rsi, r8
	QUAD $0x030254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r8 + 3], 1
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x031254203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r10 + 3], 2
	QUAD $0x03030a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 3], 3
	QUAD $0x04031a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 3], 4
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x05030a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 3], 5
	QUAD $0x0000008824bc8948                   // mov    qword [rsp + 136], rdi
	QUAD $0x06033a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 3], 6
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x030254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r8 + 3], 7
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	QUAD $0x031254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r10 + 3], 8
	QUAD $0x032a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r13 + 3], 9
	LONG $0x245c8b48; BYTE $0x78               // mov    rbx, qword [rsp + 120]
	QUAD $0x0a031a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 3], 10
	QUAD $0x033254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r14 + 3], 11
	QUAD $0x033a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 3], 12
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x032254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 3], 13
	QUAD $0x031a54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r11 + 3], 14
	QUAD $0x030a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r9 + 3], 15
	QUAD $0x0104324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 4], 1
	QUAD $0x0204024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 4], 2
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0304324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 4], 3
	LONG $0x24748b48; BYTE $0x70               // mov    rsi, qword [rsp + 112]
	QUAD $0x0404324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 4], 4
	QUAD $0x05040a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 4], 5
	QUAD $0x06043a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 4], 6
	QUAD $0x04024c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r8 + 4], 7
	QUAD $0x04124c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r10 + 4], 8
	QUAD $0x042a4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rdx + r13 + 4], 9
	QUAD $0x0a041a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 4], 10
	QUAD $0x04324c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r14 + 4], 11
	QUAD $0x043a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r15 + 4], 12
	QUAD $0x04224c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r12 + 4], 13
	QUAD $0x041a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r11 + 4], 14
	QUAD $0x040a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r9 + 4], 15
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	LONG $0x244c894c; BYTE $0x20               // mov    qword [rsp + 32], r9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x244c8b4c; BYTE $0x40               // mov    r9, qword [rsp + 64]
	LONG $0x74b60f42; WORD $0x110a             // movzx    esi, byte [rdx + r9 + 17]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xc9               // pcmpeqb    xmm1, xmm9
	QUAD $0x000000d0ad6f0f66                   // movdqa    xmm5, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xcddb0f66                           // pand    xmm1, xmm5
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x74b60f42; WORD $0x120a             // movzx    esi, byte [rdx + r9 + 18]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x052a44203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rdx + r13 + 5], 1
	QUAD $0x050244203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rax + 5], 2
	LONG $0x245c8b4c; BYTE $0x38               // mov    r11, qword [rsp + 56]
	QUAD $0x051a44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r11 + 5], 3
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x050244203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rdx + rax + 5], 4
	QUAD $0x0000008024bc8b48                   // mov    rdi, qword [rsp + 128]
	QUAD $0x053a44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rdi + 5], 5
	QUAD $0x0000008824848b4c                   // mov    r8, qword [rsp + 136]
	QUAD $0x050244203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rdx + r8 + 5], 6
	LONG $0x24548b4c; BYTE $0x58               // mov    r10, qword [rsp + 88]
	QUAD $0x051244203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rdx + r10 + 5], 7
	QUAD $0x000000c0249c8b48                   // mov    rbx, qword [rsp + 192]
	QUAD $0x051a44203a0f4466; BYTE $0x08       // pinsrb    xmm8, byte [rdx + rbx + 5], 8
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x053244203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rdx + rsi + 5], 9
	LONG $0x24748b4c; BYTE $0x78               // mov    r14, qword [rsp + 120]
	QUAD $0x053244203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + r14 + 5], 10
	LONG $0x247c8b4c; BYTE $0x50               // mov    r15, qword [rsp + 80]
	QUAD $0x053a44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r15 + 5], 11
	LONG $0x24648b4c; BYTE $0x60               // mov    r12, qword [rsp + 96]
	QUAD $0x052244203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r12 + 5], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x053244203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rsi + 5], 13
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x053244203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + rsi + 5], 14
	QUAD $0x050a44203a0f4466; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + rcx + 5], 15
	LONG $0x740f4566; BYTE $0xc1               // pcmpeqb    xmm8, xmm9
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xdb0f4466; BYTE $0xc2               // pand    xmm8, xmm2
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x74b60f42; WORD $0x130a             // movzx    esi, byte [rdx + r9 + 19]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	LONG $0x74b60f42; WORD $0x140a             // movzx    esi, byte [rdx + r9 + 20]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	QUAD $0x062a5c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rdx + r13 + 6], 1
	LONG $0x244c8b4c; BYTE $0x28               // mov    r9, qword [rsp + 40]
	QUAD $0x060a5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rdx + r9 + 6], 2
	QUAD $0x061a5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r11 + 6], 3
	QUAD $0x0406025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 6], 4
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x05063a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 6], 5
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x06025c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r8 + 6], 6
	QUAD $0x06125c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r10 + 6], 7
	WORD $0x8949; BYTE $0xda                   // mov    r10, rbx
	QUAD $0x08061a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 6], 8
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0906025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 6], 9
	WORD $0x894c; BYTE $0xf3                   // mov    rbx, r14
	QUAD $0x06325c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r14 + 6], 10
	WORD $0x894c; BYTE $0xfe                   // mov    rsi, r15
	QUAD $0x063a5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r15 + 6], 11
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x06225c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r12 + 6], 12
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x06225c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r12 + 6], 13
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	QUAD $0x06325c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r14 + 6], 14
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x06025c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r8 + 6], 15
	QUAD $0x0000d024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 208]
	QUAD $0x072a54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r13 + 7], 1
	QUAD $0x070a54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r9 + 7], 2
	QUAD $0x071a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r11 + 7], 3
	WORD $0x894d; BYTE $0xdd                   // mov    r13, r11
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x070a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r9 + 7], 4
	QUAD $0x05070a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 7], 5
	QUAD $0x06073a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 7], 6
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x07070a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 7], 7
	QUAD $0x071254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r10 + 7], 8
	QUAD $0x09070254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 7], 9
	QUAD $0x0a071a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 7], 10
	QUAD $0x0b073254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 7], 11
	QUAD $0x073a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 7], 12
	QUAD $0x072254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 7], 13
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x073254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r14 + 7], 14
	QUAD $0x070254203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r8 + 7], 15
	LONG $0x740f4166; BYTE $0xd9               // pcmpeqb    xmm3, xmm9
	QUAD $0x000000f08d6f0f66                   // movdqa    xmm1, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0xd9db0f66                           // pand    xmm3, xmm1
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0x4d6f0f66; BYTE $0x60               // movdqa    xmm1, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xd1db0f66                           // pand    xmm2, xmm1
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	LONG $0x0274b60f; BYTE $0x15               // movzx    esi, byte [rdx + rax + 21]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x090a54203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rdx + rcx + 9], 1
	LONG $0x245c8b4c; BYTE $0x28               // mov    r11, qword [rsp + 40]
	QUAD $0x091a54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rdx + r11 + 9], 2
	QUAD $0x092a54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r13 + 9], 3
	QUAD $0x090a54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r9 + 9], 4
	QUAD $0x0000008024ac8b4c                   // mov    r13, qword [rsp + 128]
	QUAD $0x092a54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r13 + 9], 5
	QUAD $0x093a54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rdx + rdi + 9], 6
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x090254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r8 + 9], 7
	QUAD $0x091254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r10 + 9], 8
	WORD $0x894d; BYTE $0xd6                   // mov    r14, r10
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x093254203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rsi + 9], 9
	QUAD $0x091a54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rbx + 9], 10
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x091254203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r10 + 9], 11
	LONG $0x245c8b48; BYTE $0x60               // mov    rbx, qword [rsp + 96]
	QUAD $0x091a54203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rbx + 9], 12
	QUAD $0x093a54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r15 + 9], 13
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x093a54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + rdi + 9], 14
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x093254203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rsi + 9], 15
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x0000d0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm1
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	LONG $0xccdb0f66                           // pand    xmm1, xmm4
	LONG $0xf80f4166; BYTE $0xca               // psubb    xmm1, xmm10
	LONG $0x0274b60f; BYTE $0x16               // movzx    esi, byte [rdx + rax + 22]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	QUAD $0x01080a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 8], 1
	QUAD $0x081a64203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r11 + 8], 2
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x03080264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 8], 3
	QUAD $0x080a64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r9 + 8], 4
	QUAD $0x082a64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rdx + r13 + 8], 5
	QUAD $0x0000008824bc8b4c                   // mov    r15, qword [rsp + 136]
	QUAD $0x083a64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r15 + 8], 6
	QUAD $0x080264203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r8 + 8], 7
	QUAD $0x083264203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r14 + 8], 8
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x09083264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 8], 9
	QUAD $0x082264203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r12 + 8], 10
	QUAD $0x081264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r10 + 8], 11
	QUAD $0x0c081a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 8], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d081a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 8], 13
	QUAD $0x0e083a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 8], 14
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x0f080a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 8], 15
	LONG $0x740f4166; BYTE $0xe1               // pcmpeqb    xmm4, xmm9
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	QUAD $0x00a024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 160]
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0a3a54203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rdx + rdi + 10], 1
	QUAD $0x0a1a54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rdx + r11 + 10], 2
	QUAD $0x0a0254203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rdx + rax + 10], 3
	QUAD $0x0a0a54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r9 + 10], 4
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x0a2a54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r13 + 10], 5
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	QUAD $0x0a3a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r15 + 10], 6
	QUAD $0x0a0254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r8 + 10], 7
	QUAD $0x0a3254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r14 + 10], 8
	QUAD $0x0a3254203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rsi + 10], 9
	QUAD $0x0a2254203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r12 + 10], 10
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x0a3254203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r14 + 10], 11
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x0a3a54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r15 + 10], 12
	QUAD $0x0a1a54203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rbx + 10], 13
	WORD $0x8949; BYTE $0xdd                   // mov    r13, rbx
	QUAD $0x0a1254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r10 + 10], 14
	QUAD $0x0a0a54203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rcx + 10], 15
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	QUAD $0x0000b095db0f4466; BYTE $0x00       // pand    xmm10, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4466; BYTE $0xd4               // por    xmm10, xmm4
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	LONG $0x0a74b60f; BYTE $0x17               // movzx    esi, byte [rdx + rcx + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00a024947f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm10
	LONG $0x0a74b60f; BYTE $0x18               // movzx    esi, byte [rdx + rcx + 24]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	QUAD $0x0b3a5c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rdi + 11], 1
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x0b0a5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rcx + 11], 2
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x0b0a5c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rdx + rcx + 11], 3
	QUAD $0x0b025c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rdx + rax + 11], 4
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x0b1a5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r11 + 11], 5
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x0b0a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r9 + 11], 6
	QUAD $0x0b025c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r8 + 11], 7
	QUAD $0x000000c0248c8b4c                   // mov    r9, qword [rsp + 192]
	QUAD $0x0b0a5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r9 + 11], 8
	LONG $0x245c8b4c; BYTE $0x48               // mov    r11, qword [rsp + 72]
	QUAD $0x0b1a5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rdx + r11 + 11], 9
	QUAD $0x0b225c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r12 + 11], 10
	QUAD $0x0b325c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r14 + 11], 11
	QUAD $0x0b3a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r15 + 11], 12
	WORD $0x8949; BYTE $0xda                   // mov    r10, rbx
	QUAD $0x0b1a5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rbx + 11], 13
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x0b225c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r12 + 11], 14
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x0b325c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + rsi + 11], 15
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0c2a6c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rdx + r13 + 12], 1
	LONG $0x245c8b48; BYTE $0x28               // mov    rbx, qword [rsp + 40]
	QUAD $0x0c1a6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rbx + 12], 2
	LONG $0x245c8b48; BYTE $0x38               // mov    rbx, qword [rsp + 56]
	QUAD $0x0c1a6c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rdx + rbx + 12], 3
	QUAD $0x0c026c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rdx + rax + 12], 4
	QUAD $0x0c0a6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rcx + 12], 5
	QUAD $0x0c3a6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rdx + rdi + 12], 6
	QUAD $0x0c026c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r8 + 12], 7
	QUAD $0x0c0a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r9 + 12], 8
	QUAD $0x0c1a6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rdx + r11 + 12], 9
	LONG $0x245c8b48; BYTE $0x78               // mov    rbx, qword [rsp + 120]
	QUAD $0x0c1a6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rbx + 12], 10
	QUAD $0x0c326c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + r14 + 12], 11
	QUAD $0x0c3a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r15 + 12], 12
	QUAD $0x0c126c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r10 + 12], 13
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x0c226c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r12 + 12], 14
	QUAD $0x0c326c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rsi + 12], 15
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x0d1264203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rdx + r10 + 13], 1
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0d3264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rsi + 13], 2
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0d3264203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rdx + rsi + 13], 3
	QUAD $0x0d0264203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rax + 13], 4
	QUAD $0x0d0a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rcx + 13], 5
	QUAD $0x0d3a64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rdx + rdi + 13], 6
	QUAD $0x0d0264203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r8 + 13], 7
	QUAD $0x0d0a64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r9 + 13], 8
	QUAD $0x0d1a64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r11 + 13], 9
	QUAD $0x0d1a64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rbx + 13], 10
	QUAD $0x0d3264203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r14 + 13], 11
	QUAD $0x0d3a64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r15 + 13], 12
	QUAD $0x0d2a64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r13 + 13], 13
	QUAD $0x0d2264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r12 + 13], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0d0264203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rax + 13], 15
	LONG $0x740f4566; BYTE $0xd9               // pcmpeqb    xmm11, xmm9
	QUAD $0x0000c09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4566; BYTE $0xe9               // pcmpeqb    xmm13, xmm9
	QUAD $0x0000d0addb0f4466; BYTE $0x00       // pand    xmm13, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	LONG $0x0274b60f; BYTE $0x19               // movzx    esi, byte [rdx + rax + 25]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x740f4566; BYTE $0xe1               // pcmpeqb    xmm12, xmm9
	QUAD $0x0000e0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x0274b60f; BYTE $0x1a               // movzx    esi, byte [rdx + rax + 26]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000f024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 240]
	QUAD $0x0e1264203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rdx + r10 + 14], 1
	WORD $0x894c; BYTE $0xd6                   // mov    rsi, r10
	LONG $0x24648b4c; BYTE $0x28               // mov    r12, qword [rsp + 40]
	QUAD $0x0e2264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r12 + 14], 2
	LONG $0x24548b4c; BYTE $0x38               // mov    r10, qword [rsp + 56]
	QUAD $0x0e1264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r10 + 14], 3
	LONG $0x246c8b4c; BYTE $0x70               // mov    r13, qword [rsp + 112]
	QUAD $0x0e2a64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r13 + 14], 4
	QUAD $0x050e0a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 14], 5
	QUAD $0x060e3a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 14], 6
	QUAD $0x0e0264203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r8 + 14], 7
	QUAD $0x0e0a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r9 + 14], 8
	QUAD $0x0e1a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r11 + 14], 9
	QUAD $0x0a0e1a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 14], 10
	QUAD $0x0e3264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r14 + 14], 11
	QUAD $0x0e3a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 14], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d0e0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 14], 13
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0e0e0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 14], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0f0e0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 14], 15
	QUAD $0x0f3274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rsi + 15], 1
	QUAD $0x0f2274203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rdx + r12 + 15], 2
	QUAD $0x0f1274203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r10 + 15], 3
	QUAD $0x0f2a74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rdx + r13 + 15], 4
	QUAD $0x0f0a74203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rdx + rcx + 15], 5
	QUAD $0x0f3a74203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rdx + rdi + 15], 6
	QUAD $0x0f0274203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rdx + r8 + 15], 7
	QUAD $0x0f0a74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r9 + 15], 8
	QUAD $0x0f1a74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rdx + r11 + 15], 9
	QUAD $0x0f1a74203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + rbx + 15], 10
	QUAD $0x0f3274203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + r14 + 15], 11
	QUAD $0x0f3a74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r15 + 15], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0f3274203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rsi + 15], 13
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0f0274203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + rax + 15], 14
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x0f3274203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rsi + 15], 15
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x10327c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rsi + 16], 1
	QUAD $0x10227c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rdx + r12 + 16], 2
	QUAD $0x10127c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r10 + 16], 3
	QUAD $0x102a7c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rdx + r13 + 16], 4
	QUAD $0x100a7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rcx + 16], 5
	QUAD $0x103a7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rdx + rdi + 16], 6
	QUAD $0x10027c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r8 + 16], 7
	QUAD $0x100a7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r9 + 16], 8
	QUAD $0x101a7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r11 + 16], 9
	QUAD $0x101a7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + rbx + 16], 10
	QUAD $0x10327c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r14 + 16], 11
	QUAD $0x103a7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r15 + 16], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x10327c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rsi + 16], 13
	QUAD $0x10027c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + rax + 16], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x01110244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 17], 1
	QUAD $0x112244203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r12 + 17], 2
	QUAD $0x111244203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r10 + 17], 3
	QUAD $0x112a44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r13 + 17], 4
	QUAD $0x05110a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 17], 5
	QUAD $0x06113a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 17], 6
	QUAD $0x110244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r8 + 17], 7
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x110a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r9 + 17], 8
	QUAD $0x111a44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rdx + r11 + 17], 9
	QUAD $0x0a111a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 17], 10
	QUAD $0x113244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r14 + 17], 11
	QUAD $0x113a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 17], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0d113244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 17], 13
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0e113244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 17], 14
	QUAD $0x00a024a4eb0f4466; WORD $0x0000     // por    xmm12, oword [rsp + 160]
	LONG $0x24648b4c; BYTE $0x40               // mov    r12, qword [rsp + 64]
	LONG $0x74b60f42; WORD $0x1b22             // movzx    esi, byte [rdx + r12 + 27]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	QUAD $0x00b024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xe5               // pcmpeqb    xmm4, xmm13
	QUAD $0x000000f0a5db0f66                   // pand    xmm4, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0x740f4566; BYTE $0xf5               // pcmpeqb    xmm14, xmm13
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x74b60f42; WORD $0x1c22             // movzx    esi, byte [rdx + r12 + 28]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x110244203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r8 + 17], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	LONG $0x740f4166; BYTE $0xc5               // pcmpeqb    xmm0, xmm13
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xdb0f4566; BYTE $0xec               // pand    xmm13, xmm12
	LONG $0xf80f4466; BYTE $0xe8               // psubb    xmm13, xmm0
	QUAD $0x00a024ac7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm13
	LONG $0x74b60f42; WORD $0x1d22             // movzx    esi, byte [rdx + r12 + 29]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	QUAD $0x10027c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + r8 + 16], 15
	QUAD $0x0000b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 176]
	LONG $0x740f4466; BYTE $0xf8               // pcmpeqb    xmm15, xmm0
	LONG $0x24648b4c; BYTE $0x18               // mov    r12, qword [rsp + 24]
	QUAD $0x12226c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rdx + r12 + 18], 1
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0212326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 2
	QUAD $0x12126c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r10 + 18], 3
	QUAD $0x122a6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r13 + 18], 4
	QUAD $0x05120a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 18], 5
	QUAD $0x06123a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 18], 6
	QUAD $0x0712026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 18], 7
	QUAD $0x120a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r9 + 18], 8
	QUAD $0x121a6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r11 + 18], 9
	QUAD $0x0a121a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 18], 10
	QUAD $0x12326c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r14 + 18], 11
	QUAD $0x123a6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r15 + 18], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0d12326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 13
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0e12326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 14
	LONG $0xdb0f4566; BYTE $0xfc               // pand    xmm15, xmm12
	QUAD $0x12026c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r8 + 18], 15
	LONG $0xe8740f66                           // pcmpeqb    xmm5, xmm0
	QUAD $0x000000b0addb0f66                   // pand    xmm5, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4166; BYTE $0xef               // por    xmm5, xmm15
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	LONG $0x0274b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rax + 30]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x13227c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rdx + r12 + 19], 1
	QUAD $0x142274203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rdx + r12 + 20], 1
	QUAD $0x152254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r12 + 21], 1
	QUAD $0x16225c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rdx + r12 + 22], 1
	QUAD $0x172244203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rdx + r12 + 23], 1
	QUAD $0x182254203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r12 + 24], 1
	QUAD $0x19224c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rdx + r12 + 25], 1
	QUAD $0x1a225c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r12 + 26], 1
	QUAD $0x1b224c203a0f4666; BYTE $0x01       // pinsrb    xmm9, byte [rdx + r12 + 27], 1
	QUAD $0x1c2264203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rdx + r12 + 28], 1
	QUAD $0x1d226c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rdx + r12 + 29], 1
	QUAD $0x1e2264203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rdx + r12 + 30], 1
	LONG $0x0274b60f; BYTE $0x1f               // movzx    esi, byte [rdx + rax + 31]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x1f2244203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rdx + r12 + 31], 1
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0213327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 19], 2
	QUAD $0x02143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 2
	QUAD $0x02153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 2
	QUAD $0x0216325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 22], 2
	QUAD $0x173244203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rsi + 23], 2
	QUAD $0x183254203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rsi + 24], 2
	QUAD $0x0219324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 25], 2
	QUAD $0x1a325c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rsi + 26], 2
	QUAD $0x1b324c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rsi + 27], 2
	QUAD $0x021c3264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 28], 2
	QUAD $0x1d326c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rsi + 29], 2
	QUAD $0x1e3264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rsi + 30], 2
	QUAD $0x021f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 2
	QUAD $0x13127c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r10 + 19], 3
	QUAD $0x132a7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r13 + 19], 4
	QUAD $0x05130a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 19], 5
	QUAD $0x06133a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 19], 6
	LONG $0x24448b48; BYTE $0x58               // mov    rax, qword [rsp + 88]
	QUAD $0x0713027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 19], 7
	QUAD $0x130a7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r9 + 19], 8
	QUAD $0x131a7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r11 + 19], 9
	QUAD $0x0a131a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 19], 10
	QUAD $0x13327c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r14 + 19], 11
	QUAD $0x133a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r15 + 19], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0d13327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 19], 13
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x13227c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r12 + 19], 14
	QUAD $0x13027c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r8 + 19], 15
	QUAD $0x141274203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r10 + 20], 3
	QUAD $0x142a74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r13 + 20], 4
	QUAD $0x05140a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 20], 5
	QUAD $0x06143a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 20], 6
	QUAD $0x07140274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 20], 7
	QUAD $0x140a74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r9 + 20], 8
	QUAD $0x141a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r11 + 20], 9
	QUAD $0x0a141a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 20], 10
	QUAD $0x143274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r14 + 20], 11
	QUAD $0x143a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 20], 12
	QUAD $0x0d143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 13
	QUAD $0x142274203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r12 + 20], 14
	QUAD $0x0000a024aceb0f66; BYTE $0x00       // por    xmm5, oword [rsp + 160]
	QUAD $0x140274203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rdx + r8 + 20], 15
	QUAD $0x00b024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xff               // pcmpeqb    xmm7, xmm15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4166; BYTE $0xf7               // pcmpeqb    xmm6, xmm15
	QUAD $0x000000d0b5db0f66                   // pand    xmm6, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0x151254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r10 + 21], 3
	QUAD $0x152a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r13 + 21], 4
	QUAD $0x05150a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 21], 5
	QUAD $0x06153a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 21], 6
	QUAD $0x07150254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 21], 7
	QUAD $0x150a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r9 + 21], 8
	QUAD $0x151a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r11 + 21], 9
	QUAD $0x0a151a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 21], 10
	QUAD $0x153254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r14 + 21], 11
	QUAD $0x153a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 21], 12
	QUAD $0x0d153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 13
	QUAD $0x152254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r12 + 21], 14
	QUAD $0x150254203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r8 + 21], 15
	LONG $0x740f4166; BYTE $0xd7               // pcmpeqb    xmm2, xmm15
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xd7db0f66                           // pand    xmm2, xmm7
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0xd5eb0f66                           // por    xmm2, xmm5
	QUAD $0x16125c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r10 + 22], 3
	QUAD $0x162a5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r13 + 22], 4
	QUAD $0x05160a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 22], 5
	QUAD $0x06163a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 22], 6
	QUAD $0x0716025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 22], 7
	QUAD $0x160a5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r9 + 22], 8
	QUAD $0x161a5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rdx + r11 + 22], 9
	QUAD $0x0a161a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 22], 10
	QUAD $0x16325c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r14 + 22], 11
	QUAD $0x163a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r15 + 22], 12
	QUAD $0x0d16325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 22], 13
	QUAD $0x16225c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r12 + 22], 14
	QUAD $0x16025c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r8 + 22], 15
	QUAD $0x171244203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r10 + 23], 3
	QUAD $0x172a44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r13 + 23], 4
	QUAD $0x170a44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rcx + 23], 5
	QUAD $0x173a44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rdx + rdi + 23], 6
	QUAD $0x170244203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rdx + rax + 23], 7
	QUAD $0x170a44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r9 + 23], 8
	QUAD $0x171a44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rdx + r11 + 23], 9
	QUAD $0x171a44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + rbx + 23], 10
	QUAD $0x173244203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r14 + 23], 11
	QUAD $0x173a44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r15 + 23], 12
	QUAD $0x173244203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rsi + 23], 13
	QUAD $0x172244203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + r12 + 23], 14
	QUAD $0x170244203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r8 + 23], 15
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x000000f0ad6f0f66                   // movdqa    xmm5, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0xdddb0f66                           // pand    xmm3, xmm5
	LONG $0x740f4566; BYTE $0xc7               // pcmpeqb    xmm8, xmm15
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	QUAD $0x19124c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r10 + 25], 3
	QUAD $0x192a4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r13 + 25], 4
	QUAD $0x05190a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 25], 5
	QUAD $0x06193a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 25], 6
	QUAD $0x0719024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 25], 7
	QUAD $0x190a4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r9 + 25], 8
	QUAD $0x191a4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rdx + r11 + 25], 9
	QUAD $0x0a191a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 25], 10
	QUAD $0x19324c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r14 + 25], 11
	QUAD $0x193a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r15 + 25], 12
	QUAD $0x0d19324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 25], 13
	QUAD $0x19224c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r12 + 25], 14
	QUAD $0x19024c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r8 + 25], 15
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x740f4166; BYTE $0xcf               // pcmpeqb    xmm1, xmm15
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	QUAD $0x000000a09d6f0f66                   // movdqa    xmm3, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd1f80f66                           // psubb    xmm2, xmm1
	QUAD $0x181254203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r10 + 24], 3
	QUAD $0x182a54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r13 + 24], 4
	QUAD $0x180a54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rcx + 24], 5
	QUAD $0x183a54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rdx + rdi + 24], 6
	QUAD $0x180254203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rdx + rax + 24], 7
	QUAD $0x180a54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r9 + 24], 8
	QUAD $0x181a54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rdx + r11 + 24], 9
	QUAD $0x181a54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rbx + 24], 10
	QUAD $0x183254203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r14 + 24], 11
	QUAD $0x183a54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r15 + 24], 12
	QUAD $0x183254203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rsi + 24], 13
	QUAD $0x182254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r12 + 24], 14
	QUAD $0x180254203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + r8 + 24], 15
	LONG $0x740f4566; BYTE $0xd7               // pcmpeqb    xmm10, xmm15
	LONG $0xdb0f4466; BYTE $0xd3               // pand    xmm10, xmm3
	QUAD $0x1a125c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r10 + 26], 3
	QUAD $0x1a2a5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r13 + 26], 4
	QUAD $0x1a0a5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rcx + 26], 5
	QUAD $0x1a3a5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rdx + rdi + 26], 6
	QUAD $0x1a025c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rdx + rax + 26], 7
	QUAD $0x1a0a5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r9 + 26], 8
	QUAD $0x1a1a5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rdx + r11 + 26], 9
	QUAD $0x1a1a5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + rbx + 26], 10
	QUAD $0x1a325c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r14 + 26], 11
	QUAD $0x1a3a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r15 + 26], 12
	QUAD $0x1a325c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rsi + 26], 13
	QUAD $0x1a225c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r12 + 26], 14
	QUAD $0x1a025c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r8 + 26], 15
	LONG $0x740f4566; BYTE $0xdf               // pcmpeqb    xmm11, xmm15
	QUAD $0x0000b09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0xeb0f4466; BYTE $0xda               // por    xmm11, xmm2
	QUAD $0x1b124c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r10 + 27], 3
	QUAD $0x1b2a4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r13 + 27], 4
	QUAD $0x1b0a4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rdx + rcx + 27], 5
	QUAD $0x1b3a4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rdx + rdi + 27], 6
	QUAD $0x1b024c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rdx + rax + 27], 7
	QUAD $0x1b0a4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r9 + 27], 8
	QUAD $0x1b1a4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r11 + 27], 9
	QUAD $0x1b1a4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + rbx + 27], 10
	QUAD $0x1b324c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r14 + 27], 11
	QUAD $0x1b3a4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r15 + 27], 12
	QUAD $0x1b324c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rsi + 27], 13
	QUAD $0x1b224c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r12 + 27], 14
	QUAD $0x1b024c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r8 + 27], 15
	QUAD $0x1c1264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r10 + 28], 3
	QUAD $0x1c2a64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r13 + 28], 4
	QUAD $0x051c0a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 28], 5
	QUAD $0x061c3a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 28], 6
	QUAD $0x071c0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 28], 7
	QUAD $0x1c0a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r9 + 28], 8
	QUAD $0x1c1a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r11 + 28], 9
	QUAD $0x0a1c1a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 28], 10
	QUAD $0x1c3264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r14 + 28], 11
	QUAD $0x1c3a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 28], 12
	QUAD $0x0d1c3264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 28], 13
	QUAD $0x1c2264203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r12 + 28], 14
	QUAD $0x1c0264203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rdx + r8 + 28], 15
	QUAD $0x1d126c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r10 + 29], 3
	QUAD $0x1d2a6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rdx + r13 + 29], 4
	QUAD $0x1d0a6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rcx + 29], 5
	QUAD $0x1d3a6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rdx + rdi + 29], 6
	QUAD $0x1d026c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rdx + rax + 29], 7
	QUAD $0x1d0a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r9 + 29], 8
	QUAD $0x1d1a6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rdx + r11 + 29], 9
	QUAD $0x1d1a6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rbx + 29], 10
	QUAD $0x1d326c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + r14 + 29], 11
	QUAD $0x1d3a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r15 + 29], 12
	QUAD $0x1d326c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + rsi + 29], 13
	QUAD $0x1d226c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r12 + 29], 14
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0x740f4566; BYTE $0xcf               // pcmpeqb    xmm9, xmm15
	QUAD $0x0000c08ddb0f4466; BYTE $0x00       // pand    xmm9, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4166; BYTE $0xe7               // pcmpeqb    xmm4, xmm15
	QUAD $0x000000d0a5db0f66                   // pand    xmm4, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	QUAD $0x1d026c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + r8 + 29], 15
	LONG $0x740f4566; BYTE $0xef               // pcmpeqb    xmm13, xmm15
	LONG $0xdb0f4466; BYTE $0xef               // pand    xmm13, xmm7
	LONG $0xeb0f4466; BYTE $0xec               // por    xmm13, xmm4
	QUAD $0x1e1264203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r10 + 30], 3
	QUAD $0x1f1244203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r10 + 31], 3
	QUAD $0x1e2a64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rdx + r13 + 30], 4
	QUAD $0x1f2a44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r13 + 31], 4
	QUAD $0x1e0a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rcx + 30], 5
	QUAD $0x051f0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 31], 5
	QUAD $0x1e3a64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rdx + rdi + 30], 6
	QUAD $0x061f3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 31], 6
	QUAD $0x1e0264203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rdx + rax + 30], 7
	QUAD $0x071f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 31], 7
	QUAD $0x1e0a64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r9 + 30], 8
	QUAD $0x1f0a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r9 + 31], 8
	QUAD $0x1e1a64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r11 + 30], 9
	QUAD $0x1f1a44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rdx + r11 + 31], 9
	QUAD $0x1e1a64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rbx + 30], 10
	QUAD $0x0a1f1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 31], 10
	QUAD $0x1e3264203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r14 + 30], 11
	QUAD $0x1f3244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r14 + 31], 11
	QUAD $0x1e3a64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r15 + 30], 12
	QUAD $0x1f3a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 31], 12
	QUAD $0x1e3264203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + rsi + 30], 13
	QUAD $0x0d1f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 13
	QUAD $0x1e2264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r12 + 30], 14
	QUAD $0x1f2244203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r12 + 31], 14
	QUAD $0x1e0264203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + r8 + 30], 15
	QUAD $0x1f0244203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r8 + 31], 15
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x740f4566; BYTE $0xe7               // pcmpeqb    xmm12, xmm15
	LONG $0xdb0f4466; BYTE $0xe5               // pand    xmm12, xmm5
	LONG $0x740f4166; BYTE $0xc7               // pcmpeqb    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xc6db0f66                           // pand    xmm0, xmm6
	LONG $0xeb0f4166; BYTE $0xc4               // por    xmm0, xmm12
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000d024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 208]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd9610f66                           // punpcklwd    xmm3, xmm1
	LONG $0xd1690f66                           // punpckhwd    xmm2, xmm1
	LONG $0x680f4466; BYTE $0xc0               // punpckhbw    xmm8, xmm0
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	LONG $0x647f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm4
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm2
	LONG $0x1c7f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e0248c3b48                   // cmp    rcx, qword [rsp + 224]
	JNE  LBB2_183
	QUAD $0x000000e824bc8b4c                   // mov    r15, qword [rsp + 232]
	QUAD $0x000000e024bc3b4c                   // cmp    r15, qword [rsp + 224]
	LONG $0x24748a44; BYTE $0x08               // mov    r14b, byte [rsp + 8]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	JNE  LBB2_43
	JMP  LBB2_131

LBB2_185:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e024bc894c             // mov    qword [rsp + 224], r15
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x68         // mov    qword [rsp + 104], rax
	LONG $0xc6b60f41                     // movzx    eax, r14b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000b0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 176], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB2_186:
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	LONG $0x05e7c149                           // shl    r15, 5
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfb                   // mov    r11, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfa                   // mov    r10, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	LONG $0x247c894c; BYTE $0x38               // mov    qword [rsp + 56], r15
	LONG $0x34b60f42; BYTE $0x3a               // movzx    esi, byte [rdx + r15]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	LONG $0x74b60f42; WORD $0x013a             // movzx    esi, byte [rdx + r15 + 1]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x74b60f42; WORD $0x023a             // movzx    esi, byte [rdx + r15 + 2]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0x74b60f42; WORD $0x033a             // movzx    esi, byte [rdx + r15 + 3]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x74b60f42; WORD $0x043a             // movzx    esi, byte [rdx + r15 + 4]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x74b60f42; WORD $0x053a             // movzx    esi, byte [rdx + r15 + 5]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0x74b60f42; WORD $0x063a             // movzx    esi, byte [rdx + r15 + 6]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x74b60f42; WORD $0x073a             // movzx    esi, byte [rdx + r15 + 7]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x74b60f42; WORD $0x083a             // movzx    esi, byte [rdx + r15 + 8]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x74b60f42; WORD $0x093a             // movzx    esi, byte [rdx + r15 + 9]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x74b60f42; WORD $0x0a3a             // movzx    esi, byte [rdx + r15 + 10]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x74b60f42; WORD $0x0b3a             // movzx    esi, byte [rdx + r15 + 11]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	LONG $0x74b60f42; WORD $0x0c3a             // movzx    esi, byte [rdx + r15 + 12]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	LONG $0x74b60f42; WORD $0x0d3a             // movzx    esi, byte [rdx + r15 + 13]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	LONG $0x74b60f42; WORD $0x0e3a             // movzx    esi, byte [rdx + r15 + 14]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x247c894c; BYTE $0x20               // mov    qword [rsp + 32], r15
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	LONG $0x20ce8349                           // or    r14, 32
	LONG $0x2474894c; BYTE $0x10               // mov    qword [rsp + 16], r14
	LONG $0x40cb8348                           // or    rbx, 64
	LONG $0x245c8948; BYTE $0x48               // mov    qword [rsp + 72], rbx
	LONG $0x60c88348                           // or    rax, 96
	LONG $0x24448948; BYTE $0x70               // mov    qword [rsp + 112], rax
	LONG $0x80c98148; WORD $0x0000; BYTE $0x00 // or    rcx, 128
	LONG $0xa0cf8148; WORD $0x0000; BYTE $0x00 // or    rdi, 160
	LONG $0xc0c88149; WORD $0x0000; BYTE $0x00 // or    r8, 192
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 256
	LONG $0x20cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 288
	LONG $0x2464894c; BYTE $0x40               // mov    qword [rsp + 64], r12
	LONG $0x40ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 320
	LONG $0x2454894c; BYTE $0x58               // mov    qword [rsp + 88], r10
	WORD $0x894d; BYTE $0xfa                   // mov    r10, r15
	LONG $0x60ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 352
	LONG $0x2454894c; BYTE $0x50               // mov    qword [rsp + 80], r10
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x80cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 384
	WORD $0x894c; BYTE $0xfe                   // mov    rsi, r15
	LONG $0xa0ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 416
	LONG $0x24748948; BYTE $0x30               // mov    qword [rsp + 48], rsi
	LONG $0xc0cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 448
	LONG $0x246c894c; BYTE $0x18               // mov    qword [rsp + 24], r13
	WORD $0x894c; BYTE $0xfe                   // mov    rsi, r15
	LONG $0xe0ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 480
	LONG $0x24748948; BYTE $0x28               // mov    qword [rsp + 40], rsi
	QUAD $0x01323c203a0f4666                   // pinsrb    xmm15, byte [rdx + r14], 1
	QUAD $0x021a3c203a0f4466                   // pinsrb    xmm15, byte [rdx + rbx], 2
	QUAD $0x03023c203a0f4466                   // pinsrb    xmm15, byte [rdx + rax], 3
	QUAD $0x00000080248c8948                   // mov    qword [rsp + 128], rcx
	QUAD $0x040a3c203a0f4466                   // pinsrb    xmm15, byte [rdx + rcx], 4
	QUAD $0x053a3c203a0f4466                   // pinsrb    xmm15, byte [rdx + rdi], 5
	LONG $0x2444894c; BYTE $0x60               // mov    qword [rsp + 96], r8
	QUAD $0x06023c203a0f4666                   // pinsrb    xmm15, byte [rdx + r8], 6
	QUAD $0x000000d0248c894c                   // mov    qword [rsp + 208], r9
	QUAD $0x070a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r9], 7
	LONG $0x245c894c; BYTE $0x78               // mov    qword [rsp + 120], r11
	QUAD $0x081a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r11], 8
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x09323c203a0f4666                   // pinsrb    xmm15, byte [rdx + r14], 9
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x0a3a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r15], 10
	QUAD $0x0b123c203a0f4666                   // pinsrb    xmm15, byte [rdx + r10], 11
	LONG $0x2464894c; BYTE $0x38               // mov    qword [rsp + 56], r12
	QUAD $0x0c223c203a0f4666                   // pinsrb    xmm15, byte [rdx + r12], 12
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x0d123c203a0f4666                   // pinsrb    xmm15, byte [rdx + r10], 13
	QUAD $0x0e2a3c203a0f4666                   // pinsrb    xmm15, byte [rdx + r13], 14
	QUAD $0x0f323c203a0f4466                   // pinsrb    xmm15, byte [rdx + rsi], 15
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x01011a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 1], 1
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x02011a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 1], 2
	QUAD $0x0301026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 1], 3
	QUAD $0x04010a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 1], 4
	QUAD $0x05013a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 1], 5
	QUAD $0x01026c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r8 + 1], 6
	QUAD $0x010a6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r9 + 1], 7
	QUAD $0x011a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r11 + 1], 8
	QUAD $0x01326c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r14 + 1], 9
	WORD $0x894c; BYTE $0xf0                   // mov    rax, r14
	QUAD $0x013a6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r15 + 1], 10
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x0b010a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 1], 11
	QUAD $0x01226c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r12 + 1], 12
	QUAD $0x01126c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r10 + 1], 13
	QUAD $0x012a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r13 + 1], 14
	QUAD $0x0f01326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 1], 15
	QUAD $0x00b0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xe9               // pcmpeqb    xmm5, xmm9
	LONG $0xfd6f0f66                           // movdqa    xmm7, xmm5
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xfcdb0f66                           // pand    xmm7, xmm4
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	LONG $0x74b60f42; WORD $0x0f2a             // movzx    esi, byte [rdx + r13 + 15]
	LONG $0x6e0f4466; BYTE $0xf6               // movd    xmm14, esi
	LONG $0x740f4566; BYTE $0xf9               // pcmpeqb    xmm15, xmm9
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x01020a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 2], 1
	QUAD $0x02021a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 2], 2
	LONG $0x245c8b4c; BYTE $0x70               // mov    r11, qword [rsp + 112]
	QUAD $0x021a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 2], 3
	QUAD $0x0000008024848b4c                   // mov    r8, qword [rsp + 128]
	QUAD $0x020274203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r8 + 2], 4
	QUAD $0x05023a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 2], 5
	LONG $0x24648b4c; BYTE $0x60               // mov    r12, qword [rsp + 96]
	QUAD $0x022274203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r12 + 2], 6
	QUAD $0x000000d024b48b4c                   // mov    r14, qword [rsp + 208]
	QUAD $0x023274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r14 + 2], 7
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x023a74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r15 + 2], 8
	QUAD $0x09020274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 2], 9
	LONG $0x24748b48; BYTE $0x58               // mov    rsi, qword [rsp + 88]
	QUAD $0x0a023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 10
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x021274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r10 + 2], 11
	LONG $0x244c8b4c; BYTE $0x38               // mov    r9, qword [rsp + 56]
	QUAD $0x020a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r9 + 2], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0d023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 13
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x0e023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 14
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0f023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 15
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0x740f4166; BYTE $0xf1               // pcmpeqb    xmm6, xmm9
	QUAD $0x000000b0856f0f66                   // movdqa    xmm0, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xf0db0f66                           // pand    xmm6, xmm0
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x74b60f42; WORD $0x102a             // movzx    esi, byte [rdx + r13 + 16]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	QUAD $0x01030a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 3], 1
	QUAD $0x02031a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 3], 2
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x031a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r11 + 3], 3
	QUAD $0x030254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r8 + 3], 4
	QUAD $0x0000008824bc8948                   // mov    qword [rsp + 136], rdi
	QUAD $0x05033a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 3], 5
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	QUAD $0x032254203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r12 + 3], 6
	QUAD $0x033254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r14 + 3], 7
	WORD $0x894c; BYTE $0xfe                   // mov    rsi, r15
	QUAD $0x033a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r15 + 3], 8
	QUAD $0x09030254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 3], 9
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x033a54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r15 + 3], 10
	QUAD $0x031254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r10 + 3], 11
	QUAD $0x030a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 3], 12
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x032254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 3], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e030254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 3], 14
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0f030254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 3], 15
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x042a4c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rdx + r13 + 4], 1
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x02041a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 4], 2
	QUAD $0x03040a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 4], 3
	QUAD $0x04024c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r8 + 4], 4
	QUAD $0x05043a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 4], 5
	QUAD $0x041a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r11 + 4], 6
	QUAD $0x04324c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r14 + 4], 7
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x0804324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 4], 8
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x0904324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 4], 9
	QUAD $0x043a4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r15 + 4], 10
	QUAD $0x04124c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r10 + 4], 11
	WORD $0x894d; BYTE $0xd7                   // mov    r15, r10
	QUAD $0x040a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r9 + 4], 12
	QUAD $0x04224c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r12 + 4], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0e041a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 4], 14
	QUAD $0x0f04024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 4], 15
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	LONG $0x3a74b60f; BYTE $0x11               // movzx    esi, byte [rdx + rdi + 17]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xc9               // pcmpeqb    xmm1, xmm9
	QUAD $0x000000d0ad6f0f66                   // movdqa    xmm5, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xcddb0f66                           // pand    xmm1, xmm5
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x3a74b60f; BYTE $0x12               // movzx    esi, byte [rdx + rdi + 18]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x052a44203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rdx + r13 + 5], 1
	LONG $0x245c8b4c; BYTE $0x48               // mov    r11, qword [rsp + 72]
	QUAD $0x051a44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rdx + r11 + 5], 2
	QUAD $0x050a44203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rdx + rcx + 5], 3
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x053244203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r14 + 5], 4
	QUAD $0x00000088248c8b4c                   // mov    r9, qword [rsp + 136]
	QUAD $0x050a44203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rdx + r9 + 5], 5
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x050244203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rdx + rax + 5], 6
	WORD $0x894c; BYTE $0xc1                   // mov    rcx, r8
	QUAD $0x050244203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rdx + r8 + 5], 7
	LONG $0x24448b4c; BYTE $0x78               // mov    r8, qword [rsp + 120]
	QUAD $0x050244203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r8 + 5], 8
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x053244203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rdx + rsi + 5], 9
	LONG $0x24748b48; BYTE $0x58               // mov    rsi, qword [rsp + 88]
	QUAD $0x053244203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + rsi + 5], 10
	QUAD $0x053a44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r15 + 5], 11
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	QUAD $0x052244203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r12 + 5], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x053244203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rsi + 5], 13
	QUAD $0x051a44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + rbx + 5], 14
	QUAD $0x051244203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r10 + 5], 15
	LONG $0x740f4566; BYTE $0xc1               // pcmpeqb    xmm8, xmm9
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xdb0f4466; BYTE $0xc2               // pand    xmm8, xmm2
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x3a74b60f; BYTE $0x13               // movzx    esi, byte [rdx + rdi + 19]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	LONG $0x3a74b60f; BYTE $0x14               // movzx    esi, byte [rdx + rdi + 20]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	QUAD $0x062a5c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rdx + r13 + 6], 1
	WORD $0x894c; BYTE $0xde                   // mov    rsi, r11
	QUAD $0x061a5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rdx + r11 + 6], 2
	LONG $0x24548b4c; BYTE $0x70               // mov    r10, qword [rsp + 112]
	QUAD $0x06125c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r10 + 6], 3
	WORD $0x894d; BYTE $0xf3                   // mov    r11, r14
	QUAD $0x06325c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r14 + 6], 4
	QUAD $0x060a5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rdx + r9 + 6], 5
	QUAD $0x0606025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 6], 6
	QUAD $0x07060a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 6], 7
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	QUAD $0x06025c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r8 + 6], 8
	LONG $0x247c8b48; BYTE $0x40               // mov    rdi, qword [rsp + 64]
	QUAD $0x09063a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 6], 9
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x063a5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r15 + 6], 10
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0b06025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 6], 11
	WORD $0x894c; BYTE $0xe3                   // mov    rbx, r12
	QUAD $0x06225c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r12 + 6], 12
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x06225c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r12 + 6], 13
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x0e060a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 6], 14
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x0f060a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 6], 15
	QUAD $0x0000c024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 192]
	QUAD $0x072a54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r13 + 7], 1
	QUAD $0x02073254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 7], 2
	WORD $0x8949; BYTE $0xf5                   // mov    r13, rsi
	QUAD $0x071254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r10 + 7], 3
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x071a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r11 + 7], 4
	QUAD $0x070a54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r9 + 7], 5
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x06070a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 7], 6
	QUAD $0x073254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r14 + 7], 7
	QUAD $0x070254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r8 + 7], 8
	WORD $0x894c; BYTE $0xc1                   // mov    rcx, r8
	QUAD $0x09073a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 7], 9
	QUAD $0x073a54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r15 + 7], 10
	QUAD $0x0b070254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 7], 11
	QUAD $0x0c071a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 7], 12
	QUAD $0x072254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 7], 13
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	LONG $0x24648b4c; BYTE $0x18               // mov    r12, qword [rsp + 24]
	QUAD $0x072254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r12 + 7], 14
	LONG $0x245c8b48; BYTE $0x28               // mov    rbx, qword [rsp + 40]
	QUAD $0x0f071a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 7], 15
	LONG $0x740f4166; BYTE $0xd9               // pcmpeqb    xmm3, xmm9
	QUAD $0x000000f08d6f0f66                   // movdqa    xmm1, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0xd9db0f66                           // pand    xmm3, xmm1
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0x4d6f0f66; BYTE $0x60               // movdqa    xmm1, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xd1db0f66                           // pand    xmm2, xmm1
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	LONG $0x0274b60f; BYTE $0x15               // movzx    esi, byte [rdx + rax + 21]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x244c8b4c; BYTE $0x10               // mov    r9, qword [rsp + 16]
	QUAD $0x090a54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r9 + 9], 1
	QUAD $0x092a54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rdx + r13 + 9], 2
	LONG $0x24448b4c; BYTE $0x70               // mov    r8, qword [rsp + 112]
	QUAD $0x090254203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r8 + 9], 3
	QUAD $0x091254203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r10 + 9], 4
	QUAD $0x0000008824bc8b48                   // mov    rdi, qword [rsp + 136]
	QUAD $0x093a54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rdi + 9], 5
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x092a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r13 + 9], 6
	QUAD $0x093254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r14 + 9], 7
	QUAD $0x090a54203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rdx + rcx + 9], 8
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x093254203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rsi + 9], 9
	QUAD $0x093a54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r15 + 9], 10
	LONG $0x24748b48; BYTE $0x50               // mov    rsi, qword [rsp + 80]
	QUAD $0x093254203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + rsi + 9], 11
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x093254203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rsi + 9], 12
	QUAD $0x091a54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r11 + 9], 13
	QUAD $0x092254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r12 + 9], 14
	QUAD $0x091a54203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rbx + 9], 15
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x0000c0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm1
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	LONG $0xccdb0f66                           // pand    xmm1, xmm4
	LONG $0xf80f4166; BYTE $0xca               // psubb    xmm1, xmm10
	LONG $0x0274b60f; BYTE $0x16               // movzx    esi, byte [rdx + rax + 22]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	QUAD $0x0000f024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 240]
	QUAD $0x080a64203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rdx + r9 + 8], 1
	LONG $0x24648b4c; BYTE $0x48               // mov    r12, qword [rsp + 72]
	QUAD $0x082264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r12 + 8], 2
	QUAD $0x080264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r8 + 8], 3
	WORD $0x894d; BYTE $0xd0                   // mov    r8, r10
	QUAD $0x081264203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r10 + 8], 4
	QUAD $0x05083a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 8], 5
	QUAD $0x082a64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r13 + 8], 6
	QUAD $0x083264203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r14 + 8], 7
	QUAD $0x08080a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 8], 8
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x09081a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 8], 9
	QUAD $0x083a64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r15 + 8], 10
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0b080264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 8], 11
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0c083264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 8], 12
	QUAD $0x081a64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r11 + 8], 13
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x081264203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r10 + 8], 14
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x0f080a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 8], 15
	LONG $0x740f4166; BYTE $0xe1               // pcmpeqb    xmm4, xmm9
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	QUAD $0x00a024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 160]
	QUAD $0x0a0a54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r9 + 10], 1
	QUAD $0x0a2254203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rdx + r12 + 10], 2
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x0a0a54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r9 + 10], 3
	QUAD $0x0a0254203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r8 + 10], 4
	QUAD $0x0a3a54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rdi + 10], 5
	QUAD $0x0a2a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r13 + 10], 6
	WORD $0x894d; BYTE $0xe8                   // mov    r8, r13
	QUAD $0x0a3254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r14 + 10], 7
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	LONG $0x24748b4c; BYTE $0x78               // mov    r14, qword [rsp + 120]
	QUAD $0x0a3254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r14 + 10], 8
	QUAD $0x0a1a54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rbx + 10], 9
	QUAD $0x0a3a54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r15 + 10], 10
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x0a0254203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + rax + 10], 11
	QUAD $0x0a3254203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rsi + 10], 12
	QUAD $0x0a1a54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r11 + 10], 13
	QUAD $0x0a1254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r10 + 10], 14
	QUAD $0x0a0a54203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rcx + 10], 15
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	QUAD $0x0000b095db0f4466; BYTE $0x00       // pand    xmm10, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4466; BYTE $0xd4               // por    xmm10, xmm4
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	LONG $0x0a74b60f; BYTE $0x17               // movzx    esi, byte [rdx + rcx + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00a024947f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm10
	LONG $0x0a74b60f; BYTE $0x18               // movzx    esi, byte [rdx + rcx + 24]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x0b125c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r10 + 11], 1
	QUAD $0x0b225c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rdx + r12 + 11], 2
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	QUAD $0x0b0a5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r9 + 11], 3
	QUAD $0x00000080249c8b4c                   // mov    r11, qword [rsp + 128]
	QUAD $0x0b1a5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r11 + 11], 4
	QUAD $0x0b3a5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rdi + 11], 5
	QUAD $0x0b025c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r8 + 11], 6
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	QUAD $0x0b2a5c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r13 + 11], 7
	QUAD $0x0b325c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r14 + 11], 8
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x0b025c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rdx + r8 + 11], 9
	QUAD $0x0b1a5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + rbx + 11], 10
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	QUAD $0x0b025c203a0f4466; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + rax + 11], 11
	LONG $0x246c8b4c; BYTE $0x38               // mov    r13, qword [rsp + 56]
	QUAD $0x0b2a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r13 + 11], 12
	LONG $0x244c8b4c; BYTE $0x30               // mov    r9, qword [rsp + 48]
	QUAD $0x0b0a5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + r9 + 11], 13
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x0b325c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + rsi + 11], 14
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0b025c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + rax + 11], 15
	QUAD $0x0c126c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rdx + r10 + 12], 1
	QUAD $0x0c226c203a0f4666; BYTE $0x02       // pinsrb    xmm13, byte [rdx + r12 + 12], 2
	QUAD $0x0c0a6c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rdx + rcx + 12], 3
	QUAD $0x0c1a6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rdx + r11 + 12], 4
	QUAD $0x0c3a6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rdi + 12], 5
	QUAD $0x0c3a6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r15 + 12], 6
	QUAD $0x000000d0249c8b4c                   // mov    r11, qword [rsp + 208]
	QUAD $0x0c1a6c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r11 + 12], 7
	QUAD $0x0c326c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r14 + 12], 8
	QUAD $0x0c026c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rdx + r8 + 12], 9
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x0c3a6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + r15 + 12], 10
	QUAD $0x0c1a6c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + rbx + 12], 11
	QUAD $0x0c2a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r13 + 12], 12
	QUAD $0x0c0a6c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r9 + 12], 13
	QUAD $0x0c326c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + rsi + 12], 14
	QUAD $0x0c026c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rax + 12], 15
	QUAD $0x0d1264203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rdx + r10 + 13], 1
	QUAD $0x0d2264203a0f4666; BYTE $0x02       // pinsrb    xmm12, byte [rdx + r12 + 13], 2
	QUAD $0x0d0a64203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rdx + rcx + 13], 3
	WORD $0x8949; BYTE $0xca                   // mov    r10, rcx
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x0d0a64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rcx + 13], 4
	QUAD $0x0d3a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rdi + 13], 5
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x0d3a64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rdx + rdi + 13], 6
	QUAD $0x0d1a64203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r11 + 13], 7
	QUAD $0x0d3264203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r14 + 13], 8
	WORD $0x894d; BYTE $0xc6                   // mov    r14, r8
	QUAD $0x0d0264203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r8 + 13], 9
	QUAD $0x0d3a64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + r15 + 13], 10
	QUAD $0x0d1a64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + rbx + 13], 11
	QUAD $0x0d2a64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r13 + 13], 12
	QUAD $0x0d0a64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r9 + 13], 13
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	QUAD $0x0d3264203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + rsi + 13], 14
	QUAD $0x0d0264203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rax + 13], 15
	LONG $0x740f4566; BYTE $0xd9               // pcmpeqb    xmm11, xmm9
	QUAD $0x0000c09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4566; BYTE $0xe9               // pcmpeqb    xmm13, xmm9
	QUAD $0x0000d0addb0f4466; BYTE $0x00       // pand    xmm13, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x245c8b48; BYTE $0x20               // mov    rbx, qword [rsp + 32]
	LONG $0x1a74b60f; BYTE $0x19               // movzx    esi, byte [rdx + rbx + 25]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x740f4566; BYTE $0xe1               // pcmpeqb    xmm12, xmm9
	QUAD $0x0000e0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x1a74b60f; BYTE $0x1a               // movzx    esi, byte [rdx + rbx + 26]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x010e0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 14], 1
	QUAD $0x0e2264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r12 + 14], 2
	QUAD $0x0e1264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r10 + 14], 3
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x040e0a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 14], 4
	QUAD $0x00000088248c8b48                   // mov    rcx, qword [rsp + 136]
	QUAD $0x050e0a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 14], 5
	QUAD $0x060e3a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 14], 6
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	QUAD $0x0e1a64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r11 + 14], 7
	LONG $0x244c8b4c; BYTE $0x78               // mov    r9, qword [rsp + 120]
	QUAD $0x0e0a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r9 + 14], 8
	WORD $0x894c; BYTE $0xf3                   // mov    rbx, r14
	QUAD $0x0e3264203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r14 + 14], 9
	WORD $0x894d; BYTE $0xfb                   // mov    r11, r15
	QUAD $0x0e3a64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r15 + 14], 10
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x0e3264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r14 + 14], 11
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]
	QUAD $0x0e3a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 14], 12
	QUAD $0x0e2a64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r13 + 14], 13
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0e2a64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r13 + 14], 14
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0f0e3264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 14], 15
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0f3274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rsi + 15], 1
	QUAD $0x0f2274203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rdx + r12 + 15], 2
	QUAD $0x0f1274203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r10 + 15], 3
	QUAD $0x0f0274203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rdx + rax + 15], 4
	QUAD $0x0f0a74203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rdx + rcx + 15], 5
	QUAD $0x0f3a74203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rdx + rdi + 15], 6
	QUAD $0x0f0274203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rdx + r8 + 15], 7
	QUAD $0x0f0a74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r9 + 15], 8
	QUAD $0x0f1a74203a0f4466; BYTE $0x09       // pinsrb    xmm14, byte [rdx + rbx + 15], 9
	QUAD $0x0f1a74203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + r11 + 15], 10
	QUAD $0x0f3274203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + r14 + 15], 11
	QUAD $0x0f3a74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r15 + 15], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0f3274203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rsi + 15], 13
	QUAD $0x0f2a74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r13 + 15], 14
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0f3274203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rsi + 15], 15
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x10327c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rsi + 16], 1
	QUAD $0x10227c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rdx + r12 + 16], 2
	QUAD $0x10127c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r10 + 16], 3
	QUAD $0x10027c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rdx + rax + 16], 4
	QUAD $0x100a7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rcx + 16], 5
	QUAD $0x103a7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rdx + rdi + 16], 6
	QUAD $0x10027c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r8 + 16], 7
	QUAD $0x100a7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r9 + 16], 8
	QUAD $0x101a7c203a0f4466; BYTE $0x09       // pinsrb    xmm15, byte [rdx + rbx + 16], 9
	QUAD $0x101a7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + r11 + 16], 10
	QUAD $0x10327c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r14 + 16], 11
	QUAD $0x103a7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r15 + 16], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x10327c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rsi + 16], 13
	QUAD $0x102a7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + r13 + 16], 14
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x01113244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 17], 1
	QUAD $0x112244203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r12 + 17], 2
	QUAD $0x111244203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r10 + 17], 3
	QUAD $0x04110244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 17], 4
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	QUAD $0x05110a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 17], 5
	QUAD $0x06113a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 17], 6
	QUAD $0x110244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r8 + 17], 7
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x110a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r9 + 17], 8
	QUAD $0x09111a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 17], 9
	QUAD $0x111a44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r11 + 17], 10
	QUAD $0x113244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r14 + 17], 11
	QUAD $0x113a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 17], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0d113244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 17], 13
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x0e113244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 17], 14
	QUAD $0x00a024a4eb0f4466; WORD $0x0000     // por    xmm12, oword [rsp + 160]
	LONG $0x24648b4c; BYTE $0x20               // mov    r12, qword [rsp + 32]
	LONG $0x74b60f42; WORD $0x1b22             // movzx    esi, byte [rdx + r12 + 27]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	QUAD $0x00b024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xe5               // pcmpeqb    xmm4, xmm13
	QUAD $0x000000f0a5db0f66                   // pand    xmm4, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0x740f4566; BYTE $0xf5               // pcmpeqb    xmm14, xmm13
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x74b60f42; WORD $0x1c22             // movzx    esi, byte [rdx + r12 + 28]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x24448b4c; BYTE $0x28               // mov    r8, qword [rsp + 40]
	QUAD $0x110244203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r8 + 17], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	LONG $0x740f4166; BYTE $0xc5               // pcmpeqb    xmm0, xmm13
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xdb0f4566; BYTE $0xec               // pand    xmm13, xmm12
	LONG $0xf80f4466; BYTE $0xe8               // psubb    xmm13, xmm0
	QUAD $0x00a024ac7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm13
	LONG $0x74b60f42; WORD $0x1d22             // movzx    esi, byte [rdx + r12 + 29]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	QUAD $0x10027c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + r8 + 16], 15
	QUAD $0x0000b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 176]
	LONG $0x740f4466; BYTE $0xf8               // pcmpeqb    xmm15, xmm0
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x12226c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rdx + r12 + 18], 1
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x0212326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 2
	QUAD $0x12126c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r10 + 18], 3
	QUAD $0x122a6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r13 + 18], 4
	QUAD $0x05120a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 18], 5
	QUAD $0x06123a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 18], 6
	QUAD $0x0712026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 18], 7
	QUAD $0x120a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r9 + 18], 8
	QUAD $0x09121a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 18], 9
	QUAD $0x121a6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r11 + 18], 10
	QUAD $0x12326c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r14 + 18], 11
	QUAD $0x123a6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r15 + 18], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0d12326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 13
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x0e12326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 18], 14
	LONG $0xdb0f4566; BYTE $0xfc               // pand    xmm15, xmm12
	QUAD $0x12026c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r8 + 18], 15
	LONG $0xe8740f66                           // pcmpeqb    xmm5, xmm0
	QUAD $0x000000b0addb0f66                   // pand    xmm5, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4166; BYTE $0xef               // por    xmm5, xmm15
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	LONG $0x0274b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rax + 30]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x13227c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rdx + r12 + 19], 1
	QUAD $0x142274203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rdx + r12 + 20], 1
	QUAD $0x152254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r12 + 21], 1
	QUAD $0x16225c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rdx + r12 + 22], 1
	QUAD $0x172244203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rdx + r12 + 23], 1
	QUAD $0x182254203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r12 + 24], 1
	QUAD $0x19224c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rdx + r12 + 25], 1
	QUAD $0x1a225c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r12 + 26], 1
	QUAD $0x1b224c203a0f4666; BYTE $0x01       // pinsrb    xmm9, byte [rdx + r12 + 27], 1
	QUAD $0x1c2264203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rdx + r12 + 28], 1
	QUAD $0x1d226c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rdx + r12 + 29], 1
	QUAD $0x1e2264203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rdx + r12 + 30], 1
	LONG $0x0274b60f; BYTE $0x1f               // movzx    esi, byte [rdx + rax + 31]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x1f2244203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rdx + r12 + 31], 1
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x0213327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 19], 2
	QUAD $0x02143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 2
	QUAD $0x02153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 2
	QUAD $0x0216325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 22], 2
	QUAD $0x173244203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rsi + 23], 2
	QUAD $0x183254203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rsi + 24], 2
	QUAD $0x0219324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 25], 2
	QUAD $0x1a325c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rsi + 26], 2
	QUAD $0x1b324c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rsi + 27], 2
	QUAD $0x021c3264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 28], 2
	QUAD $0x1d326c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rsi + 29], 2
	QUAD $0x1e3264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rsi + 30], 2
	QUAD $0x021f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 2
	QUAD $0x13127c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r10 + 19], 3
	QUAD $0x132a7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r13 + 19], 4
	QUAD $0x05130a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 19], 5
	QUAD $0x06133a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 19], 6
	QUAD $0x000000d024848b48                   // mov    rax, qword [rsp + 208]
	QUAD $0x0713027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 19], 7
	QUAD $0x130a7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r9 + 19], 8
	QUAD $0x09131a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 19], 9
	QUAD $0x131a7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rdx + r11 + 19], 10
	QUAD $0x13327c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r14 + 19], 11
	QUAD $0x133a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r15 + 19], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0d13327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 19], 13
	LONG $0x24648b4c; BYTE $0x18               // mov    r12, qword [rsp + 24]
	QUAD $0x13227c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r12 + 19], 14
	QUAD $0x13027c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r8 + 19], 15
	QUAD $0x141274203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r10 + 20], 3
	QUAD $0x142a74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r13 + 20], 4
	QUAD $0x05140a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 20], 5
	QUAD $0x06143a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 20], 6
	QUAD $0x07140274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 20], 7
	QUAD $0x140a74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r9 + 20], 8
	QUAD $0x09141a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 20], 9
	QUAD $0x141a74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r11 + 20], 10
	QUAD $0x143274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r14 + 20], 11
	QUAD $0x143a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 20], 12
	QUAD $0x0d143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 13
	QUAD $0x142274203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r12 + 20], 14
	QUAD $0x0000a024aceb0f66; BYTE $0x00       // por    xmm5, oword [rsp + 160]
	QUAD $0x140274203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rdx + r8 + 20], 15
	QUAD $0x00b024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xff               // pcmpeqb    xmm7, xmm15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4166; BYTE $0xf7               // pcmpeqb    xmm6, xmm15
	QUAD $0x000000d0b5db0f66                   // pand    xmm6, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0x151254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r10 + 21], 3
	QUAD $0x152a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r13 + 21], 4
	QUAD $0x05150a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 21], 5
	QUAD $0x06153a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 21], 6
	QUAD $0x07150254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 21], 7
	QUAD $0x150a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r9 + 21], 8
	QUAD $0x09151a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 21], 9
	QUAD $0x151a54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r11 + 21], 10
	QUAD $0x153254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r14 + 21], 11
	QUAD $0x153a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 21], 12
	QUAD $0x0d153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 13
	QUAD $0x152254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r12 + 21], 14
	QUAD $0x150254203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r8 + 21], 15
	LONG $0x740f4166; BYTE $0xd7               // pcmpeqb    xmm2, xmm15
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI2_14] */
	LONG $0xd7db0f66                           // pand    xmm2, xmm7
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0xd5eb0f66                           // por    xmm2, xmm5
	QUAD $0x16125c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r10 + 22], 3
	QUAD $0x162a5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r13 + 22], 4
	QUAD $0x05160a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 22], 5
	QUAD $0x06163a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 22], 6
	QUAD $0x0716025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 22], 7
	QUAD $0x160a5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r9 + 22], 8
	QUAD $0x09161a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 22], 9
	QUAD $0x161a5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r11 + 22], 10
	QUAD $0x16325c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r14 + 22], 11
	QUAD $0x163a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r15 + 22], 12
	QUAD $0x0d16325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 22], 13
	QUAD $0x16225c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r12 + 22], 14
	QUAD $0x16025c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r8 + 22], 15
	QUAD $0x171244203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r10 + 23], 3
	QUAD $0x172a44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r13 + 23], 4
	QUAD $0x170a44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rcx + 23], 5
	QUAD $0x173a44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rdx + rdi + 23], 6
	QUAD $0x170244203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rdx + rax + 23], 7
	QUAD $0x170a44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r9 + 23], 8
	QUAD $0x171a44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rdx + rbx + 23], 9
	QUAD $0x171a44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + r11 + 23], 10
	QUAD $0x173244203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r14 + 23], 11
	QUAD $0x173a44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r15 + 23], 12
	QUAD $0x173244203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rsi + 23], 13
	QUAD $0x172244203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + r12 + 23], 14
	QUAD $0x170244203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r8 + 23], 15
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x000000f0ad6f0f66                   // movdqa    xmm5, oword 240[rbp] /* [rip + .LCPI2_15] */
	LONG $0xdddb0f66                           // pand    xmm3, xmm5
	LONG $0x740f4566; BYTE $0xc7               // pcmpeqb    xmm8, xmm15
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	QUAD $0x19124c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r10 + 25], 3
	QUAD $0x192a4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r13 + 25], 4
	QUAD $0x05190a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 25], 5
	QUAD $0x06193a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 25], 6
	QUAD $0x0719024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 25], 7
	QUAD $0x190a4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r9 + 25], 8
	QUAD $0x09191a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 25], 9
	QUAD $0x191a4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r11 + 25], 10
	QUAD $0x19324c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r14 + 25], 11
	QUAD $0x193a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r15 + 25], 12
	QUAD $0x0d19324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 25], 13
	QUAD $0x19224c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r12 + 25], 14
	QUAD $0x19024c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r8 + 25], 15
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x740f4166; BYTE $0xcf               // pcmpeqb    xmm1, xmm15
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	QUAD $0x000000a09d6f0f66                   // movdqa    xmm3, oword 160[rbp] /* [rip + .LCPI2_10] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd1f80f66                           // psubb    xmm2, xmm1
	QUAD $0x181254203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r10 + 24], 3
	QUAD $0x182a54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r13 + 24], 4
	QUAD $0x180a54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rcx + 24], 5
	QUAD $0x183a54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rdx + rdi + 24], 6
	QUAD $0x180254203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rdx + rax + 24], 7
	QUAD $0x180a54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r9 + 24], 8
	QUAD $0x181a54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rbx + 24], 9
	QUAD $0x181a54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r11 + 24], 10
	QUAD $0x183254203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r14 + 24], 11
	QUAD $0x183a54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r15 + 24], 12
	QUAD $0x183254203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rsi + 24], 13
	QUAD $0x182254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r12 + 24], 14
	QUAD $0x180254203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + r8 + 24], 15
	LONG $0x740f4566; BYTE $0xd7               // pcmpeqb    xmm10, xmm15
	LONG $0xdb0f4466; BYTE $0xd3               // pand    xmm10, xmm3
	QUAD $0x1a125c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r10 + 26], 3
	QUAD $0x1a2a5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r13 + 26], 4
	QUAD $0x1a0a5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rcx + 26], 5
	QUAD $0x1a3a5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rdx + rdi + 26], 6
	QUAD $0x1a025c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rdx + rax + 26], 7
	QUAD $0x1a0a5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r9 + 26], 8
	QUAD $0x1a1a5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rbx + 26], 9
	QUAD $0x1a1a5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r11 + 26], 10
	QUAD $0x1a325c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r14 + 26], 11
	QUAD $0x1a3a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r15 + 26], 12
	QUAD $0x1a325c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rsi + 26], 13
	QUAD $0x1a225c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r12 + 26], 14
	QUAD $0x1a025c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r8 + 26], 15
	LONG $0x740f4566; BYTE $0xdf               // pcmpeqb    xmm11, xmm15
	QUAD $0x0000b09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 176[rbp] /* [rip + .LCPI2_11] */
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0xeb0f4466; BYTE $0xda               // por    xmm11, xmm2
	QUAD $0x1b124c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r10 + 27], 3
	QUAD $0x1b2a4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r13 + 27], 4
	QUAD $0x1b0a4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rdx + rcx + 27], 5
	QUAD $0x1b3a4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rdx + rdi + 27], 6
	QUAD $0x1b024c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rdx + rax + 27], 7
	QUAD $0x1b0a4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r9 + 27], 8
	QUAD $0x1b1a4c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rdx + rbx + 27], 9
	QUAD $0x1b1a4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r11 + 27], 10
	QUAD $0x1b324c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r14 + 27], 11
	QUAD $0x1b3a4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r15 + 27], 12
	QUAD $0x1b324c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rsi + 27], 13
	QUAD $0x1b224c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r12 + 27], 14
	QUAD $0x1b024c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r8 + 27], 15
	QUAD $0x1c1264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r10 + 28], 3
	QUAD $0x1c2a64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r13 + 28], 4
	QUAD $0x051c0a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 28], 5
	QUAD $0x061c3a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 28], 6
	QUAD $0x071c0264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 28], 7
	QUAD $0x1c0a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r9 + 28], 8
	QUAD $0x091c1a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 28], 9
	QUAD $0x1c1a64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r11 + 28], 10
	QUAD $0x1c3264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r14 + 28], 11
	QUAD $0x1c3a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 28], 12
	QUAD $0x0d1c3264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 28], 13
	QUAD $0x1c2264203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r12 + 28], 14
	QUAD $0x1c0264203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rdx + r8 + 28], 15
	QUAD $0x1d126c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r10 + 29], 3
	QUAD $0x1d2a6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rdx + r13 + 29], 4
	QUAD $0x1d0a6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rcx + 29], 5
	QUAD $0x1d3a6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rdx + rdi + 29], 6
	QUAD $0x1d026c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rdx + rax + 29], 7
	QUAD $0x1d0a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r9 + 29], 8
	QUAD $0x1d1a6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rdx + rbx + 29], 9
	QUAD $0x1d1a6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + r11 + 29], 10
	QUAD $0x1d326c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + r14 + 29], 11
	QUAD $0x1d3a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r15 + 29], 12
	QUAD $0x1d326c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + rsi + 29], 13
	QUAD $0x1d226c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r12 + 29], 14
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0x740f4566; BYTE $0xcf               // pcmpeqb    xmm9, xmm15
	QUAD $0x0000c08ddb0f4466; BYTE $0x00       // pand    xmm9, oword 192[rbp] /* [rip + .LCPI2_12] */
	LONG $0x740f4166; BYTE $0xe7               // pcmpeqb    xmm4, xmm15
	QUAD $0x000000d0a5db0f66                   // pand    xmm4, oword 208[rbp] /* [rip + .LCPI2_13] */
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	QUAD $0x1d026c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + r8 + 29], 15
	LONG $0x740f4566; BYTE $0xef               // pcmpeqb    xmm13, xmm15
	LONG $0xdb0f4466; BYTE $0xef               // pand    xmm13, xmm7
	LONG $0xeb0f4466; BYTE $0xec               // por    xmm13, xmm4
	QUAD $0x1e1264203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r10 + 30], 3
	QUAD $0x1f1244203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r10 + 31], 3
	QUAD $0x1e2a64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rdx + r13 + 30], 4
	QUAD $0x1f2a44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r13 + 31], 4
	QUAD $0x1e0a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rcx + 30], 5
	QUAD $0x051f0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 31], 5
	QUAD $0x1e3a64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rdx + rdi + 30], 6
	QUAD $0x061f3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 31], 6
	QUAD $0x1e0264203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rdx + rax + 30], 7
	QUAD $0x071f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 31], 7
	QUAD $0x1e0a64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r9 + 30], 8
	QUAD $0x1f0a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r9 + 31], 8
	QUAD $0x1e1a64203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rdx + rbx + 30], 9
	QUAD $0x091f1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 31], 9
	QUAD $0x1e1a64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + r11 + 30], 10
	QUAD $0x1f1a44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r11 + 31], 10
	QUAD $0x1e3264203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r14 + 30], 11
	QUAD $0x1f3244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r14 + 31], 11
	QUAD $0x1e3a64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r15 + 30], 12
	QUAD $0x1f3a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 31], 12
	QUAD $0x1e3264203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + rsi + 30], 13
	QUAD $0x0d1f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 13
	QUAD $0x1e2264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r12 + 30], 14
	QUAD $0x1f2244203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r12 + 31], 14
	QUAD $0x1e0264203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + r8 + 30], 15
	QUAD $0x1f0244203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r8 + 31], 15
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x740f4566; BYTE $0xe7               // pcmpeqb    xmm12, xmm15
	LONG $0xdb0f4466; BYTE $0xe5               // pand    xmm12, xmm5
	LONG $0x740f4166; BYTE $0xc7               // pcmpeqb    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xc6db0f66                           // pand    xmm0, xmm6
	LONG $0xeb0f4166; BYTE $0xc4               // por    xmm0, xmm12
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000c024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 192]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd9610f66                           // punpcklwd    xmm3, xmm1
	LONG $0xd1690f66                           // punpckhwd    xmm2, xmm1
	LONG $0x680f4466; BYTE $0xc0               // punpckhbw    xmm8, xmm0
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	LONG $0x647f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm4
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm2
	LONG $0x1c7f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e0248c3b48                   // cmp    rcx, qword [rsp + 224]
	JNE  LBB2_186
	QUAD $0x000000e824bc8b4c                   // mov    r15, qword [rsp + 232]
	QUAD $0x000000e024bc3b4c                   // cmp    r15, qword [rsp + 224]
	LONG $0x24748a44; BYTE $0x08               // mov    r14b, byte [rsp + 8]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	JNE  LBB2_69
	JMP  LBB2_135

LBB2_188:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	LONG $0x24448948; BYTE $0x40         // mov    qword [rsp + 64], rax
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0x247c894c; BYTE $0x20         // mov    qword [rsp + 32], r15
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x10         // mov    qword [rsp + 16], rax
	LONG $0x6e0f4166; BYTE $0xc6         // movd    xmm0, r14d
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	WORD $0x3145; BYTE $0xff             // xor    r15d, r15d
	QUAD $0x000080bd6f0f4466; BYTE $0x00 // movdqa    xmm15, oword 128[rbp] /* [rip + .LCPI2_8] */
	LONG $0x6f0f4466; WORD $0x104d       // movdqa    xmm9, oword 16[rbp] /* [rip + .LCPI2_1] */
	LONG $0x6f0f4466; WORD $0x2055       // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI2_2] */
	LONG $0x6f0f4466; WORD $0x305d       // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI2_3] */
	LONG $0x6f0f4466; WORD $0x4065       // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI2_4] */
	LONG $0x6f0f4466; WORD $0x506d       // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI2_5] */
	LONG $0x6f0f4466; WORD $0x6075       // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI2_6] */

LBB2_189:
	LONG $0x247c894c; BYTE $0x30               // mov    qword [rsp + 48], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x34b70f46; BYTE $0x3a               // movzx    r14d, word [rdx + r15]
	LONG $0x44b70f42; WORD $0x023a             // movzx    eax, word [rdx + r15 + 2]
	LONG $0x54b70f46; WORD $0x043a             // movzx    r10d, word [rdx + r15 + 4]
	LONG $0x74b70f42; WORD $0x063a             // movzx    esi, word [rdx + r15 + 6]
	LONG $0x5cb70f46; WORD $0x083a             // movzx    r11d, word [rdx + r15 + 8]
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0xc40f4266; WORD $0x0224; BYTE $0x01 // pinsrw    xmm4, word [rdx + r8], 1
	LONG $0xc40f4266; WORD $0x0a24; BYTE $0x02 // pinsrw    xmm4, word [rdx + r9], 2
	LONG $0xc40f4266; WORD $0x2224; BYTE $0x03 // pinsrw    xmm4, word [rdx + r12], 3
	LONG $0xc40f4266; WORD $0x2a24; BYTE $0x04 // pinsrw    xmm4, word [rdx + r13], 4
	LONG $0x24c40f66; WORD $0x050a             // pinsrw    xmm4, word [rdx + rcx], 5
	LONG $0x24c40f66; WORD $0x063a             // pinsrw    xmm4, word [rdx + rdi], 6
	LONG $0x24c40f66; WORD $0x071a             // pinsrw    xmm4, word [rdx + rbx], 7
	LONG $0x74b70f46; WORD $0x0a3a             // movzx    r14d, word [rdx + r15 + 10]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x01020274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 2], 1
	QUAD $0x02020a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 2], 2
	QUAD $0x03022274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 2], 3
	LONG $0x44b70f42; WORD $0x0c3a             // movzx    eax, word [rdx + r15 + 12]
	LONG $0x28244489                           // mov    dword [rsp + 40], eax
	QUAD $0x04022a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 2], 4
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x44b70f42; WORD $0x0e3a             // movzx    eax, word [rdx + r15 + 14]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x74c40f66; WORD $0x020a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 2], 5
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x74b70f42; WORD $0x103a             // movzx    esi, word [rdx + r15 + 16]
	LONG $0x74c40f66; WORD $0x023a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 2], 6
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x44b70f42; WORD $0x123a             // movzx    eax, word [rdx + r15 + 18]
	LONG $0x38244489                           // mov    dword [rsp + 56], eax
	LONG $0x74c40f66; WORD $0x021a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 2], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xcef80f66                           // psubb    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	LONG $0x54b70f46; WORD $0x143a             // movzx    r10d, word [rdx + r15 + 20]
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	QUAD $0x01040254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 4], 1
	QUAD $0x02040a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 4], 2
	QUAD $0x03042254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 4], 3
	QUAD $0x04042a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x043a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 4], 6
	LONG $0x54c40f66; WORD $0x041a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 4], 7
	QUAD $0x0106026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 6], 1
	QUAD $0x02060a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 6], 2
	QUAD $0x0306226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 6], 3
	QUAD $0x04062a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 6], 4
	LONG $0x6cc40f66; WORD $0x060a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 6], 5
	LONG $0x6cc40f66; WORD $0x063a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 6], 6
	LONG $0x6cc40f66; WORD $0x061a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 6], 7
	QUAD $0x0108025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 8], 1
	QUAD $0x02080a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 8], 2
	QUAD $0x0308225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 8], 3
	QUAD $0x04082a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 8], 4
	LONG $0x5cc40f66; WORD $0x080a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 8], 5
	LONG $0x5cc40f66; WORD $0x083a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 8], 6
	LONG $0x5cc40f66; WORD $0x081a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 8], 7
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x7c6e0f66; WORD $0x2824             // movd    xmm7, dword [rsp + 40]
	LONG $0x44b70f42; WORD $0x163a             // movzx    eax, word [rdx + r15 + 22]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0xdb0f4166; BYTE $0xd1               // pand    xmm2, xmm9
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x646e0f66; WORD $0x1824             // movd    xmm4, dword [rsp + 24]
	LONG $0x5cb70f46; WORD $0x183a             // movzx    r11d, word [rdx + r15 + 24]
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x74b70f42; WORD $0x1a3a             // movzx    esi, word [rdx + r15 + 26]
	QUAD $0x010a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 10], 1
	QUAD $0x020a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 10], 2
	QUAD $0x030a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 10], 3
	QUAD $0x040a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 10], 4
	LONG $0x74c40f66; WORD $0x0a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 10], 5
	LONG $0x74c40f66; WORD $0x0a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 10], 6
	LONG $0x74c40f66; WORD $0x0a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 10], 7
	QUAD $0x010c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 12], 1
	QUAD $0x020c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 12], 2
	QUAD $0x030c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 12], 3
	QUAD $0x040c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 12], 4
	LONG $0x7cc40f66; WORD $0x0c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 12], 5
	LONG $0x7cc40f66; WORD $0x0c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 12], 6
	LONG $0x7cc40f66; WORD $0x0c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 12], 7
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4466; WORD $0x2444; BYTE $0x38 // movd    xmm8, dword [rsp + 56]
	LONG $0x74b70f46; WORD $0x1c3a             // movzx    r14d, word [rdx + r15 + 28]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	LONG $0x54b70f46; WORD $0x1e3a             // movzx    r10d, word [rdx + r15 + 30]
	QUAD $0x010e0264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 14], 1
	QUAD $0x020e0a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 14], 2
	QUAD $0x030e2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 14], 3
	QUAD $0x040e2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 14], 4
	LONG $0x64c40f66; WORD $0x0e0a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 14], 5
	LONG $0x64c40f66; WORD $0x0e3a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 14], 6
	LONG $0x64c40f66; WORD $0x0e1a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 14], 7
	QUAD $0x01120244c40f4666                   // pinsrw    xmm8, word [rdx + r8 + 18], 1
	QUAD $0x02120a44c40f4666                   // pinsrw    xmm8, word [rdx + r9 + 18], 2
	QUAD $0x03122244c40f4666                   // pinsrw    xmm8, word [rdx + r12 + 18], 3
	QUAD $0x04122a44c40f4666                   // pinsrw    xmm8, word [rdx + r13 + 18], 4
	QUAD $0x05120a44c40f4466                   // pinsrw    xmm8, word [rdx + rcx + 18], 5
	QUAD $0x06123a44c40f4466                   // pinsrw    xmm8, word [rdx + rdi + 18], 6
	QUAD $0x07121a44c40f4466                   // pinsrw    xmm8, word [rdx + rbx + 18], 7
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x203a             // movzx    eax, word [rdx + r15 + 32]
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x750f4466; BYTE $0xc0               // pcmpeqw    xmm8, xmm0
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf80f4166; BYTE $0xf8               // psubb    xmm7, xmm8
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x5cb70f46; WORD $0x223a             // movzx    r11d, word [rdx + r15 + 34]
	QUAD $0x0110024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 16], 1
	QUAD $0x02100a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 16], 2
	QUAD $0x0310224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 16], 3
	QUAD $0x04102a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 16], 4
	LONG $0x4cc40f66; WORD $0x100a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 16], 5
	LONG $0x4cc40f66; WORD $0x103a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 16], 6
	LONG $0x4cc40f66; WORD $0x101a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 16], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0x74b70f42; WORD $0x243a             // movzx    esi, word [rdx + r15 + 36]
	LONG $0x38247489                           // mov    dword [rsp + 56], esi
	QUAD $0x0114026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 20], 1
	QUAD $0x02140a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 20], 2
	QUAD $0x0314226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 20], 3
	QUAD $0x04142a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 20], 4
	LONG $0x6cc40f66; WORD $0x140a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 20], 5
	LONG $0x6cc40f66; WORD $0x143a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 20], 6
	LONG $0x6cc40f66; WORD $0x141a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 20], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe9               // pand    xmm5, xmm9
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6e0f4166; BYTE $0xfe               // movd    xmm7, r14d
	LONG $0x74b70f42; WORD $0x263a             // movzx    esi, word [rdx + r15 + 38]
	LONG $0x18247489                           // mov    dword [rsp + 24], esi
	QUAD $0x01160254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 22], 1
	QUAD $0x02160a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 22], 2
	QUAD $0x03162254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 22], 3
	QUAD $0x04162a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 22], 4
	LONG $0x54c40f66; WORD $0x160a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 22], 5
	LONG $0x54c40f66; WORD $0x163a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 22], 6
	LONG $0x54c40f66; WORD $0x161a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 22], 7
	QUAD $0x0118025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 24], 1
	QUAD $0x02180a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 24], 2
	QUAD $0x0318225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 24], 3
	QUAD $0x04182a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 24], 4
	LONG $0x5cc40f66; WORD $0x180a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 24], 5
	LONG $0x5cc40f66; WORD $0x183a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 24], 6
	LONG $0x5cc40f66; WORD $0x181a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 24], 7
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x74b70f46; WORD $0x283a             // movzx    r14d, word [rdx + r15 + 40]
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x2a3a             // movzx    eax, word [rdx + r15 + 42]
	LONG $0x28244489                           // mov    dword [rsp + 40], eax
	QUAD $0x011a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 26], 1
	QUAD $0x021a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 26], 2
	QUAD $0x031a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 26], 3
	QUAD $0x041a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 26], 4
	LONG $0x74c40f66; WORD $0x1a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 26], 5
	LONG $0x74c40f66; WORD $0x1a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 26], 6
	LONG $0x74c40f66; WORD $0x1a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 26], 7
	QUAD $0x011c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 28], 1
	QUAD $0x021c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 28], 2
	QUAD $0x031c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 28], 3
	QUAD $0x041c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 28], 4
	LONG $0x7cc40f66; WORD $0x1c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 28], 5
	LONG $0x7cc40f66; WORD $0x1c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 28], 6
	LONG $0x7cc40f66; WORD $0x1c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 28], 7
	QUAD $0x011e0254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 30], 1
	QUAD $0x021e0a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 30], 2
	QUAD $0x031e2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 30], 3
	QUAD $0x041e2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 30], 4
	LONG $0x54c40f66; WORD $0x1e0a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 30], 5
	LONG $0x54c40f66; WORD $0x1e3a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 30], 6
	LONG $0x54c40f66; WORD $0x1e1a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 30], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x54b70f46; WORD $0x2c3a             // movzx    r10d, word [rdx + r15 + 44]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x746e0f66; WORD $0x3824             // movd    xmm6, dword [rsp + 56]
	LONG $0x74b70f42; WORD $0x2e3a             // movzx    esi, word [rdx + r15 + 46]
	QUAD $0x0120026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 32], 1
	QUAD $0x02200a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 32], 2
	QUAD $0x0320226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 32], 3
	QUAD $0x04202a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 32], 4
	LONG $0x6cc40f66; WORD $0x200a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 32], 5
	LONG $0x6cc40f66; WORD $0x203a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 32], 6
	QUAD $0x0122024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 34], 1
	QUAD $0x02220a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 34], 2
	QUAD $0x0322224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 34], 3
	QUAD $0x04222a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 34], 4
	LONG $0x4cc40f66; WORD $0x220a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 34], 5
	LONG $0x4cc40f66; WORD $0x223a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 34], 6
	LONG $0x4cc40f66; WORD $0x221a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 34], 7
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0x5c6e0f66; WORD $0x1824             // movd    xmm3, dword [rsp + 24]
	LONG $0x5cb70f46; WORD $0x303a             // movzx    r11d, word [rdx + r15 + 48]
	LONG $0x6cc40f66; WORD $0x201a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 32], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	QUAD $0x01240274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 36], 1
	QUAD $0x02240a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 36], 2
	QUAD $0x03242274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 36], 3
	QUAD $0x04242a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 36], 4
	LONG $0x74c40f66; WORD $0x240a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 36], 5
	LONG $0x74c40f66; WORD $0x243a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 36], 6
	LONG $0x74c40f66; WORD $0x241a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 36], 7
	QUAD $0x0126025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 38], 1
	QUAD $0x02260a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 38], 2
	QUAD $0x0326225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 38], 3
	QUAD $0x04262a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 38], 4
	LONG $0x5cc40f66; WORD $0x260a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 38], 5
	LONG $0x5cc40f66; WORD $0x263a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 38], 6
	LONG $0x5cc40f66; WORD $0x261a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 38], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x6e0f4166; BYTE $0xee               // movd    xmm5, r14d
	QUAD $0x0128026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 40], 1
	QUAD $0x02280a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 40], 2
	QUAD $0x0328226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 40], 3
	QUAD $0x04282a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 40], 4
	LONG $0x6cc40f66; WORD $0x280a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 40], 5
	LONG $0x6cc40f66; WORD $0x283a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 40], 6
	LONG $0x44b70f42; WORD $0x323a             // movzx    eax, word [rdx + r15 + 50]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf1               // pand    xmm6, xmm9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x4c6e0f66; WORD $0x2824             // movd    xmm1, dword [rsp + 40]
	LONG $0x74b70f46; WORD $0x343a             // movzx    r14d, word [rdx + r15 + 52]
	LONG $0x6cc40f66; WORD $0x281a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 40], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0xdb0f4166; BYTE $0xda               // pand    xmm3, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x54b70f46; WORD $0x363a             // movzx    r10d, word [rdx + r15 + 54]
	QUAD $0x012a024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 42], 1
	QUAD $0x022a0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 42], 2
	QUAD $0x032a224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 42], 3
	QUAD $0x042a2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 42], 4
	LONG $0x4cc40f66; WORD $0x2a0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 42], 5
	LONG $0x4cc40f66; WORD $0x2a3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 42], 6
	LONG $0x4cc40f66; WORD $0x2a1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 42], 7
	QUAD $0x012c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 44], 1
	QUAD $0x022c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 44], 2
	QUAD $0x032c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 44], 3
	QUAD $0x042c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 44], 4
	LONG $0x7cc40f66; WORD $0x2c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 44], 5
	LONG $0x7cc40f66; WORD $0x2c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 44], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x74b70f42; WORD $0x383a             // movzx    esi, word [rdx + r15 + 56]
	LONG $0x7cc40f66; WORD $0x2c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 44], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x05               // psllw    xmm1, 5
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x5cb70f46; WORD $0x3a3a             // movzx    r11d, word [rdx + r15 + 58]
	QUAD $0x012e025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 46], 1
	QUAD $0x022e0a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 46], 2
	QUAD $0x032e225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 46], 3
	QUAD $0x042e2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 46], 4
	LONG $0x5cc40f66; WORD $0x2e0a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 46], 5
	LONG $0x5cc40f66; WORD $0x2e3a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 46], 6
	LONG $0x5cc40f66; WORD $0x2e1a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 46], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x3c3a             // movzx    eax, word [rdx + r15 + 60]
	LONG $0x7cb70f46; WORD $0x3e3a             // movzx    r15d, word [rdx + r15 + 62]
	QUAD $0x0132024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 50], 1
	QUAD $0x02320a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 50], 2
	QUAD $0x0332224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 50], 3
	QUAD $0x04322a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x320a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 50], 5
	LONG $0x4cc40f66; WORD $0x323a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 50], 6
	LONG $0x4cc40f66; WORD $0x321a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 50], 7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	QUAD $0x01300274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 48], 1
	QUAD $0x02300a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 48], 2
	QUAD $0x03302274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 48], 3
	QUAD $0x04302a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 48], 4
	LONG $0x74c40f66; WORD $0x300a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 48], 5
	LONG $0x74c40f66; WORD $0x303a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 48], 6
	LONG $0x74c40f66; WORD $0x301a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 48], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x0134024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 52], 1
	QUAD $0x02340a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 52], 2
	QUAD $0x0334224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 52], 3
	QUAD $0x04342a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 52], 4
	LONG $0x4cc40f66; WORD $0x340a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 52], 5
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x4cc40f66; WORD $0x343a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 52], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf2               // movd    xmm6, r10d
	LONG $0x4cc40f66; WORD $0x341a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 52], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x02               // psllw    xmm1, 2
	LONG $0xdb0f4166; BYTE $0xc9               // pand    xmm1, xmm9
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0xee6e0f66                           // movd    xmm5, esi
	QUAD $0x01360274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 54], 1
	QUAD $0x02360a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 54], 2
	QUAD $0x03362274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 54], 3
	QUAD $0x04362a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x363a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 54], 6
	LONG $0x74c40f66; WORD $0x361a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 54], 7
	QUAD $0x0138026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 56], 1
	QUAD $0x02380a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 56], 2
	QUAD $0x0338226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 56], 3
	QUAD $0x04382a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 56], 4
	LONG $0x6cc40f66; WORD $0x380a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 56], 5
	LONG $0x6cc40f66; WORD $0x383a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 56], 6
	LONG $0x6cc40f66; WORD $0x381a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 56], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x03               // psllw    xmm6, 3
	LONG $0xdb0f4166; BYTE $0xf2               // pand    xmm6, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x013a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 58], 1
	QUAD $0x023a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 58], 2
	QUAD $0x033a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 58], 3
	QUAD $0x043a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 58], 4
	LONG $0x74c40f66; WORD $0x3a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 58], 5
	LONG $0x74c40f66; WORD $0x3a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 58], 6
	LONG $0x74c40f66; WORD $0x3a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 58], 7
	LONG $0xe9eb0f66                           // por    xmm5, xmm1
	LONG $0xc86e0f66                           // movd    xmm1, eax
	QUAD $0x013c024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 60], 1
	QUAD $0x023c0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 60], 2
	QUAD $0x033c224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 60], 3
	QUAD $0x043c2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 60], 4
	LONG $0x4cc40f66; WORD $0x3c0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 60], 5
	LONG $0x4cc40f66; WORD $0x3c3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 60], 6
	LONG $0x4cc40f66; WORD $0x3c1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 60], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x06               // psllw    xmm1, 6
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf7               // movd    xmm6, r15d
	QUAD $0x013e0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 62], 1
	QUAD $0x023e0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 62], 2
	QUAD $0x033e2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 62], 3
	QUAD $0x043e2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 62], 4
	LONG $0x74c40f66; WORD $0x3e0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 62], 5
	LONG $0x74c40f66; WORD $0x3e3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 62], 6
	LONG $0x74c40f66; WORD $0x3e1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 62], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0xdb0f4166; BYTE $0xf6               // pand    xmm6, xmm14
	LONG $0xf1eb0f66                           // por    xmm6, xmm1
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	LONG $0xeb6f0f66                           // movdqa    xmm5, xmm3
	LONG $0xee6c0f66                           // punpcklqdq    xmm5, xmm6
	QUAD $0x00000090bd6f0f66                   // movdqa    xmm7, oword 144[rbp] /* [rip + .LCPI2_9] */
	LONG $0x00380f66; BYTE $0xef               // pshufb    xmm5, xmm7
	LONG $0x00380f66; BYTE $0xcf               // pshufb    xmm1, xmm7
	LONG $0xcd610f66                           // punpcklwd    xmm1, xmm5
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe2600f66                           // punpcklbw    xmm4, xmm2
	LONG $0xe3610f66                           // punpcklwd    xmm4, xmm3
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	LONG $0x247f0ff3; BYTE $0x8e               // movdqu    oword [rsi + 4*rcx], xmm4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	LONG $0x4c7f0ff3; WORD $0x108e             // movdqu    oword [rsi + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB2_189
	QUAD $0x0000009824bc8b4c                   // mov    r15, qword [rsp + 152]
	LONG $0x247c3b4c; BYTE $0x20               // cmp    r15, qword [rsp + 32]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	LONG $0x24748b44; BYTE $0x08               // mov    r14d, dword [rsp + 8]
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	JNE  LBB2_92
	JMP  LBB2_139

LBB2_191:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	LONG $0x24448948; BYTE $0x40         // mov    qword [rsp + 64], rax
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0x247c894c; BYTE $0x20         // mov    qword [rsp + 32], r15
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x10         // mov    qword [rsp + 16], rax
	LONG $0x6e0f4166; BYTE $0xc6         // movd    xmm0, r14d
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	WORD $0x3145; BYTE $0xff             // xor    r15d, r15d
	QUAD $0x000080bd6f0f4466; BYTE $0x00 // movdqa    xmm15, oword 128[rbp] /* [rip + .LCPI2_8] */
	LONG $0x6f0f4466; WORD $0x104d       // movdqa    xmm9, oword 16[rbp] /* [rip + .LCPI2_1] */
	LONG $0x6f0f4466; WORD $0x2055       // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI2_2] */
	LONG $0x6f0f4466; WORD $0x305d       // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI2_3] */
	LONG $0x6f0f4466; WORD $0x4065       // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI2_4] */
	LONG $0x6f0f4466; WORD $0x506d       // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI2_5] */
	LONG $0x6f0f4466; WORD $0x6075       // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI2_6] */

LBB2_192:
	LONG $0x247c894c; BYTE $0x30               // mov    qword [rsp + 48], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x34b70f46; BYTE $0x3a               // movzx    r14d, word [rdx + r15]
	LONG $0x44b70f42; WORD $0x023a             // movzx    eax, word [rdx + r15 + 2]
	LONG $0x54b70f46; WORD $0x043a             // movzx    r10d, word [rdx + r15 + 4]
	LONG $0x74b70f42; WORD $0x063a             // movzx    esi, word [rdx + r15 + 6]
	LONG $0x5cb70f46; WORD $0x083a             // movzx    r11d, word [rdx + r15 + 8]
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0xc40f4266; WORD $0x0224; BYTE $0x01 // pinsrw    xmm4, word [rdx + r8], 1
	LONG $0xc40f4266; WORD $0x0a24; BYTE $0x02 // pinsrw    xmm4, word [rdx + r9], 2
	LONG $0xc40f4266; WORD $0x2224; BYTE $0x03 // pinsrw    xmm4, word [rdx + r12], 3
	LONG $0xc40f4266; WORD $0x2a24; BYTE $0x04 // pinsrw    xmm4, word [rdx + r13], 4
	LONG $0x24c40f66; WORD $0x050a             // pinsrw    xmm4, word [rdx + rcx], 5
	LONG $0x24c40f66; WORD $0x063a             // pinsrw    xmm4, word [rdx + rdi], 6
	LONG $0x24c40f66; WORD $0x071a             // pinsrw    xmm4, word [rdx + rbx], 7
	LONG $0x74b70f46; WORD $0x0a3a             // movzx    r14d, word [rdx + r15 + 10]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x01020274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 2], 1
	QUAD $0x02020a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 2], 2
	QUAD $0x03022274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 2], 3
	LONG $0x44b70f42; WORD $0x0c3a             // movzx    eax, word [rdx + r15 + 12]
	LONG $0x28244489                           // mov    dword [rsp + 40], eax
	QUAD $0x04022a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 2], 4
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x44b70f42; WORD $0x0e3a             // movzx    eax, word [rdx + r15 + 14]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x74c40f66; WORD $0x020a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 2], 5
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x74b70f42; WORD $0x103a             // movzx    esi, word [rdx + r15 + 16]
	LONG $0x74c40f66; WORD $0x023a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 2], 6
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x44b70f42; WORD $0x123a             // movzx    eax, word [rdx + r15 + 18]
	LONG $0x38244489                           // mov    dword [rsp + 56], eax
	LONG $0x74c40f66; WORD $0x021a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 2], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xcef80f66                           // psubb    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	LONG $0x54b70f46; WORD $0x143a             // movzx    r10d, word [rdx + r15 + 20]
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	QUAD $0x01040254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 4], 1
	QUAD $0x02040a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 4], 2
	QUAD $0x03042254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 4], 3
	QUAD $0x04042a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x043a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 4], 6
	LONG $0x54c40f66; WORD $0x041a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 4], 7
	QUAD $0x0106026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 6], 1
	QUAD $0x02060a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 6], 2
	QUAD $0x0306226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 6], 3
	QUAD $0x04062a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 6], 4
	LONG $0x6cc40f66; WORD $0x060a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 6], 5
	LONG $0x6cc40f66; WORD $0x063a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 6], 6
	LONG $0x6cc40f66; WORD $0x061a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 6], 7
	QUAD $0x0108025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 8], 1
	QUAD $0x02080a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 8], 2
	QUAD $0x0308225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 8], 3
	QUAD $0x04082a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 8], 4
	LONG $0x5cc40f66; WORD $0x080a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 8], 5
	LONG $0x5cc40f66; WORD $0x083a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 8], 6
	LONG $0x5cc40f66; WORD $0x081a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 8], 7
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x7c6e0f66; WORD $0x2824             // movd    xmm7, dword [rsp + 40]
	LONG $0x44b70f42; WORD $0x163a             // movzx    eax, word [rdx + r15 + 22]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0xdb0f4166; BYTE $0xd1               // pand    xmm2, xmm9
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x646e0f66; WORD $0x1824             // movd    xmm4, dword [rsp + 24]
	LONG $0x5cb70f46; WORD $0x183a             // movzx    r11d, word [rdx + r15 + 24]
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x74b70f42; WORD $0x1a3a             // movzx    esi, word [rdx + r15 + 26]
	QUAD $0x010a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 10], 1
	QUAD $0x020a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 10], 2
	QUAD $0x030a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 10], 3
	QUAD $0x040a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 10], 4
	LONG $0x74c40f66; WORD $0x0a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 10], 5
	LONG $0x74c40f66; WORD $0x0a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 10], 6
	LONG $0x74c40f66; WORD $0x0a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 10], 7
	QUAD $0x010c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 12], 1
	QUAD $0x020c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 12], 2
	QUAD $0x030c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 12], 3
	QUAD $0x040c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 12], 4
	LONG $0x7cc40f66; WORD $0x0c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 12], 5
	LONG $0x7cc40f66; WORD $0x0c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 12], 6
	LONG $0x7cc40f66; WORD $0x0c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 12], 7
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4466; WORD $0x2444; BYTE $0x38 // movd    xmm8, dword [rsp + 56]
	LONG $0x74b70f46; WORD $0x1c3a             // movzx    r14d, word [rdx + r15 + 28]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	LONG $0x54b70f46; WORD $0x1e3a             // movzx    r10d, word [rdx + r15 + 30]
	QUAD $0x010e0264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 14], 1
	QUAD $0x020e0a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 14], 2
	QUAD $0x030e2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 14], 3
	QUAD $0x040e2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 14], 4
	LONG $0x64c40f66; WORD $0x0e0a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 14], 5
	LONG $0x64c40f66; WORD $0x0e3a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 14], 6
	LONG $0x64c40f66; WORD $0x0e1a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 14], 7
	QUAD $0x01120244c40f4666                   // pinsrw    xmm8, word [rdx + r8 + 18], 1
	QUAD $0x02120a44c40f4666                   // pinsrw    xmm8, word [rdx + r9 + 18], 2
	QUAD $0x03122244c40f4666                   // pinsrw    xmm8, word [rdx + r12 + 18], 3
	QUAD $0x04122a44c40f4666                   // pinsrw    xmm8, word [rdx + r13 + 18], 4
	QUAD $0x05120a44c40f4466                   // pinsrw    xmm8, word [rdx + rcx + 18], 5
	QUAD $0x06123a44c40f4466                   // pinsrw    xmm8, word [rdx + rdi + 18], 6
	QUAD $0x07121a44c40f4466                   // pinsrw    xmm8, word [rdx + rbx + 18], 7
	LONG $0xe0750f66                           // pcmpeqw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x203a             // movzx    eax, word [rdx + r15 + 32]
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x750f4466; BYTE $0xc0               // pcmpeqw    xmm8, xmm0
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf80f4166; BYTE $0xf8               // psubb    xmm7, xmm8
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x5cb70f46; WORD $0x223a             // movzx    r11d, word [rdx + r15 + 34]
	QUAD $0x0110024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 16], 1
	QUAD $0x02100a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 16], 2
	QUAD $0x0310224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 16], 3
	QUAD $0x04102a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 16], 4
	LONG $0x4cc40f66; WORD $0x100a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 16], 5
	LONG $0x4cc40f66; WORD $0x103a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 16], 6
	LONG $0x4cc40f66; WORD $0x101a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 16], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0x74b70f42; WORD $0x243a             // movzx    esi, word [rdx + r15 + 36]
	LONG $0x38247489                           // mov    dword [rsp + 56], esi
	QUAD $0x0114026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 20], 1
	QUAD $0x02140a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 20], 2
	QUAD $0x0314226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 20], 3
	QUAD $0x04142a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 20], 4
	LONG $0x6cc40f66; WORD $0x140a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 20], 5
	LONG $0x6cc40f66; WORD $0x143a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 20], 6
	LONG $0x6cc40f66; WORD $0x141a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 20], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe9               // pand    xmm5, xmm9
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6e0f4166; BYTE $0xfe               // movd    xmm7, r14d
	LONG $0x74b70f42; WORD $0x263a             // movzx    esi, word [rdx + r15 + 38]
	LONG $0x18247489                           // mov    dword [rsp + 24], esi
	QUAD $0x01160254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 22], 1
	QUAD $0x02160a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 22], 2
	QUAD $0x03162254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 22], 3
	QUAD $0x04162a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 22], 4
	LONG $0x54c40f66; WORD $0x160a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 22], 5
	LONG $0x54c40f66; WORD $0x163a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 22], 6
	LONG $0x54c40f66; WORD $0x161a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 22], 7
	QUAD $0x0118025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 24], 1
	QUAD $0x02180a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 24], 2
	QUAD $0x0318225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 24], 3
	QUAD $0x04182a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 24], 4
	LONG $0x5cc40f66; WORD $0x180a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 24], 5
	LONG $0x5cc40f66; WORD $0x183a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 24], 6
	LONG $0x5cc40f66; WORD $0x181a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 24], 7
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x74b70f46; WORD $0x283a             // movzx    r14d, word [rdx + r15 + 40]
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x2a3a             // movzx    eax, word [rdx + r15 + 42]
	LONG $0x28244489                           // mov    dword [rsp + 40], eax
	QUAD $0x011a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 26], 1
	QUAD $0x021a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 26], 2
	QUAD $0x031a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 26], 3
	QUAD $0x041a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 26], 4
	LONG $0x74c40f66; WORD $0x1a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 26], 5
	LONG $0x74c40f66; WORD $0x1a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 26], 6
	LONG $0x74c40f66; WORD $0x1a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 26], 7
	QUAD $0x011c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 28], 1
	QUAD $0x021c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 28], 2
	QUAD $0x031c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 28], 3
	QUAD $0x041c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 28], 4
	LONG $0x7cc40f66; WORD $0x1c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 28], 5
	LONG $0x7cc40f66; WORD $0x1c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 28], 6
	LONG $0x7cc40f66; WORD $0x1c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 28], 7
	QUAD $0x011e0254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 30], 1
	QUAD $0x021e0a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 30], 2
	QUAD $0x031e2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 30], 3
	QUAD $0x041e2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 30], 4
	LONG $0x54c40f66; WORD $0x1e0a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 30], 5
	LONG $0x54c40f66; WORD $0x1e3a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 30], 6
	LONG $0x54c40f66; WORD $0x1e1a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 30], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x54b70f46; WORD $0x2c3a             // movzx    r10d, word [rdx + r15 + 44]
	LONG $0xd0750f66                           // pcmpeqw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x746e0f66; WORD $0x3824             // movd    xmm6, dword [rsp + 56]
	LONG $0x74b70f42; WORD $0x2e3a             // movzx    esi, word [rdx + r15 + 46]
	QUAD $0x0120026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 32], 1
	QUAD $0x02200a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 32], 2
	QUAD $0x0320226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 32], 3
	QUAD $0x04202a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 32], 4
	LONG $0x6cc40f66; WORD $0x200a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 32], 5
	LONG $0x6cc40f66; WORD $0x203a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 32], 6
	QUAD $0x0122024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 34], 1
	QUAD $0x02220a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 34], 2
	QUAD $0x0322224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 34], 3
	QUAD $0x04222a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 34], 4
	LONG $0x4cc40f66; WORD $0x220a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 34], 5
	LONG $0x4cc40f66; WORD $0x223a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 34], 6
	LONG $0x4cc40f66; WORD $0x221a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 34], 7
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0x5c6e0f66; WORD $0x1824             // movd    xmm3, dword [rsp + 24]
	LONG $0x5cb70f46; WORD $0x303a             // movzx    r11d, word [rdx + r15 + 48]
	LONG $0x6cc40f66; WORD $0x201a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 32], 7
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	QUAD $0x01240274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 36], 1
	QUAD $0x02240a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 36], 2
	QUAD $0x03242274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 36], 3
	QUAD $0x04242a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 36], 4
	LONG $0x74c40f66; WORD $0x240a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 36], 5
	LONG $0x74c40f66; WORD $0x243a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 36], 6
	LONG $0x74c40f66; WORD $0x241a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 36], 7
	QUAD $0x0126025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 38], 1
	QUAD $0x02260a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 38], 2
	QUAD $0x0326225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 38], 3
	QUAD $0x04262a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 38], 4
	LONG $0x5cc40f66; WORD $0x260a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 38], 5
	LONG $0x5cc40f66; WORD $0x263a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 38], 6
	LONG $0x5cc40f66; WORD $0x261a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 38], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x6e0f4166; BYTE $0xee               // movd    xmm5, r14d
	QUAD $0x0128026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 40], 1
	QUAD $0x02280a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 40], 2
	QUAD $0x0328226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 40], 3
	QUAD $0x04282a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 40], 4
	LONG $0x6cc40f66; WORD $0x280a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 40], 5
	LONG $0x6cc40f66; WORD $0x283a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 40], 6
	LONG $0x44b70f42; WORD $0x323a             // movzx    eax, word [rdx + r15 + 50]
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf1               // pand    xmm6, xmm9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x4c6e0f66; WORD $0x2824             // movd    xmm1, dword [rsp + 40]
	LONG $0x74b70f46; WORD $0x343a             // movzx    r14d, word [rdx + r15 + 52]
	LONG $0x6cc40f66; WORD $0x281a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 40], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0xdb0f4166; BYTE $0xda               // pand    xmm3, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x54b70f46; WORD $0x363a             // movzx    r10d, word [rdx + r15 + 54]
	QUAD $0x012a024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 42], 1
	QUAD $0x022a0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 42], 2
	QUAD $0x032a224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 42], 3
	QUAD $0x042a2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 42], 4
	LONG $0x4cc40f66; WORD $0x2a0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 42], 5
	LONG $0x4cc40f66; WORD $0x2a3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 42], 6
	LONG $0x4cc40f66; WORD $0x2a1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 42], 7
	QUAD $0x012c027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 44], 1
	QUAD $0x022c0a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 44], 2
	QUAD $0x032c227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 44], 3
	QUAD $0x042c2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 44], 4
	LONG $0x7cc40f66; WORD $0x2c0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 44], 5
	LONG $0x7cc40f66; WORD $0x2c3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 44], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x74b70f42; WORD $0x383a             // movzx    esi, word [rdx + r15 + 56]
	LONG $0x7cc40f66; WORD $0x2c1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 44], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x05               // psllw    xmm1, 5
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xf8750f66                           // pcmpeqw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x5cb70f46; WORD $0x3a3a             // movzx    r11d, word [rdx + r15 + 58]
	QUAD $0x012e025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 46], 1
	QUAD $0x022e0a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 46], 2
	QUAD $0x032e225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 46], 3
	QUAD $0x042e2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 46], 4
	LONG $0x5cc40f66; WORD $0x2e0a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 46], 5
	LONG $0x5cc40f66; WORD $0x2e3a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 46], 6
	LONG $0x5cc40f66; WORD $0x2e1a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 46], 7
	LONG $0xd8750f66                           // pcmpeqw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x3c3a             // movzx    eax, word [rdx + r15 + 60]
	LONG $0x7cb70f46; WORD $0x3e3a             // movzx    r15d, word [rdx + r15 + 62]
	QUAD $0x0132024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 50], 1
	QUAD $0x02320a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 50], 2
	QUAD $0x0332224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 50], 3
	QUAD $0x04322a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x320a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 50], 5
	LONG $0x4cc40f66; WORD $0x323a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 50], 6
	LONG $0x4cc40f66; WORD $0x321a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 50], 7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	QUAD $0x01300274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 48], 1
	QUAD $0x02300a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 48], 2
	QUAD $0x03302274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 48], 3
	QUAD $0x04302a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 48], 4
	LONG $0x74c40f66; WORD $0x300a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 48], 5
	LONG $0x74c40f66; WORD $0x303a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 48], 6
	LONG $0x74c40f66; WORD $0x301a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 48], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x0134024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 52], 1
	QUAD $0x02340a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 52], 2
	QUAD $0x0334224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 52], 3
	QUAD $0x04342a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 52], 4
	LONG $0x4cc40f66; WORD $0x340a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 52], 5
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x4cc40f66; WORD $0x343a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 52], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf2               // movd    xmm6, r10d
	LONG $0x4cc40f66; WORD $0x341a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 52], 7
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x02               // psllw    xmm1, 2
	LONG $0xdb0f4166; BYTE $0xc9               // pand    xmm1, xmm9
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0xee6e0f66                           // movd    xmm5, esi
	QUAD $0x01360274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 54], 1
	QUAD $0x02360a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 54], 2
	QUAD $0x03362274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 54], 3
	QUAD $0x04362a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x363a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 54], 6
	LONG $0x74c40f66; WORD $0x361a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 54], 7
	QUAD $0x0138026cc40f4266                   // pinsrw    xmm5, word [rdx + r8 + 56], 1
	QUAD $0x02380a6cc40f4266                   // pinsrw    xmm5, word [rdx + r9 + 56], 2
	QUAD $0x0338226cc40f4266                   // pinsrw    xmm5, word [rdx + r12 + 56], 3
	QUAD $0x04382a6cc40f4266                   // pinsrw    xmm5, word [rdx + r13 + 56], 4
	LONG $0x6cc40f66; WORD $0x380a; BYTE $0x05 // pinsrw    xmm5, word [rdx + rcx + 56], 5
	LONG $0x6cc40f66; WORD $0x383a; BYTE $0x06 // pinsrw    xmm5, word [rdx + rdi + 56], 6
	LONG $0x6cc40f66; WORD $0x381a; BYTE $0x07 // pinsrw    xmm5, word [rdx + rbx + 56], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x03               // psllw    xmm6, 3
	LONG $0xdb0f4166; BYTE $0xf2               // pand    xmm6, xmm10
	LONG $0xe8750f66                           // pcmpeqw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	QUAD $0x013a0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 58], 1
	QUAD $0x023a0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 58], 2
	QUAD $0x033a2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 58], 3
	QUAD $0x043a2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 58], 4
	LONG $0x74c40f66; WORD $0x3a0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 58], 5
	LONG $0x74c40f66; WORD $0x3a3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 58], 6
	LONG $0x74c40f66; WORD $0x3a1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 58], 7
	LONG $0xe9eb0f66                           // por    xmm5, xmm1
	LONG $0xc86e0f66                           // movd    xmm1, eax
	QUAD $0x013c024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 60], 1
	QUAD $0x023c0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 60], 2
	QUAD $0x033c224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 60], 3
	QUAD $0x043c2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 60], 4
	LONG $0x4cc40f66; WORD $0x3c0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 60], 5
	LONG $0x4cc40f66; WORD $0x3c3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 60], 6
	LONG $0x4cc40f66; WORD $0x3c1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 60], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xc8750f66                           // pcmpeqw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x06               // psllw    xmm1, 6
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf7               // movd    xmm6, r15d
	QUAD $0x013e0274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 62], 1
	QUAD $0x023e0a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 62], 2
	QUAD $0x033e2274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 62], 3
	QUAD $0x043e2a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 62], 4
	LONG $0x74c40f66; WORD $0x3e0a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 62], 5
	LONG $0x74c40f66; WORD $0x3e3a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 62], 6
	LONG $0x74c40f66; WORD $0x3e1a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 62], 7
	LONG $0xf0750f66                           // pcmpeqw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0xdb0f4166; BYTE $0xf6               // pand    xmm6, xmm14
	LONG $0xf1eb0f66                           // por    xmm6, xmm1
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	LONG $0xeb6f0f66                           // movdqa    xmm5, xmm3
	LONG $0xee6c0f66                           // punpcklqdq    xmm5, xmm6
	QUAD $0x00000090bd6f0f66                   // movdqa    xmm7, oword 144[rbp] /* [rip + .LCPI2_9] */
	LONG $0x00380f66; BYTE $0xef               // pshufb    xmm5, xmm7
	LONG $0x00380f66; BYTE $0xcf               // pshufb    xmm1, xmm7
	LONG $0xcd610f66                           // punpcklwd    xmm1, xmm5
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe2600f66                           // punpcklbw    xmm4, xmm2
	LONG $0xe3610f66                           // punpcklwd    xmm4, xmm3
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	LONG $0x247f0ff3; BYTE $0x8e               // movdqu    oword [rsi + 4*rcx], xmm4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	LONG $0x4c7f0ff3; WORD $0x108e             // movdqu    oword [rsi + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB2_192
	QUAD $0x0000009824bc8b4c                   // mov    r15, qword [rsp + 152]
	LONG $0x247c3b4c; BYTE $0x20               // cmp    r15, qword [rsp + 32]
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	LONG $0x24748b44; BYTE $0x08               // mov    r14d, dword [rsp + 8]
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	JNE  LBB2_104
	JMP  LBB2_144

LBB2_194:
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x0148; BYTE $0xd3                   // add    rbx, rdx
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	LONG $0x803c8d4e                           // lea    r15, [rax + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc28148; WORD $0x0001; BYTE $0x00 // add    rdx, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI2_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI2_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI2_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI2_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI2_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI2_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI2_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI2_7] */
	LONG $0x24048b48                           // mov    rax, qword [rsp]

LBB2_195:
	QUAD $0xfffffe04b2100ff3                   // movss    xmm6, dword [rdx - 508]
	QUAD $0xfffffe08ba100ff3                   // movss    xmm7, dword [rdx - 504]
	QUAD $0xfffffe0caa100ff3                   // movss    xmm5, dword [rdx - 500]
	QUAD $0xfffffe10a2100ff3                   // movss    xmm4, dword [rdx - 496]
	QUAD $0xfffe84b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 380], 16
	QUAD $0xffff04b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 252], 32
	LONG $0x213a0f66; WORD $0x8472; BYTE $0x30 // insertps    xmm6, dword [rdx - 124], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	QUAD $0xfffe88ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 376], 16
	QUAD $0xffff08ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 248], 32
	LONG $0x213a0f66; WORD $0x887a; BYTE $0x30 // insertps    xmm7, dword [rdx - 120], 48
	QUAD $0xfffe8caa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 372], 16
	QUAD $0xffff0caa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 244], 32
	LONG $0x213a0f66; WORD $0x8c6a; BYTE $0x30 // insertps    xmm5, dword [rdx - 116], 48
	QUAD $0xfffe90a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 368], 16
	QUAD $0xffff10a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 240], 32
	LONG $0x213a0f66; WORD $0x9062; BYTE $0x30 // insertps    xmm4, dword [rdx - 112], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xd7f80f66                           // psubb    xmm2, xmm7
	QUAD $0xfffffe14ba100ff3                   // movss    xmm7, dword [rdx - 492]
	QUAD $0xfffe94ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 364], 16
	QUAD $0xffff14ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 236], 32
	LONG $0x213a0f66; WORD $0x947a; BYTE $0x30 // insertps    xmm7, dword [rdx - 108], 48
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe18b2100ff3                   // movss    xmm6, dword [rdx - 488]
	QUAD $0xfffe98b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 360], 16
	QUAD $0xffff18b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 232], 32
	LONG $0x213a0f66; WORD $0x9872; BYTE $0x30 // insertps    xmm6, dword [rdx - 104], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe1c9a100ff3                   // movss    xmm3, dword [rdx - 484]
	QUAD $0xfffe9c9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 356], 16
	QUAD $0xffff1c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 228], 32
	LONG $0x213a0f66; WORD $0x9c5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 100], 48
	LONG $0x00e1c20f                           // cmpeqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2               // pand    xmm4, xmm10
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04               // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	QUAD $0xfffffe20a2100ff3                   // movss    xmm4, dword [rdx - 480]
	QUAD $0xfffea0a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 352], 16
	QUAD $0xffff20a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 224], 32
	LONG $0x213a0f66; WORD $0xa062; BYTE $0x30 // insertps    xmm4, dword [rdx - 96], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe24aa100ff3                   // movss    xmm5, dword [rdx - 476]
	QUAD $0xfffea4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 348], 16
	QUAD $0xffff24aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 220], 32
	LONG $0x213a0f66; WORD $0xa46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 92], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06               // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd               // pand    xmm3, xmm13
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe2892100ff3                   // movss    xmm2, dword [rdx - 472]
	QUAD $0xfffea892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 344], 16
	QUAD $0xffff2892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 216], 32
	LONG $0x213a0f66; WORD $0xa852; BYTE $0x30 // insertps    xmm2, dword [rdx - 88], 48
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x00e1c20f                           // cmpeqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	QUAD $0xfffffe2c9a100ff3                   // movss    xmm3, dword [rdx - 468]
	QUAD $0xfffeac9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 340], 16
	QUAD $0xffff2c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 212], 32
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0x213a0f66; WORD $0xac5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 84], 48
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe30ba100ff3                   // movss    xmm7, dword [rdx - 464]
	QUAD $0xfffeb0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 336], 16
	QUAD $0xffff30ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 208], 32
	LONG $0x213a0f66; WORD $0xb07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 80], 48
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe34aa100ff3                   // movss    xmm5, dword [rdx - 460]
	QUAD $0xfffeb4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 332], 16
	QUAD $0xffff34aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 204], 32
	LONG $0x213a0f66; WORD $0xb46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 76], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe38b2100ff3                   // movss    xmm6, dword [rdx - 456]
	QUAD $0xfffeb8b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 328], 16
	QUAD $0xffff38b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 200], 32
	LONG $0x213a0f66; WORD $0xb872; BYTE $0x30 // insertps    xmm6, dword [rdx - 72], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03               // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa               // pand    xmm7, xmm10
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0xfffffe3c92100ff3                   // movss    xmm2, dword [rdx - 452]
	QUAD $0xfffebc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 324], 16
	QUAD $0xffff3c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 196], 32
	LONG $0x213a0f66; WORD $0xbc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 68], 48
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	QUAD $0xfffffe40ba100ff3                   // movss    xmm7, dword [rdx - 448]
	QUAD $0xfffec0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 320], 16
	QUAD $0xffff40ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 192], 32
	LONG $0x213a0f66; WORD $0xc07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 64], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe44b2100ff3                   // movss    xmm6, dword [rdx - 444]
	QUAD $0xfffec4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 316], 16
	QUAD $0xffff44b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 188], 32
	LONG $0x213a0f66; WORD $0xc472; BYTE $0x30 // insertps    xmm6, dword [rdx - 60], 48
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07               // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe               // pand    xmm7, xmm14
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0xfffffe4892100ff3                   // movss    xmm2, dword [rdx - 440]
	QUAD $0xfffec892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 312], 16
	QUAD $0xffff4892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 184], 32
	LONG $0x213a0f66; WORD $0xc852; BYTE $0x30 // insertps    xmm2, dword [rdx - 56], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe4c9a100ff3                   // movss    xmm3, dword [rdx - 436]
	QUAD $0xfffecc9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 308], 16
	QUAD $0xffff4c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x213a0f66; WORD $0xcc5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 52], 48
	LONG $0xe7620f66                           // punpckldq    xmm4, xmm7
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xfaf80f66                           // psubb    xmm7, xmm2
	QUAD $0xfffffe50aa100ff3                   // movss    xmm5, dword [rdx - 432]
	QUAD $0xfffed0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 304], 16
	QUAD $0xffff50aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 176], 32
	LONG $0x213a0f66; WORD $0xd06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 48], 48
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	QUAD $0xfffffe54b2100ff3                   // movss    xmm6, dword [rdx - 428]
	QUAD $0xfffed4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 300], 16
	QUAD $0xffff54b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 172], 32
	LONG $0x213a0f66; WORD $0xd472; BYTE $0x30 // insertps    xmm6, dword [rdx - 44], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	QUAD $0xfffffe58ba100ff3                   // movss    xmm7, dword [rdx - 424]
	QUAD $0xfffed8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 296], 16
	QUAD $0xffff58ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 168], 32
	LONG $0x213a0f66; WORD $0xd87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 40], 48
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe5c92100ff3                   // movss    xmm2, dword [rdx - 420]
	QUAD $0xfffedc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 292], 16
	QUAD $0xffff5c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 164], 32
	LONG $0x213a0f66; WORD $0xdc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 36], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe60aa100ff3                   // movss    xmm5, dword [rdx - 416]
	QUAD $0xfffee0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 288], 16
	QUAD $0xffff60aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 160], 32
	LONG $0x213a0f66; WORD $0xe06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 32], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe64ba100ff3                   // movss    xmm7, dword [rdx - 412]
	QUAD $0xfffee4ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 284], 16
	QUAD $0xffff64ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 156], 32
	LONG $0x213a0f66; WORD $0xe47a; BYTE $0x30 // insertps    xmm7, dword [rdx - 28], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x00e9c20f                           // cmpeqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07               // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee               // pand    xmm5, xmm14
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe6892100ff3                   // movss    xmm2, dword [rdx - 408]
	QUAD $0xfffee892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 280], 16
	QUAD $0xffff6892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 152], 32
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0x213a0f66; WORD $0xe852; BYTE $0x30 // insertps    xmm2, dword [rdx - 24], 48
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe6c9a100ff3                   // movss    xmm3, dword [rdx - 404]
	QUAD $0xfffeec9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 276], 16
	QUAD $0xffff6c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 148], 32
	LONG $0x213a0f66; WORD $0xec5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 20], 48
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0xfffffe7092100ff3                   // movss    xmm2, dword [rdx - 400]
	QUAD $0xfffef092213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 272], 16
	QUAD $0xffff7092213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 144], 32
	LONG $0x213a0f66; WORD $0xf052; BYTE $0x30 // insertps    xmm2, dword [rdx - 16], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe74b2100ff3                   // movss    xmm6, dword [rdx - 396]
	QUAD $0xfffef4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 268], 16
	QUAD $0xffff74b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 140], 32
	LONG $0x213a0f66; WORD $0xf472; BYTE $0x30 // insertps    xmm6, dword [rdx - 12], 48
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0x00f1c20f                           // cmpeqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	QUAD $0xfffffe78ba100ff3                   // movss    xmm7, dword [rdx - 392]
	QUAD $0xfffef8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 264], 16
	QUAD $0xffff78ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 136], 32
	LONG $0x213a0f66; WORD $0xf87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 8], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe7c92100ff3                   // movss    xmm2, dword [rdx - 388]
	QUAD $0xfffefc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 260], 16
	QUAD $0xffff7c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 132], 32
	LONG $0x213a0f66; WORD $0xfc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 4], 48
	LONG $0x00f9c20f                           // cmpeqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x00d1c20f                           // cmpeqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe809a100ff3                   // movss    xmm3, dword [rdx - 384]
	QUAD $0xffff009a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 256], 16
	LONG $0x213a0f66; WORD $0x805a; BYTE $0x20 // insertps    xmm3, dword [rdx - 128], 32
	LONG $0x213a0f66; WORD $0x301a             // insertps    xmm3, dword [rdx], 48
	LONG $0x00d9c20f                           // cmpeqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	LONG $0xeb620f66                           // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                           // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100             // pshufb    xmm4, xmm9
	LONG $0x247f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm4
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x00c28148; WORD $0x0002; BYTE $0x00 // add    rdx, 512
	WORD $0x3949; BYTE $0xc8                   // cmp    r8, rcx
	JNE  LBB2_195
	WORD $0x394d; BYTE $0xc6                   // cmp    r14, r8
	JNE  LBB2_127
	JMP  LBB2_148

TEXT ·_comparison_not_equal_arr_arr_sse4(SB), $80-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	ADDQ $8, SP

	WORD $0x8944; BYTE $0xc8 // mov    eax, r9d
	WORD $0x894d; BYTE $0xc6 // mov    r14, r8
	WORD $0x8949; BYTE $0xcc // mov    r12, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB3_29
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB3_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB3_68
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB3_79
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB3_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_22
	WORD $0x9848             // cdqe

LBB3_20:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_20
	LONG $0x01c48349             // add    r12, 1

LBB3_22:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_26
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_24:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454950f; BYTE $0x04               // setne    byte [rsp + 4]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454950f; BYTE $0x15               // setne    byte [rsp + 21]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x2454950f; BYTE $0x16               // setne    byte [rsp + 22]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454950f; BYTE $0x17               // setne    byte [rsp + 23]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x2454950f; BYTE $0x03               // setne    byte [rsp + 3]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454950f; BYTE $0x05               // setne    byte [rsp + 5]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454950f; BYTE $0x0a               // setne    byte [rsp + 10]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x2454950f; BYTE $0x06               // setne    byte [rsp + 6]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x2454950f; BYTE $0x07               // setne    byte [rsp + 7]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	LONG $0xd7950f40                           // setne    dil
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x5e8b; BYTE $0x44                   // mov    ebx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x2454950f; BYTE $0x0b               // setne    byte [rsp + 11]
	WORD $0x5a3b; BYTE $0x44                   // cmp    ebx, dword [rdx + 68]
	WORD $0x5e8b; BYTE $0x4c                   // mov    ebx, dword [rsi + 76]
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x5a3b; BYTE $0x4c                   // cmp    ebx, dword [rdx + 76]
	WORD $0x5e8b; BYTE $0x54                   // mov    ebx, dword [rsi + 84]
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454950f; BYTE $0x09               // setne    byte [rsp + 9]
	WORD $0x5a3b; BYTE $0x54                   // cmp    ebx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454950f; BYTE $0x0c               // setne    byte [rsp + 12]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x2454950f; BYTE $0x0d               // setne    byte [rsp + 13]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454950f; BYTE $0x14               // setne    byte [rsp + 20]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x2454950f; BYTE $0x0e               // setne    byte [rsp + 14]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454950f; BYTE $0x0f               // setne    byte [rsp + 15]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x2454950f; BYTE $0x11               // setne    byte [rsp + 17]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454950f; BYTE $0x13               // setne    byte [rsp + 19]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454950f; BYTE $0x12               // setne    byte [rsp + 18]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB3_24
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB3_26:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_28:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_28
	JMP  LBB3_123

LBB3_29:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB3_30
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB3_101
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB3_112
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB3_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_50
	WORD $0x634c; BYTE $0xd0 // movsxd    r10, eax

LBB3_48:
	LONG $0x06100ff2             // movsd    xmm0, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xcb08                 // or    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x077a8d49             // lea    rdi, [r10 + 7]
	WORD $0x854d; BYTE $0xd2     // test    r10, r10
	LONG $0xfa490f49             // cmovns    rdi, r10
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0x8944; BYTE $0xd1     // mov    ecx, r10d
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001b8; BYTE $0x00 // mov    eax, 1
	WORD $0xe0d3                 // shl    eax, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	LONG $0x01c28349             // add    r10, 1
	LONG $0x08fa8349             // cmp    r10, 8
	JNE  LBB3_48
	LONG $0x01c48349             // add    r12, 1

LBB3_50:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_54
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB3_52:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	LONG $0x06100ff2                           // movsd    xmm0, qword [rsi]
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	LONG $0x46100ff2; BYTE $0x08               // movsd    xmm0, qword [rsi + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x15244c88                           // mov    byte [rsp + 21], cl
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0d244c88                           // mov    byte [rsp + 13], cl
	LONG $0x46100ff2; BYTE $0x10               // movsd    xmm0, qword [rsi + 16]
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x14244c88                           // mov    byte [rsp + 20], cl
	LONG $0x46100ff2; BYTE $0x18               // movsd    xmm0, qword [rsi + 24]
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x17244c88                           // mov    byte [rsp + 23], cl
	LONG $0x46100ff2; BYTE $0x20               // movsd    xmm0, qword [rsi + 32]
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x16244c88                           // mov    byte [rsp + 22], cl
	LONG $0x46100ff2; BYTE $0x28               // movsd    xmm0, qword [rsi + 40]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x46100ff2; BYTE $0x30               // movsd    xmm0, qword [rsi + 48]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x46100ff2; BYTE $0x38               // movsd    xmm0, qword [rsi + 56]
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x03244c88                           // mov    byte [rsp + 3], cl
	LONG $0x46100ff2; BYTE $0x40               // movsd    xmm0, qword [rsi + 64]
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x13244c88                           // mov    byte [rsp + 19], cl
	LONG $0x46100ff2; BYTE $0x48               // movsd    xmm0, qword [rsi + 72]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x46100ff2; BYTE $0x50               // movsd    xmm0, qword [rsi + 80]
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x12244c88                           // mov    byte [rsp + 18], cl
	LONG $0x46100ff2; BYTE $0x58               // movsd    xmm0, qword [rsi + 88]
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x11244c88                           // mov    byte [rsp + 17], cl
	LONG $0x46100ff2; BYTE $0x60               // movsd    xmm0, qword [rsi + 96]
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x46100ff2; BYTE $0x68               // movsd    xmm0, qword [rsi + 104]
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0f244c88                           // mov    byte [rsp + 15], cl
	LONG $0x46100ff2; BYTE $0x70               // movsd    xmm0, qword [rsi + 112]
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0c244c88                           // mov    byte [rsp + 12], cl
	LONG $0x46100ff2; BYTE $0x78               // movsd    xmm0, qword [rsi + 120]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0b244c88                           // mov    byte [rsp + 11], cl
	QUAD $0x0000008086100ff2                   // movsd    xmm0, qword [rsi + 128]
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0e244c88                           // mov    byte [rsp + 14], cl
	QUAD $0x0000008886100ff2                   // movsd    xmm0, qword [rsi + 136]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0a244c88                           // mov    byte [rsp + 10], cl
	QUAD $0x0000009086100ff2                   // movsd    xmm0, qword [rsi + 144]
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x09244c88                           // mov    byte [rsp + 9], cl
	QUAD $0x0000009886100ff2                   // movsd    xmm0, qword [rsi + 152]
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	QUAD $0x000000a086100ff2                   // movsd    xmm0, qword [rsi + 160]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	QUAD $0x000000a886100ff2                   // movsd    xmm0, qword [rsi + 168]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x07244c88                           // mov    byte [rsp + 7], cl
	QUAD $0x000000b086100ff2                   // movsd    xmm0, qword [rsi + 176]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x05244c88                           // mov    byte [rsp + 5], cl
	QUAD $0x000000b886100ff2                   // movsd    xmm0, qword [rsi + 184]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000c086100ff2                   // movsd    xmm0, qword [rsi + 192]
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x06244c88                           // mov    byte [rsp + 6], cl
	QUAD $0x000000c886100ff2                   // movsd    xmm0, qword [rsi + 200]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	QUAD $0x000000d086100ff2                   // movsd    xmm0, qword [rsi + 208]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	QUAD $0x000000d886100ff2                   // movsd    xmm0, qword [rsi + 216]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	QUAD $0x000000e086100ff2                   // movsd    xmm0, qword [rsi + 224]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	QUAD $0x000000e886100ff2                   // movsd    xmm0, qword [rsi + 232]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	QUAD $0x000000f086100ff2                   // movsd    xmm0, qword [rsi + 240]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	QUAD $0x000000f886100ff2                   // movsd    xmm0, qword [rsi + 248]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x15244402                           // add    al, byte [rsp + 21]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0841; BYTE $0xfd                   // or    r13b, dil
	WORD $0x8944; BYTE $0xef                   // mov    edi, r13d
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xd889                               // mov    eax, ebx
	WORD $0xd800                               // add    al, bl
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x03               // movzx    eax, byte [rsp + 3]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x03244488                           // mov    byte [rsp + 3], al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x17               // movzx    eax, byte [rsp + 23]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	LONG $0x245cb60f; BYTE $0x11               // movzx    ebx, byte [rsp + 17]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc789                               // mov    edi, eax
	LONG $0x245cb60f; BYTE $0x0f               // movzx    ebx, byte [rsp + 15]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x0a               // movzx    ebx, byte [rsp + 10]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x0e245c02                           // add    bl, byte [rsp + 14]
	LONG $0x244cb60f; BYTE $0x09               // movzx    ecx, byte [rsp + 9]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd908                               // or    cl, bl
	LONG $0x03e6c041                           // shl    r14b, 3
	WORD $0x0841; BYTE $0xce                   // or    r14b, cl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xf3                   // or    bl, r14b
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x74b60f44; WORD $0x0324             // movzx    r14d, byte [rsp + 3]
	WORD $0x0845; BYTE $0xee                   // or    r14b, r13b
	LONG $0x6cb60f44; WORD $0x0724             // movzx    r13d, byte [rsp + 7]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x05               // movzx    ecx, byte [rsp + 5]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xc900                               // add    cl, cl
	LONG $0x06244c02                           // add    cl, byte [rsp + 6]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xd1                   // or    cl, r10b
	LONG $0x24348845                           // mov    byte [r12], r14b
	LONG $0x245cb60f; BYTE $0x28               // movzx    ebx, byte [rsp + 40]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x24448841; BYTE $0x01               // mov    byte [r12 + 1], al
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xc8                   // or    r8b, r9b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24448845; BYTE $0x03               // mov    byte [r12 + 3], r8b
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB3_52
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB3_54:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_56:
	LONG $0x01498d4c             // lea    r9, [rcx + 1]
	LONG $0x04100ff2; BYTE $0xce // movsd    xmm0, qword [rsi + 8*rcx]
	LONG $0x042e0f66; BYTE $0xca // ucomisd    xmm0, qword [rdx + 8*rcx]
	WORD $0x9a0f; BYTE $0xd3     // setp    bl
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd808                 // or    al, bl
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	WORD $0x894c; BYTE $0xc9     // mov    rcx, r9
	WORD $0x394d; BYTE $0xce     // cmp    r14, r9
	JNE  LBB3_56
	JMP  LBB3_123

LBB3_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB3_57
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB3_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_8
	WORD $0x9848             // cdqe

LBB3_6:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_6
	LONG $0x01c48349             // add    r12, 1

LBB3_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_12
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB3_10:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454950f; BYTE $0x04   // setne    byte [rsp + 4]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x2454950f; BYTE $0x15   // setne    byte [rsp + 21]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454950f; BYTE $0x16   // setne    byte [rsp + 22]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x2454950f; BYTE $0x17   // setne    byte [rsp + 23]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454950f; BYTE $0x03   // setne    byte [rsp + 3]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x2454950f; BYTE $0x05   // setne    byte [rsp + 5]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7950f41               // setne    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x2454950f; BYTE $0x08   // setne    byte [rsp + 8]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd7950f40               // setne    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd2950f41               // setne    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3950f41               // setne    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd6950f41               // setne    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454950f; BYTE $0x06   // setne    byte [rsp + 6]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x2454950f; BYTE $0x07   // setne    byte [rsp + 7]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	LONG $0xd0950f41               // setne    r8b
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x2454950f; BYTE $0x0e   // setne    byte [rsp + 14]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4950f41               // setne    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd5950f41               // setne    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454950f; BYTE $0x09   // setne    byte [rsp + 9]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x2454950f; BYTE $0x0a   // setne    byte [rsp + 10]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454950f; BYTE $0x0b   // setne    byte [rsp + 11]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x2454950f; BYTE $0x0c   // setne    byte [rsp + 12]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd1950f41               // setne    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x2454950f; BYTE $0x14   // setne    byte [rsp + 20]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454950f; BYTE $0x0d   // setne    byte [rsp + 13]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x2454950f; BYTE $0x0f   // setne    byte [rsp + 15]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454950f; BYTE $0x10   // setne    byte [rsp + 16]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x2454950f; BYTE $0x11   // setne    byte [rsp + 17]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454950f; BYTE $0x12   // setne    byte [rsp + 18]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454950f; BYTE $0x13   // setne    byte [rsp + 19]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	WORD $0x950f; BYTE $0xd1       // setne    cl
	WORD $0xdb00                   // add    bl, bl
	LONG $0x04245c02               // add    bl, byte [rsp + 4]
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x245cb60f; BYTE $0x05   // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	LONG $0x245cb60f; BYTE $0x15   // movzx    ebx, byte [rsp + 21]
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x08   // add    dil, byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0xdf89                   // mov    edi, ebx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07   // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040               // shl    dil, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xf8       // or    r8b, dil
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e   // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x243c8845               // mov    byte [r12], r15b
	LONG $0x245cb60f; BYTE $0x0c   // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x24448845; BYTE $0x01   // mov    byte [r12 + 1], r8b
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x13   // movzx    ebx, byte [rsp + 19]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff28 // add    qword [rsp + 40], -1
	JNE  LBB3_10
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20   // mov    r15, qword [rsp + 32]

LBB3_12:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_14:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_14
	JMP  LBB3_123

LBB3_30:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB3_90
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB3_123
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_36
	WORD $0x9848             // cdqe

LBB3_34:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_34
	LONG $0x01c48349             // add    r12, 1

LBB3_36:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_40
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_38:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454950f; BYTE $0x04               // setne    byte [rsp + 4]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454950f; BYTE $0x15               // setne    byte [rsp + 21]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x2454950f; BYTE $0x16               // setne    byte [rsp + 22]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454950f; BYTE $0x17               // setne    byte [rsp + 23]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x2454950f; BYTE $0x03               // setne    byte [rsp + 3]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454950f; BYTE $0x05               // setne    byte [rsp + 5]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454950f; BYTE $0x0a               // setne    byte [rsp + 10]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x2454950f; BYTE $0x06               // setne    byte [rsp + 6]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x2454950f; BYTE $0x07               // setne    byte [rsp + 7]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x889e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x2454950f; BYTE $0x0b               // setne    byte [rsp + 11]
	LONG $0x889a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 136]
	LONG $0x989e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 152]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x989a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 152]
	LONG $0xa89e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 168]
	LONG $0xd4950f41                           // setne    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454950f; BYTE $0x09               // setne    byte [rsp + 9]
	LONG $0xa89a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454950f; BYTE $0x0c               // setne    byte [rsp + 12]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x2454950f; BYTE $0x0d               // setne    byte [rsp + 13]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454950f; BYTE $0x14               // setne    byte [rsp + 20]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x2454950f; BYTE $0x0e               // setne    byte [rsp + 14]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454950f; BYTE $0x0f               // setne    byte [rsp + 15]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x2454950f; BYTE $0x11               // setne    byte [rsp + 17]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454950f; BYTE $0x13               // setne    byte [rsp + 19]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454950f; BYTE $0x12               // setne    byte [rsp + 18]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB3_38
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB3_40:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_42:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_42
	JMP  LBB3_123

LBB3_68:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_72
	WORD $0x9848             // cdqe

LBB3_70:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_70
	LONG $0x01c48349             // add    r12, 1

LBB3_72:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_76
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_74:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454950f; BYTE $0x04   // setne    byte [rsp + 4]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x2454950f; BYTE $0x28   // setne    byte [rsp + 40]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454950f; BYTE $0x15   // setne    byte [rsp + 21]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x2454950f; BYTE $0x16   // setne    byte [rsp + 22]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454950f; BYTE $0x17   // setne    byte [rsp + 23]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x2454950f; BYTE $0x03   // setne    byte [rsp + 3]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454950f; BYTE $0x05   // setne    byte [rsp + 5]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd5950f41               // setne    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454950f; BYTE $0x0a   // setne    byte [rsp + 10]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd0950f41               // setne    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd3950f41               // setne    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd7950f41               // setne    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x2454950f; BYTE $0x06   // setne    byte [rsp + 6]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x2454950f; BYTE $0x07   // setne    byte [rsp + 7]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454950f; BYTE $0x08   // setne    byte [rsp + 8]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	LONG $0xd7950f40               // setne    dil
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x225eb70f               // movzx    ebx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x2454950f; BYTE $0x0b   // setne    byte [rsp + 11]
	LONG $0x225a3b66               // cmp    bx, word [rdx + 34]
	LONG $0x265eb70f               // movzx    ebx, word [rsi + 38]
	LONG $0xd2950f41               // setne    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd6950f41               // setne    r14b
	LONG $0x265a3b66               // cmp    bx, word [rdx + 38]
	LONG $0x2a5eb70f               // movzx    ebx, word [rsi + 42]
	LONG $0xd4950f41               // setne    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454950f; BYTE $0x09   // setne    byte [rsp + 9]
	LONG $0x2a5a3b66               // cmp    bx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454950f; BYTE $0x0c   // setne    byte [rsp + 12]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2454950f; BYTE $0x0d   // setne    byte [rsp + 13]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd1950f41               // setne    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454950f; BYTE $0x14   // setne    byte [rsp + 20]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x2454950f; BYTE $0x0e   // setne    byte [rsp + 14]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454950f; BYTE $0x0f   // setne    byte [rsp + 15]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454950f; BYTE $0x10   // setne    byte [rsp + 16]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x2454950f; BYTE $0x11   // setne    byte [rsp + 17]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454950f; BYTE $0x13   // setne    byte [rsp + 19]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454950f; BYTE $0x12   // setne    byte [rsp + 18]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	WORD $0x950f; BYTE $0xd1       // setne    cl
	LONG $0x2444b60f; BYTE $0x28   // movzx    eax, byte [rsp + 40]
	WORD $0xc000                   // add    al, al
	LONG $0x04244402               // add    al, byte [rsp + 4]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15   // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a   // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0x8941; BYTE $0xd8       // mov    r8d, ebx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07   // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824 // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0844; BYTE $0xc7       // or    dil, r8b
	WORD $0x0841; BYTE $0xdd       // or    r13b, bl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b   // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x242c8845               // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d   // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01   // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13   // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x12   // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB3_74
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB3_76:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_78:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_78
	JMP  LBB3_123

LBB3_79:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_83
	WORD $0x9848             // cdqe

LBB3_81:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_81
	LONG $0x01c48349             // add    r12, 1

LBB3_83:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_87
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_85:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454950f; BYTE $0x04   // setne    byte [rsp + 4]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x2454950f; BYTE $0x28   // setne    byte [rsp + 40]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454950f; BYTE $0x15   // setne    byte [rsp + 21]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x2454950f; BYTE $0x16   // setne    byte [rsp + 22]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454950f; BYTE $0x17   // setne    byte [rsp + 23]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x2454950f; BYTE $0x03   // setne    byte [rsp + 3]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454950f; BYTE $0x05   // setne    byte [rsp + 5]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd5950f41               // setne    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454950f; BYTE $0x0a   // setne    byte [rsp + 10]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd0950f41               // setne    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd3950f41               // setne    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd7950f41               // setne    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x2454950f; BYTE $0x06   // setne    byte [rsp + 6]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x2454950f; BYTE $0x07   // setne    byte [rsp + 7]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454950f; BYTE $0x08   // setne    byte [rsp + 8]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	LONG $0xd7950f40               // setne    dil
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x225eb70f               // movzx    ebx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x2454950f; BYTE $0x0b   // setne    byte [rsp + 11]
	LONG $0x225a3b66               // cmp    bx, word [rdx + 34]
	LONG $0x265eb70f               // movzx    ebx, word [rsi + 38]
	LONG $0xd2950f41               // setne    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd6950f41               // setne    r14b
	LONG $0x265a3b66               // cmp    bx, word [rdx + 38]
	LONG $0x2a5eb70f               // movzx    ebx, word [rsi + 42]
	LONG $0xd4950f41               // setne    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454950f; BYTE $0x09   // setne    byte [rsp + 9]
	LONG $0x2a5a3b66               // cmp    bx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454950f; BYTE $0x0c   // setne    byte [rsp + 12]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2454950f; BYTE $0x0d   // setne    byte [rsp + 13]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd1950f41               // setne    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454950f; BYTE $0x14   // setne    byte [rsp + 20]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x2454950f; BYTE $0x0e   // setne    byte [rsp + 14]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454950f; BYTE $0x0f   // setne    byte [rsp + 15]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454950f; BYTE $0x10   // setne    byte [rsp + 16]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x2454950f; BYTE $0x11   // setne    byte [rsp + 17]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454950f; BYTE $0x13   // setne    byte [rsp + 19]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454950f; BYTE $0x12   // setne    byte [rsp + 18]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	WORD $0x950f; BYTE $0xd1       // setne    cl
	LONG $0x2444b60f; BYTE $0x28   // movzx    eax, byte [rsp + 40]
	WORD $0xc000                   // add    al, al
	LONG $0x04244402               // add    al, byte [rsp + 4]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15   // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a   // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0x8941; BYTE $0xd8       // mov    r8d, ebx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07   // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824 // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0844; BYTE $0xc7       // or    dil, r8b
	WORD $0x0841; BYTE $0xdd       // or    r13b, bl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b   // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x242c8845               // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d   // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01   // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13   // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x12   // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB3_85
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB3_87:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_89:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_89
	JMP  LBB3_123

LBB3_101:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_105
	WORD $0x9848             // cdqe

LBB3_103:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_103
	LONG $0x01c48349             // add    r12, 1

LBB3_105:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_109
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_107:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454950f; BYTE $0x04               // setne    byte [rsp + 4]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454950f; BYTE $0x15               // setne    byte [rsp + 21]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x2454950f; BYTE $0x16               // setne    byte [rsp + 22]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454950f; BYTE $0x17               // setne    byte [rsp + 23]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x2454950f; BYTE $0x03               // setne    byte [rsp + 3]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454950f; BYTE $0x05               // setne    byte [rsp + 5]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454950f; BYTE $0x0a               // setne    byte [rsp + 10]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x2454950f; BYTE $0x06               // setne    byte [rsp + 6]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x2454950f; BYTE $0x07               // setne    byte [rsp + 7]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x889e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x2454950f; BYTE $0x0b               // setne    byte [rsp + 11]
	LONG $0x889a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 136]
	LONG $0x989e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 152]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x989a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 152]
	LONG $0xa89e8b48; WORD $0x0000; BYTE $0x00 // mov    rbx, qword [rsi + 168]
	LONG $0xd4950f41                           // setne    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454950f; BYTE $0x09               // setne    byte [rsp + 9]
	LONG $0xa89a3b48; WORD $0x0000; BYTE $0x00 // cmp    rbx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454950f; BYTE $0x0c               // setne    byte [rsp + 12]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x2454950f; BYTE $0x0d               // setne    byte [rsp + 13]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454950f; BYTE $0x14               // setne    byte [rsp + 20]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x2454950f; BYTE $0x0e               // setne    byte [rsp + 14]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454950f; BYTE $0x0f               // setne    byte [rsp + 15]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x2454950f; BYTE $0x11               // setne    byte [rsp + 17]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454950f; BYTE $0x13               // setne    byte [rsp + 19]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454950f; BYTE $0x12               // setne    byte [rsp + 18]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB3_107
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB3_109:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_111:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_111
	JMP  LBB3_123

LBB3_112:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_116
	WORD $0x634c; BYTE $0xd0 // movsxd    r10, eax

LBB3_114:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xcb08                 // or    bl, cl
	WORD $0xdbf6                 // neg    bl
	LONG $0x077a8d49             // lea    rdi, [r10 + 7]
	WORD $0x854d; BYTE $0xd2     // test    r10, r10
	LONG $0xfa490f49             // cmovns    rdi, r10
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0x8944; BYTE $0xd1     // mov    ecx, r10d
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001b8; BYTE $0x00 // mov    eax, 1
	WORD $0xe0d3                 // shl    eax, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	LONG $0x01c28349             // add    r10, 1
	LONG $0x08fa8349             // cmp    r10, 8
	JNE  LBB3_114
	LONG $0x01c48349             // add    r12, 1

LBB3_116:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_120
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB3_118:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	LONG $0x06100ff3                           // movss    xmm0, dword [rsi]
	WORD $0x2e0f; BYTE $0x02                   // ucomiss    xmm0, dword [rdx]
	LONG $0x46100ff3; BYTE $0x04               // movss    xmm0, dword [rsi + 4]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x15244c88                           // mov    byte [rsp + 21], cl
	LONG $0x04422e0f                           // ucomiss    xmm0, dword [rdx + 4]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0d244c88                           // mov    byte [rsp + 13], cl
	LONG $0x46100ff3; BYTE $0x08               // movss    xmm0, dword [rsi + 8]
	LONG $0x08422e0f                           // ucomiss    xmm0, dword [rdx + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x14244c88                           // mov    byte [rsp + 20], cl
	LONG $0x46100ff3; BYTE $0x0c               // movss    xmm0, dword [rsi + 12]
	LONG $0x0c422e0f                           // ucomiss    xmm0, dword [rdx + 12]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x17244c88                           // mov    byte [rsp + 23], cl
	LONG $0x46100ff3; BYTE $0x10               // movss    xmm0, dword [rsi + 16]
	LONG $0x10422e0f                           // ucomiss    xmm0, dword [rdx + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x16244c88                           // mov    byte [rsp + 22], cl
	LONG $0x46100ff3; BYTE $0x14               // movss    xmm0, dword [rsi + 20]
	LONG $0x14422e0f                           // ucomiss    xmm0, dword [rdx + 20]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x46100ff3; BYTE $0x18               // movss    xmm0, dword [rsi + 24]
	LONG $0x18422e0f                           // ucomiss    xmm0, dword [rdx + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x46100ff3; BYTE $0x1c               // movss    xmm0, dword [rsi + 28]
	LONG $0x1c422e0f                           // ucomiss    xmm0, dword [rdx + 28]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x03244c88                           // mov    byte [rsp + 3], cl
	LONG $0x46100ff3; BYTE $0x20               // movss    xmm0, dword [rsi + 32]
	LONG $0x20422e0f                           // ucomiss    xmm0, dword [rdx + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x13244c88                           // mov    byte [rsp + 19], cl
	LONG $0x46100ff3; BYTE $0x24               // movss    xmm0, dword [rsi + 36]
	LONG $0x24422e0f                           // ucomiss    xmm0, dword [rdx + 36]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x46100ff3; BYTE $0x28               // movss    xmm0, dword [rsi + 40]
	LONG $0x28422e0f                           // ucomiss    xmm0, dword [rdx + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x12244c88                           // mov    byte [rsp + 18], cl
	LONG $0x46100ff3; BYTE $0x2c               // movss    xmm0, dword [rsi + 44]
	LONG $0x2c422e0f                           // ucomiss    xmm0, dword [rdx + 44]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x11244c88                           // mov    byte [rsp + 17], cl
	LONG $0x46100ff3; BYTE $0x30               // movss    xmm0, dword [rsi + 48]
	LONG $0x30422e0f                           // ucomiss    xmm0, dword [rdx + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x46100ff3; BYTE $0x34               // movss    xmm0, dword [rsi + 52]
	LONG $0x34422e0f                           // ucomiss    xmm0, dword [rdx + 52]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0f244c88                           // mov    byte [rsp + 15], cl
	LONG $0x46100ff3; BYTE $0x38               // movss    xmm0, dword [rsi + 56]
	LONG $0x38422e0f                           // ucomiss    xmm0, dword [rdx + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0c244c88                           // mov    byte [rsp + 12], cl
	LONG $0x46100ff3; BYTE $0x3c               // movss    xmm0, dword [rsi + 60]
	LONG $0x3c422e0f                           // ucomiss    xmm0, dword [rdx + 60]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0b244c88                           // mov    byte [rsp + 11], cl
	LONG $0x46100ff3; BYTE $0x40               // movss    xmm0, dword [rsi + 64]
	LONG $0x40422e0f                           // ucomiss    xmm0, dword [rdx + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0e244c88                           // mov    byte [rsp + 14], cl
	LONG $0x46100ff3; BYTE $0x44               // movss    xmm0, dword [rsi + 68]
	LONG $0x44422e0f                           // ucomiss    xmm0, dword [rdx + 68]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x0a244c88                           // mov    byte [rsp + 10], cl
	LONG $0x46100ff3; BYTE $0x48               // movss    xmm0, dword [rsi + 72]
	LONG $0x48422e0f                           // ucomiss    xmm0, dword [rdx + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x09244c88                           // mov    byte [rsp + 9], cl
	LONG $0x46100ff3; BYTE $0x4c               // movss    xmm0, dword [rsi + 76]
	LONG $0x4c422e0f                           // ucomiss    xmm0, dword [rdx + 76]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x46100ff3; BYTE $0x50               // movss    xmm0, dword [rsi + 80]
	LONG $0x50422e0f                           // ucomiss    xmm0, dword [rdx + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x46100ff3; BYTE $0x54               // movss    xmm0, dword [rsi + 84]
	LONG $0x54422e0f                           // ucomiss    xmm0, dword [rdx + 84]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x07244c88                           // mov    byte [rsp + 7], cl
	LONG $0x46100ff3; BYTE $0x58               // movss    xmm0, dword [rsi + 88]
	LONG $0x58422e0f                           // ucomiss    xmm0, dword [rdx + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x05244c88                           // mov    byte [rsp + 5], cl
	LONG $0x46100ff3; BYTE $0x5c               // movss    xmm0, dword [rsi + 92]
	LONG $0x5c422e0f                           // ucomiss    xmm0, dword [rdx + 92]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	LONG $0x46100ff3; BYTE $0x60               // movss    xmm0, dword [rsi + 96]
	LONG $0x60422e0f                           // ucomiss    xmm0, dword [rdx + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x06244c88                           // mov    byte [rsp + 6], cl
	LONG $0x46100ff3; BYTE $0x64               // movss    xmm0, dword [rsi + 100]
	LONG $0x64422e0f                           // ucomiss    xmm0, dword [rdx + 100]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x46100ff3; BYTE $0x68               // movss    xmm0, dword [rsi + 104]
	LONG $0x68422e0f                           // ucomiss    xmm0, dword [rdx + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x46100ff3; BYTE $0x6c               // movss    xmm0, dword [rsi + 108]
	LONG $0x6c422e0f                           // ucomiss    xmm0, dword [rdx + 108]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x46100ff3; BYTE $0x70               // movss    xmm0, dword [rsi + 112]
	LONG $0x70422e0f                           // ucomiss    xmm0, dword [rdx + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x04244c88                           // mov    byte [rsp + 4], cl
	LONG $0x46100ff3; BYTE $0x74               // movss    xmm0, dword [rsi + 116]
	LONG $0x74422e0f                           // ucomiss    xmm0, dword [rdx + 116]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x46100ff3; BYTE $0x78               // movss    xmm0, dword [rsi + 120]
	LONG $0x78422e0f                           // ucomiss    xmm0, dword [rdx + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x46100ff3; BYTE $0x7c               // movss    xmm0, dword [rsi + 124]
	LONG $0x80ee8348                           // sub    rsi, -128
	LONG $0x7c422e0f                           // ucomiss    xmm0, dword [rdx + 124]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x15244402                           // add    al, byte [rsp + 21]
	LONG $0x05e7c040                           // shl    dil, 5
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0841; BYTE $0xfd                   // or    r13b, dil
	WORD $0x8944; BYTE $0xef                   // mov    edi, r13d
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	WORD $0xd889                               // mov    eax, ebx
	WORD $0xd800                               // add    al, bl
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x03               // movzx    eax, byte [rsp + 3]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x03244488                           // mov    byte [rsp + 3], al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x17               // movzx    eax, byte [rsp + 23]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	LONG $0x245cb60f; BYTE $0x11               // movzx    ebx, byte [rsp + 17]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc789                               // mov    edi, eax
	LONG $0x245cb60f; BYTE $0x0f               // movzx    ebx, byte [rsp + 15]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x0a               // movzx    ebx, byte [rsp + 10]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x0e245c02                           // add    bl, byte [rsp + 14]
	LONG $0x244cb60f; BYTE $0x09               // movzx    ecx, byte [rsp + 9]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd908                               // or    cl, bl
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x5cb60f44; WORD $0x0324             // movzx    r11d, byte [rsp + 3]
	WORD $0x0845; BYTE $0xeb                   // or    r11b, r13b
	LONG $0x6cb60f44; WORD $0x0724             // movzx    r13d, byte [rsp + 7]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x05               // movzx    ecx, byte [rsp + 5]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xc900                               // add    cl, cl
	LONG $0x06244c02                           // add    cl, byte [rsp + 6]
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	LONG $0x03e6c041                           // shl    r14b, 3
	WORD $0x0845; BYTE $0xfe                   // or    r14b, r15b
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xf1                   // or    cl, r14b
	LONG $0x241c8845                           // mov    byte [r12], r11b
	LONG $0x245cb60f; BYTE $0x28               // movzx    ebx, byte [rsp + 40]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x24448841; BYTE $0x01               // mov    byte [r12 + 1], al
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xc8                   // or    r8b, r9b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x24548845; BYTE $0x02               // mov    byte [r12 + 2], r10b
	LONG $0x24448845; BYTE $0x03               // mov    byte [r12 + 3], r8b
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB3_118
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB3_120:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_122:
	LONG $0x01498d4c             // lea    r9, [rcx + 1]
	LONG $0x04100ff3; BYTE $0x8e // movss    xmm0, dword [rsi + 4*rcx]
	LONG $0x8a042e0f             // ucomiss    xmm0, dword [rdx + 4*rcx]
	WORD $0x9a0f; BYTE $0xd3     // setp    bl
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd808                 // or    al, bl
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xc0     // xor    al, r8b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	WORD $0x894c; BYTE $0xc9     // mov    rcx, r9
	WORD $0x394d; BYTE $0xce     // cmp    r14, r9
	JNE  LBB3_122
	JMP  LBB3_123

LBB3_57:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_61
	WORD $0x9848             // cdqe

LBB3_59:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_59
	LONG $0x01c48349             // add    r12, 1

LBB3_61:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_65
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB3_63:
	LONG $0x2464894c; BYTE $0x30   // mov    qword [rsp + 48], r12
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454950f; BYTE $0x04   // setne    byte [rsp + 4]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x2454950f; BYTE $0x15   // setne    byte [rsp + 21]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454950f; BYTE $0x16   // setne    byte [rsp + 22]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x2454950f; BYTE $0x17   // setne    byte [rsp + 23]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454950f; BYTE $0x03   // setne    byte [rsp + 3]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x2454950f; BYTE $0x05   // setne    byte [rsp + 5]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7950f41               // setne    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x2454950f; BYTE $0x08   // setne    byte [rsp + 8]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd7950f40               // setne    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd2950f41               // setne    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3950f41               // setne    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd6950f41               // setne    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454950f; BYTE $0x06   // setne    byte [rsp + 6]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x2454950f; BYTE $0x07   // setne    byte [rsp + 7]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	LONG $0xd0950f41               // setne    r8b
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x2454950f; BYTE $0x0e   // setne    byte [rsp + 14]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4950f41               // setne    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd5950f41               // setne    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454950f; BYTE $0x09   // setne    byte [rsp + 9]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x2454950f; BYTE $0x0a   // setne    byte [rsp + 10]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454950f; BYTE $0x0b   // setne    byte [rsp + 11]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x2454950f; BYTE $0x0c   // setne    byte [rsp + 12]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd1950f41               // setne    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x2454950f; BYTE $0x14   // setne    byte [rsp + 20]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454950f; BYTE $0x0d   // setne    byte [rsp + 13]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x2454950f; BYTE $0x0f   // setne    byte [rsp + 15]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454950f; BYTE $0x10   // setne    byte [rsp + 16]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x2454950f; BYTE $0x11   // setne    byte [rsp + 17]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454950f; BYTE $0x12   // setne    byte [rsp + 18]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454950f; BYTE $0x13   // setne    byte [rsp + 19]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	WORD $0x950f; BYTE $0xd1       // setne    cl
	WORD $0xdb00                   // add    bl, bl
	LONG $0x04245c02               // add    bl, byte [rsp + 4]
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x245cb60f; BYTE $0x05   // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	LONG $0x245cb60f; BYTE $0x15   // movzx    ebx, byte [rsp + 21]
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x08   // add    dil, byte [rsp + 8]
	LONG $0x245cb60f; BYTE $0x16   // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03       // shl    bl, 3
	WORD $0xc308                   // or    bl, al
	WORD $0xd889                   // mov    eax, ebx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x245cb60f; BYTE $0x17   // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04       // shl    bl, 4
	WORD $0xc308                   // or    bl, al
	WORD $0xdf89                   // mov    edi, ebx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x245cb60f; BYTE $0x03   // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07   // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040               // shl    dil, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xf8       // or    r8b, dil
	WORD $0x0841; BYTE $0xdf       // or    r15b, bl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e   // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24648b4c; BYTE $0x30   // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x243c8845               // mov    byte [r12], r15b
	LONG $0x245cb60f; BYTE $0x0c   // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x24448845; BYTE $0x01   // mov    byte [r12 + 1], r8b
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x14244402               // add    al, byte [rsp + 20]
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xd808                   // or    al, bl
	WORD $0xc389                   // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xd808                   // or    al, bl
	LONG $0x245cb60f; BYTE $0x13   // movzx    ebx, byte [rsp + 19]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07       // shl    cl, 7
	WORD $0xd908                   // or    cl, bl
	WORD $0xc108                   // or    cl, al
	LONG $0x244c8845; BYTE $0x02   // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03   // mov    byte [r12 + 3], cl
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c48349               // add    r12, 4
	LONG $0x24448348; WORD $0xff28 // add    qword [rsp + 40], -1
	JNE  LBB3_63
	LONG $0x24748b4c; BYTE $0x18   // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20   // mov    r15, qword [rsp + 32]

LBB3_65:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_67:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_67
	JMP  LBB3_123

LBB3_90:
	LONG $0x1f7e8d4d         // lea    r15, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xfe490f4d         // cmovns    r15, r14
	WORD $0x488d; BYTE $0x07 // lea    ecx, [rax + 7]
	WORD $0xc085             // test    eax, eax
	WORD $0x490f; BYTE $0xc8 // cmovns    ecx, eax
	WORD $0xe183; BYTE $0xf8 // and    ecx, -8
	WORD $0xc829             // sub    eax, ecx
	JE   LBB3_94
	WORD $0x9848             // cdqe

LBB3_92:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd2950f41             // setne    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3c // movzx    r8d, byte [r12 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB3_92
	LONG $0x01c48349             // add    r12, 1

LBB3_94:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB3_98
	LONG $0x2474894c; BYTE $0x18 // mov    qword [rsp + 24], r14
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB3_96:
	LONG $0x2464894c; BYTE $0x30               // mov    qword [rsp + 48], r12
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454950f; BYTE $0x04               // setne    byte [rsp + 4]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454950f; BYTE $0x15               // setne    byte [rsp + 21]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x2454950f; BYTE $0x16               // setne    byte [rsp + 22]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454950f; BYTE $0x17               // setne    byte [rsp + 23]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x2454950f; BYTE $0x03               // setne    byte [rsp + 3]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454950f; BYTE $0x05               // setne    byte [rsp + 5]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454950f; BYTE $0x0a               // setne    byte [rsp + 10]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x2454950f; BYTE $0x06               // setne    byte [rsp + 6]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x2454950f; BYTE $0x07               // setne    byte [rsp + 7]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	LONG $0xd7950f40                           // setne    dil
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x5e8b; BYTE $0x44                   // mov    ebx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x2454950f; BYTE $0x0b               // setne    byte [rsp + 11]
	WORD $0x5a3b; BYTE $0x44                   // cmp    ebx, dword [rdx + 68]
	WORD $0x5e8b; BYTE $0x4c                   // mov    ebx, dword [rsi + 76]
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x5a3b; BYTE $0x4c                   // cmp    ebx, dword [rdx + 76]
	WORD $0x5e8b; BYTE $0x54                   // mov    ebx, dword [rsi + 84]
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454950f; BYTE $0x09               // setne    byte [rsp + 9]
	WORD $0x5a3b; BYTE $0x54                   // cmp    ebx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454950f; BYTE $0x0c               // setne    byte [rsp + 12]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x2454950f; BYTE $0x0d               // setne    byte [rsp + 13]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454950f; BYTE $0x14               // setne    byte [rsp + 20]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x2454950f; BYTE $0x0e               // setne    byte [rsp + 14]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454950f; BYTE $0x0f               // setne    byte [rsp + 15]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x2454950f; BYTE $0x11               // setne    byte [rsp + 17]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454950f; BYTE $0x13               // setne    byte [rsp + 19]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454950f; BYTE $0x12               // setne    byte [rsp + 18]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x15               // movzx    eax, byte [rsp + 21]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x0a               // add    r8b, byte [rsp + 10]
	LONG $0x245cb60f; BYTE $0x16               // movzx    ebx, byte [rsp + 22]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xc308                               // or    bl, al
	WORD $0xd889                               // mov    eax, ebx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x245cb60f; BYTE $0x17               // movzx    ebx, byte [rsp + 23]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0xc308                               // or    bl, al
	WORD $0x8941; BYTE $0xd8                   // mov    r8d, ebx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245cb60f; BYTE $0x03               // movzx    ebx, byte [rsp + 3]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0824             // movzx    r8d, byte [rsp + 8]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0b               // add    r10b, byte [rsp + 11]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0c               // movzx    eax, byte [rsp + 12]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x242c8845                           // mov    byte [r12], r13b
	LONG $0x245cb60f; BYTE $0x0d               // movzx    ebx, byte [rsp + 13]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x247c8841; BYTE $0x01               // mov    byte [r12 + 1], dil
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x245cb60f; BYTE $0x12               // movzx    ebx, byte [rsp + 18]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xc108                               // or    cl, al
	LONG $0x244c8845; BYTE $0x02               // mov    byte [r12 + 2], r9b
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c48349                           // add    r12, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB3_96
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB3_98:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xf7 // cmp    r15, r14
	JGE  LBB3_123
	WORD $0x294d; BYTE $0xfe // sub    r14, r15
	WORD $0xc931             // xor    ecx, ecx

LBB3_100:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc6     // cmp    r14, r8
	JNE  LBB3_100

LBB3_123:
	SUBQ $8, SP
	RET

DATA LCDATA3<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA3<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA3<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA3<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA3<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA3<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA3<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA3<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA3<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA3<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA3<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA3<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA3<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA3<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA3<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA3<>+0x080(SB)/8, $0x0202020202020202
DATA LCDATA3<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x090(SB)/8, $0x0404040404040404
DATA LCDATA3<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0a0(SB)/8, $0x0808080808080808
DATA LCDATA3<>+0x0a8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0b0(SB)/8, $0x1010101010101010
DATA LCDATA3<>+0x0b8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0c0(SB)/8, $0x2020202020202020
DATA LCDATA3<>+0x0c8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0d0(SB)/8, $0x4040404040404040
DATA LCDATA3<>+0x0d8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0e0(SB)/8, $0x8080808080808080
DATA LCDATA3<>+0x0e8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x0f0(SB)/8, $0x0f070e060d050c04
DATA LCDATA3<>+0x0f8(SB)/8, $0x0000000000000000
DATA LCDATA3<>+0x100(SB)/8, $0x0202020202020202
DATA LCDATA3<>+0x108(SB)/8, $0x0202020202020202
DATA LCDATA3<>+0x110(SB)/8, $0x0404040404040404
DATA LCDATA3<>+0x118(SB)/8, $0x0404040404040404
DATA LCDATA3<>+0x120(SB)/8, $0x0808080808080808
DATA LCDATA3<>+0x128(SB)/8, $0x0808080808080808
DATA LCDATA3<>+0x130(SB)/8, $0x1010101010101010
DATA LCDATA3<>+0x138(SB)/8, $0x1010101010101010
DATA LCDATA3<>+0x140(SB)/8, $0x2020202020202020
DATA LCDATA3<>+0x148(SB)/8, $0x2020202020202020
DATA LCDATA3<>+0x150(SB)/8, $0x4040404040404040
DATA LCDATA3<>+0x158(SB)/8, $0x4040404040404040
DATA LCDATA3<>+0x160(SB)/8, $0xffffffffffffffff
DATA LCDATA3<>+0x168(SB)/8, $0xffffffffffffffff
GLOBL LCDATA3<>(SB), 8, $368

TEXT ·_comparison_not_equal_arr_scalar_sse4(SB), $344-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 320(SP)
	LEAQ LCDATA3<>(SB), BP

	WORD $0x894d; BYTE $0xc6 // mov    r14, r8
	WORD $0x8949; BYTE $0xcc // mov    r12, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB4_17
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB4_32
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB4_83
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB4_99
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB4_174
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_9
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_7:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	LONG $0x04b60f45; BYTE $0x1c               // movzx    r8d, byte [r12 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1c3c8841                           // mov    byte [r12 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB4_7
	LONG $0x01c48349                           // add    r12, 1

LBB4_9:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_13
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10

LBB4_11:
	QUAD $0x0000008024a4894c                   // mov    qword [rsp + 128], r12
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd7950f40                           // setne    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x0000009824940244                   // add    r10b, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000e024bc0240                   // add    dil, byte [rsp + 224]
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x241c8841                           // mov    byte [r12], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244c8841; BYTE $0x01               // mov    byte [r12 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24548841; BYTE $0x03               // mov    byte [r12 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_11
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB4_13:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JE   LBB4_82
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB4_16:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xe6     // mov    r14, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB4_16
	JMP  LBB4_151

LBB4_17:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB4_46
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB4_114
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB4_125
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB4_174
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff2         // movsd    xmm0, qword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_25
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_23:
	LONG $0x062e0f66             // ucomisd    xmm0, qword [rsi]
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xca08                 // or    dl, cl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe3     // mov    r11, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_23
	LONG $0x01c48349             // add    r12, 1

LBB4_25:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_29
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000d82494894c // mov    qword [rsp + 216], r10
	QUAD $0x000001102494894c // mov    qword [rsp + 272], r10

LBB4_27:
	QUAD $0x0000008024a4894c                   // mov    qword [rsp + 128], r12
	LONG $0x062e0f66                           // ucomisd    xmm0, qword [rsi]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x462e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rsi + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x462e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rsi + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x462e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rsi + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x462e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rsi + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x462e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rsi + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x462e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rsi + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x462e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rsi + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x462e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rsi + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x462e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rsi + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x462e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rsi + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x462e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rsi + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x462e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rsi + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x462e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rsi + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x462e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rsi + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x462e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rsi + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	QUAD $0x00000080862e0f66                   // ucomisd    xmm0, qword [rsi + 128]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	QUAD $0x00000088862e0f66                   // ucomisd    xmm0, qword [rsi + 136]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	QUAD $0x00000090862e0f66                   // ucomisd    xmm0, qword [rsi + 144]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	QUAD $0x00000098862e0f66                   // ucomisd    xmm0, qword [rsi + 152]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	QUAD $0x000000a0862e0f66                   // ucomisd    xmm0, qword [rsi + 160]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xe0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 224], cl
	QUAD $0x000000a8862e0f66                   // ucomisd    xmm0, qword [rsi + 168]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x98248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 152], cl
	QUAD $0x000000b0862e0f66                   // ucomisd    xmm0, qword [rsi + 176]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000b8862e0f66                   // ucomisd    xmm0, qword [rsi + 184]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	QUAD $0x000000c0862e0f66                   // ucomisd    xmm0, qword [rsi + 192]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	QUAD $0x000000c8862e0f66                   // ucomisd    xmm0, qword [rsi + 200]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	QUAD $0x000000d0862e0f66                   // ucomisd    xmm0, qword [rsi + 208]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	QUAD $0x000000d8862e0f66                   // ucomisd    xmm0, qword [rsi + 216]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	QUAD $0x000000e0862e0f66                   // ucomisd    xmm0, qword [rsi + 224]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	QUAD $0x000000e8862e0f66                   // ucomisd    xmm0, qword [rsi + 232]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xf0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 240], cl
	QUAD $0x000000f0862e0f66                   // ucomisd    xmm0, qword [rsi + 240]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	QUAD $0x000000f8862e0f66                   // ucomisd    xmm0, qword [rsi + 248]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xc208                               // or    dl, al
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x20               // add    r13b, byte [rsp + 32]
	WORD $0x8944; BYTE $0xe8                   // mov    eax, r13d
	LONG $0x05e4c041                           // shl    r12b, 5
	LONG $0x6cb60f44; WORD $0x3824             // movzx    r13d, byte [rsp + 56]
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	LONG $0x64b60f44; WORD $0x3024             // movzx    r12d, byte [rsp + 48]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x244cb60f; BYTE $0x68               // movzx    ecx, byte [rsp + 104]
	WORD $0xc900                               // add    cl, cl
	LONG $0x40244c02                           // add    cl, byte [rsp + 64]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x08244488                           // mov    byte [rsp + 8], al
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0xcb08                               // or    bl, cl
	LONG $0x6cb60f44; WORD $0x2824             // movzx    r13d, byte [rsp + 40]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	LONG $0x18244488                           // mov    byte [rsp + 24], al
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x74b60f44; WORD $0x7024             // movzx    r14d, byte [rsp + 112]
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xc900                               // add    cl, cl
	LONG $0x50244c02                           // add    cl, byte [rsp + 80]
	QUAD $0x000000b0249cb60f                   // movzx    ebx, byte [rsp + 176]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0xcb08                               // or    bl, cl
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	QUAD $0x000000e0248cb60f                   // movzx    ecx, byte [rsp + 224]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	QUAD $0x00000098249cb60f                   // movzx    ebx, byte [rsp + 152]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e7c041                           // shl    r15b, 6
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x24740a44; BYTE $0x18               // or    r14b, byte [rsp + 24]
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf8                   // or    r8b, r15b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x00000088249c0244                   // add    r11b, byte [rsp + 136]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	QUAD $0x000000c0248cb60f                   // movzx    ecx, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xc9                   // or    cl, r9b
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x24048841                           // mov    byte [r12], al
	QUAD $0x000000f0248cb60f                   // movzx    ecx, byte [rsp + 240]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x24748845; BYTE $0x01               // mov    byte [r12 + 1], r14b
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xda08                               // or    dl, bl
	LONG $0x24448845; BYTE $0x02               // mov    byte [r12 + 2], r8b
	LONG $0x24548841; BYTE $0x03               // mov    byte [r12 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x0000011024848348; BYTE $0xff       // add    qword [rsp + 272], -1
	JNE  LBB4_27
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000d824948b4c                   // mov    r10, qword [rsp + 216]

LBB4_29:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_160
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB4_162

LBB4_32:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB4_60
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB4_174
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_38
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_36:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe7     // mov    r15, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_36
	LONG $0x01c48349             // add    r12, 1

LBB4_38:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB4_137
	LONG $0x10fa8349             // cmp    r10, 16
	LONG $0x245c8844; BYTE $0x08 // mov    byte [rsp + 8], r11b
	QUAD $0x0000009024b4894c     // mov    qword [rsp + 144], r14
	QUAD $0x000001082494894c     // mov    qword [rsp + 264], r10
	JB   LBB4_42
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc4     // cmp    r12, rax
	JAE  LBB4_179
	LONG $0x94048d4b             // lea    rax, [r12 + 4*r10]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB4_179

LBB4_42:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000d824848948     // mov    qword [rsp + 216], rax
	LONG $0x2464894c; BYTE $0x68 // mov    qword [rsp + 104], r12

LBB4_43:
	QUAD $0x000000d824942b4c // sub    r10, qword [rsp + 216]
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB4_44:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x000000f02494950f                   // setne    byte [rsp + 240]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd6950f40                           // setne    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd7950f40                           // setne    dil
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000f024b40240                   // add    sil, byte [rsp + 240]
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0xe0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 224]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0824             // movzx    r15d, byte [rsp + 8]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xd200                               // add    dl, dl
	LONG $0xb0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 176]
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x24548b48; BYTE $0x68               // mov    rdx, qword [rsp + 104]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	LONG $0x247cb60f; BYTE $0x50               // movzx    edi, byte [rsp + 80]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x40244402                           // add    al, byte [rsp + 64]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000008024b4b60f                   // movzx    esi, byte [rsp + 128]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	LONG $0x24548948; BYTE $0x68               // mov    qword [rsp + 104], rdx
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB4_44
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	JMP  LBB4_138

LBB4_46:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB4_72
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB4_174
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_52
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_50:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	LONG $0x04b60f45; BYTE $0x1c               // movzx    r8d, byte [r12 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1c3c8841                           // mov    byte [r12 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB4_50
	LONG $0x01c48349                           // add    r12, 1

LBB4_52:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_56
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10

LBB4_54:
	QUAD $0x0000008024a4894c                   // mov    qword [rsp + 128], r12
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd7950f40                           // setne    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7950f41                           // setne    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x0000009824940244                   // add    r10b, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000e024bc0240                   // add    dil, byte [rsp + 224]
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x241c8841                           // mov    byte [r12], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244c8841; BYTE $0x01               // mov    byte [r12 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24548841; BYTE $0x03               // mov    byte [r12 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_54
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB4_56:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JE   LBB4_124
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB4_59:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xe6     // mov    r14, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB4_59
	JMP  LBB4_170

LBB4_60:
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_64
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_62:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe7     // mov    r15, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_62
	LONG $0x01c48349             // add    r12, 1

LBB4_64:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20fe8349             // cmp    r14, 32
	JL   LBB4_141
	LONG $0x10fa8349             // cmp    r10, 16
	LONG $0x245c8844; BYTE $0x08 // mov    byte [rsp + 8], r11b
	QUAD $0x0000009024b4894c     // mov    qword [rsp + 144], r14
	QUAD $0x000001202494894c     // mov    qword [rsp + 288], r10
	JB   LBB4_68
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc4     // cmp    r12, rax
	JAE  LBB4_182
	LONG $0x94048d4b             // lea    rax, [r12 + 4*r10]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB4_182

LBB4_68:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000d824848948     // mov    qword [rsp + 216], rax
	LONG $0x2464894c; BYTE $0x68 // mov    qword [rsp + 104], r12

LBB4_69:
	QUAD $0x000000d824942b4c // sub    r10, qword [rsp + 216]
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB4_70:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x000000f02494950f                   // setne    byte [rsp + 240]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd6950f40                           // setne    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd7950f40                           // setne    dil
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000f024b40240                   // add    sil, byte [rsp + 240]
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0xe0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 224]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0824             // movzx    r15d, byte [rsp + 8]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xd200                               // add    dl, dl
	LONG $0xb0249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 176]
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x24548b48; BYTE $0x68               // mov    rdx, qword [rsp + 104]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	LONG $0x247cb60f; BYTE $0x50               // movzx    edi, byte [rsp + 80]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x40244402                           // add    al, byte [rsp + 64]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000008024b4b60f                   // movzx    esi, byte [rsp + 128]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	LONG $0x24548948; BYTE $0x68               // mov    qword [rsp + 104], rdx
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB4_70
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x0000012024948b4c                   // mov    r10, qword [rsp + 288]
	JMP  LBB4_142

LBB4_72:
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_76
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_74:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	LONG $0x04b60f45; BYTE $0x1c               // movzx    r8d, byte [r12 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1c3c8841                           // mov    byte [r12 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB4_74
	LONG $0x01c48349                           // add    r12, 1

LBB4_76:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_80
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10

LBB4_78:
	QUAD $0x0000008024a4894c                   // mov    qword [rsp + 128], r12
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd7950f40                           // setne    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x0000009824940244                   // add    r10b, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000e024bc0240                   // add    dil, byte [rsp + 224]
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x241c8841                           // mov    byte [r12], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244c8841; BYTE $0x01               // mov    byte [r12 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24548841; BYTE $0x03               // mov    byte [r12 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_78
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB4_80:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_149

LBB4_82:
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB4_151

LBB4_83:
	LONG $0x2ab70f44         // movzx    r13d, word [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_87
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_85:
	LONG $0x2e394466             // cmp    word [rsi], r13w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe7     // mov    r15, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_85
	LONG $0x01c48349             // add    r12, 1

LBB4_87:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_95
	LONG $0x08fa8349         // cmp    r10, 8
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	JB   LBB4_91
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x06e0c148         // shl    rax, 6
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	WORD $0x3949; BYTE $0xc4 // cmp    r12, rax
	JAE  LBB4_185
	LONG $0x94048d4b         // lea    rax, [r12 + 4*r10]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB4_185

LBB4_91:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax

LBB4_92:
	LONG $0x2464894c; BYTE $0x08 // mov    qword [rsp + 8], r12
	LONG $0x24542b4c; BYTE $0x20 // sub    r10, qword [rsp + 32]
	QUAD $0x000000f02494894c     // mov    qword [rsp + 240], r10

LBB4_93:
	WORD $0x8949; BYTE $0xf3                   // mov    r11, rsi
	LONG $0x2e394466                           // cmp    word [rsi], r13w
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x6e394466; BYTE $0x02               // cmp    word [rsi + 2], r13w
	LONG $0xd6950f40                           // setne    sil
	LONG $0x6b394566; BYTE $0x04               // cmp    word [r11 + 4], r13w
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x6b394566; BYTE $0x06               // cmp    word [r11 + 6], r13w
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x6b394566; BYTE $0x08               // cmp    word [r11 + 8], r13w
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x6b394566; BYTE $0x0a               // cmp    word [r11 + 10], r13w
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x6b394566; BYTE $0x0c               // cmp    word [r11 + 12], r13w
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x6b394566; BYTE $0x0e               // cmp    word [r11 + 14], r13w
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x6b394566; BYTE $0x10               // cmp    word [r11 + 16], r13w
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x6b394566; BYTE $0x12               // cmp    word [r11 + 18], r13w
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x6b394566; BYTE $0x14               // cmp    word [r11 + 20], r13w
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x6b394566; BYTE $0x16               // cmp    word [r11 + 22], r13w
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x6b394566; BYTE $0x18               // cmp    word [r11 + 24], r13w
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x6b394566; BYTE $0x1a               // cmp    word [r11 + 26], r13w
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x6b394566; BYTE $0x1c               // cmp    word [r11 + 28], r13w
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x6b394566; BYTE $0x1e               // cmp    word [r11 + 30], r13w
	LONG $0xd7950f40                           // setne    dil
	LONG $0x6b394566; BYTE $0x20               // cmp    word [r11 + 32], r13w
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x6b394566; BYTE $0x22               // cmp    word [r11 + 34], r13w
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x6b394566; BYTE $0x24               // cmp    word [r11 + 36], r13w
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x6b394566; BYTE $0x26               // cmp    word [r11 + 38], r13w
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x6b394566; BYTE $0x28               // cmp    word [r11 + 40], r13w
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x6b394566; BYTE $0x2a               // cmp    word [r11 + 42], r13w
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x6b394566; BYTE $0x2c               // cmp    word [r11 + 44], r13w
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x6b394566; BYTE $0x2e               // cmp    word [r11 + 46], r13w
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x6b394566; BYTE $0x30               // cmp    word [r11 + 48], r13w
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x6b394566; BYTE $0x32               // cmp    word [r11 + 50], r13w
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x6b394566; BYTE $0x34               // cmp    word [r11 + 52], r13w
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x6b394566; BYTE $0x36               // cmp    word [r11 + 54], r13w
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x6b394566; BYTE $0x38               // cmp    word [r11 + 56], r13w
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x6b394566; BYTE $0x3a               // cmp    word [r11 + 58], r13w
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x6b394566; BYTE $0x3c               // cmp    word [r11 + 60], r13w
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x6b394566; BYTE $0x3e               // cmp    word [r11 + 62], r13w
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x0000009824b40240                   // add    sil, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xc900                               // add    cl, cl
	LONG $0xe0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 224]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	QUAD $0x000000b0248cb60f                   // movzx    ecx, byte [rsp + 176]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xce                   // or    r14b, r9b
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xc900                               // add    cl, cl
	LONG $0x50244c02                           // add    cl, byte [rsp + 80]
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x68               // movzx    ecx, byte [rsp + 104]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf2                   // or    r10b, sil
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02518844                           // mov    byte [rcx + 2], r10b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40738d49                           // lea    rsi, [r11 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_93
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]

LBB4_95:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JE   LBB4_113
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xf6 // xor    r14d, r14d

LBB4_98:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x2e394466             // cmp    word [rsi], r13w
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xf7     // mov    rdi, r14
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xf1     // mov    ecx, r14d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68349             // add    r14, 2
	LONG $0x6e394466; BYTE $0x02 // cmp    word [rsi + 2], r13w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x394d; BYTE $0xf1     // cmp    r9, r14
	JNE  LBB4_98
	JMP  LBB4_166

LBB4_99:
	LONG $0x2ab70f44         // movzx    r13d, word [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_103
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_101:
	LONG $0x2e394466             // cmp    word [rsi], r13w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe7     // mov    r15, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_101
	LONG $0x01c48349             // add    r12, 1

LBB4_103:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_111
	LONG $0x08fa8349         // cmp    r10, 8
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	JB   LBB4_107
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x06e0c148         // shl    rax, 6
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	WORD $0x3949; BYTE $0xc4 // cmp    r12, rax
	JAE  LBB4_191
	LONG $0x94048d4b         // lea    rax, [r12 + 4*r10]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB4_191

LBB4_107:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax

LBB4_108:
	LONG $0x2464894c; BYTE $0x08 // mov    qword [rsp + 8], r12
	LONG $0x24542b4c; BYTE $0x20 // sub    r10, qword [rsp + 32]
	QUAD $0x000000f02494894c     // mov    qword [rsp + 240], r10

LBB4_109:
	WORD $0x8949; BYTE $0xf3                   // mov    r11, rsi
	LONG $0x2e394466                           // cmp    word [rsi], r13w
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x6e394466; BYTE $0x02               // cmp    word [rsi + 2], r13w
	LONG $0xd6950f40                           // setne    sil
	LONG $0x6b394566; BYTE $0x04               // cmp    word [r11 + 4], r13w
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x6b394566; BYTE $0x06               // cmp    word [r11 + 6], r13w
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x6b394566; BYTE $0x08               // cmp    word [r11 + 8], r13w
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x6b394566; BYTE $0x0a               // cmp    word [r11 + 10], r13w
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x6b394566; BYTE $0x0c               // cmp    word [r11 + 12], r13w
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x6b394566; BYTE $0x0e               // cmp    word [r11 + 14], r13w
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x6b394566; BYTE $0x10               // cmp    word [r11 + 16], r13w
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x6b394566; BYTE $0x12               // cmp    word [r11 + 18], r13w
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x6b394566; BYTE $0x14               // cmp    word [r11 + 20], r13w
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x6b394566; BYTE $0x16               // cmp    word [r11 + 22], r13w
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x6b394566; BYTE $0x18               // cmp    word [r11 + 24], r13w
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x6b394566; BYTE $0x1a               // cmp    word [r11 + 26], r13w
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x6b394566; BYTE $0x1c               // cmp    word [r11 + 28], r13w
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x6b394566; BYTE $0x1e               // cmp    word [r11 + 30], r13w
	LONG $0xd7950f40                           // setne    dil
	LONG $0x6b394566; BYTE $0x20               // cmp    word [r11 + 32], r13w
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x6b394566; BYTE $0x22               // cmp    word [r11 + 34], r13w
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x6b394566; BYTE $0x24               // cmp    word [r11 + 36], r13w
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x6b394566; BYTE $0x26               // cmp    word [r11 + 38], r13w
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x6b394566; BYTE $0x28               // cmp    word [r11 + 40], r13w
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x6b394566; BYTE $0x2a               // cmp    word [r11 + 42], r13w
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x6b394566; BYTE $0x2c               // cmp    word [r11 + 44], r13w
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x6b394566; BYTE $0x2e               // cmp    word [r11 + 46], r13w
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x6b394566; BYTE $0x30               // cmp    word [r11 + 48], r13w
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x6b394566; BYTE $0x32               // cmp    word [r11 + 50], r13w
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x6b394566; BYTE $0x34               // cmp    word [r11 + 52], r13w
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x6b394566; BYTE $0x36               // cmp    word [r11 + 54], r13w
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x6b394566; BYTE $0x38               // cmp    word [r11 + 56], r13w
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x6b394566; BYTE $0x3a               // cmp    word [r11 + 58], r13w
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x6b394566; BYTE $0x3c               // cmp    word [r11 + 60], r13w
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x6b394566; BYTE $0x3e               // cmp    word [r11 + 62], r13w
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x0000009824b40240                   // add    sil, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xc900                               // add    cl, cl
	LONG $0xe0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 224]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	QUAD $0x000000b0248cb60f                   // movzx    ecx, byte [rsp + 176]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xce                   // or    r14b, r9b
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xc900                               // add    cl, cl
	LONG $0x50244c02                           // add    cl, byte [rsp + 80]
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x68               // movzx    ecx, byte [rsp + 104]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf2                   // or    r10b, sil
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02518844                           // mov    byte [rcx + 2], r10b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40738d49                           // lea    rsi, [r11 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_109
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]

LBB4_111:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_164

LBB4_113:
	WORD $0x3145; BYTE $0xf6 // xor    r14d, r14d
	JMP  LBB4_166

LBB4_114:
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_118
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_116:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	LONG $0x04b60f45; BYTE $0x1c               // movzx    r8d, byte [r12 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1c3c8841                           // mov    byte [r12 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB4_116
	LONG $0x01c48349                           // add    r12, 1

LBB4_118:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_122
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10

LBB4_120:
	QUAD $0x0000008024a4894c                   // mov    qword [rsp + 128], r12
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000000e02494950f                   // setne    byte [rsp + 224]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd7950f40                           // setne    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x000000a02494950f                   // setne    byte [rsp + 160]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7950f41                           // setne    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x0000009824940244                   // add    r10b, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000e024bc0240                   // add    dil, byte [rsp + 224]
	QUAD $0x000000882484b60f                   // movzx    eax, byte [rsp + 136]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x241c8841                           // mov    byte [r12], bl
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x244c8841; BYTE $0x01               // mov    byte [r12 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x247c8845; BYTE $0x02               // mov    byte [r12 + 2], r15b
	LONG $0x24548841; BYTE $0x03               // mov    byte [r12 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB4_120
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB4_122:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_168

LBB4_124:
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB4_170

LBB4_125:
	LONG $0x1f568d4d         // lea    r10, [r14 + 31]
	WORD $0x854d; BYTE $0xf6 // test    r14, r14
	LONG $0xd6490f4d         // cmovns    r10, r14
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff3         // movss    xmm0, dword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB4_129
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB4_127:
	WORD $0x2e0f; BYTE $0x06     // ucomiss    xmm0, dword [rsi]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xca08                 // or    dl, cl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	WORD $0x894d; BYTE $0xe3     // mov    r11, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB4_127
	LONG $0x01c48349             // add    r12, 1

LBB4_129:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fe8349         // cmp    r14, 32
	JL   LBB4_145
	LONG $0x04fa8349         // cmp    r10, 4
	JB   LBB4_133
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	WORD $0x3949; BYTE $0xc4 // cmp    r12, rax
	JAE  LBB4_188
	LONG $0x94048d4b         // lea    rax, [r12 + 4*r10]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB4_188

LBB4_133:
	WORD $0x3145; BYTE $0xc0 // xor    r8d, r8d
	WORD $0x8948; BYTE $0xf3 // mov    rbx, rsi
	WORD $0x894d; BYTE $0xe7 // mov    r15, r12

LBB4_134:
	QUAD $0x0000008024bc894c // mov    qword [rsp + 128], r15
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14
	QUAD $0x000001102494894c // mov    qword [rsp + 272], r10
	WORD $0x294d; BYTE $0xc2 // sub    r10, r8
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB4_135:
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xc208                               // or    dl, al
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xa0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 160], cl
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xe0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 224], cl
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x98248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 152], cl
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xf0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 240], cl
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f40                           // setne    sil
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0xd200                               // add    dl, dl
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd5                   // mov    r13d, edx
	LONG $0x2454b60f; BYTE $0x20               // movzx    edx, byte [rsp + 32]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x30244c02                           // add    cl, byte [rsp + 48]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	LONG $0x08244488                           // mov    byte [rsp + 8], al
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xca08                               // or    dl, cl
	LONG $0x6cb60f44; WORD $0x5824             // movzx    r13d, byte [rsp + 88]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x6cb60f44; WORD $0x7024             // movzx    r13d, byte [rsp + 112]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x60               // add    r12b, byte [rsp + 96]
	WORD $0x8944; BYTE $0xe1                   // mov    ecx, r12d
	QUAD $0x0000b024a4b60f44; BYTE $0x00       // movzx    r12d, byte [rsp + 176]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xcc                   // or    r12b, cl
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0x8941; BYTE $0xcc                   // mov    r12d, ecx
	QUAD $0x000000e0248cb60f                   // movzx    ecx, byte [rsp + 224]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x64b60f44; WORD $0x0824             // movzx    r12d, byte [rsp + 8]
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e6c041                           // shl    r14b, 6
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	WORD $0x0841; BYTE $0xd5                   // or    r13b, dl
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf0                   // or    r8b, r14b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x00000088249c0244                   // add    r11b, byte [rsp + 136]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	LONG $0x04e7c041                           // shl    r15b, 4
	WORD $0x0845; BYTE $0xcf                   // or    r15b, r9b
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	WORD $0x8844; BYTE $0x20                   // mov    byte [rax], r12b
	QUAD $0x000000f0248cb60f                   // movzx    ecx, byte [rsp + 240]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0844; BYTE $0xfe                   // or    sil, r15b
	LONG $0x02408844                           // mov    byte [rax + 2], r8b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c08348                           // add    rax, 4
	QUAD $0x0000008024848948                   // mov    qword [rsp + 128], rax
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB4_135
	QUAD $0x0000008024bc8b4c                   // mov    r15, qword [rsp + 128]
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x0000011024948b4c                   // mov    r10, qword [rsp + 272]
	JMP  LBB4_146

LBB4_137:
	LONG $0x2464894c; BYTE $0x68 // mov    qword [rsp + 104], r12

LBB4_138:
	LONG $0x05e2c149             // shl    r10, 5
	WORD $0x394d; BYTE $0xf2     // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0     // mov    r8, r14
	WORD $0x294d; BYTE $0xd0     // sub    r8, r10
	WORD $0xf749; BYTE $0xd2     // not    r10
	WORD $0x014d; BYTE $0xf2     // add    r10, r14
	JE   LBB4_144
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x68 // mov    r14, qword [rsp + 104]

LBB4_154:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB4_154
	JMP  LBB4_157

LBB4_141:
	LONG $0x2464894c; BYTE $0x68 // mov    qword [rsp + 104], r12

LBB4_142:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_155

LBB4_144:
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	JMP  LBB4_159

LBB4_145:
	WORD $0x894d; BYTE $0xe7 // mov    r15, r12
	WORD $0x8948; BYTE $0xf3 // mov    rbx, rsi

LBB4_146:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xf2 // cmp    r10, r14
	JGE  LBB4_174
	WORD $0x894d; BYTE $0xf0 // mov    r8, r14
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xf2 // add    r10, r14
	JNE  LBB4_175
	WORD $0xf631             // xor    esi, esi
	JMP  LBB4_177

LBB4_149:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB4_150:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xe6     // mov    r14, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB4_150

LBB4_151:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	WORD $0x3944; BYTE $0x2e // cmp    dword [rsi], r13d
	JMP  LBB4_172

LBB4_155:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x68 // mov    r14, qword [rsp + 104]

LBB4_156:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB4_156

LBB4_157:
	WORD $0x014c; BYTE $0xce // add    rsi, r9
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174

LBB4_159:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x68 // mov    r8, qword [rsp + 104]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al
	WORD $0x3040; BYTE $0xfb     // xor    bl, dil
	LONG $0x101c8841             // mov    byte [r8 + rdx], bl
	JMP  LBB4_174

LBB4_160:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB4_161:
	LONG $0x062e0f66             // ucomisd    xmm0, qword [rsi]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xc808                 // or    al, cl
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xe6     // mov    r14, r12
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x462e0f66; BYTE $0x08 // ucomisd    xmm0, qword [rsi + 8]
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	LONG $0xd29a0f41             // setp    r10b
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0x0844; BYTE $0xd0     // or    al, r10b
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB4_161

LBB4_162:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	LONG $0x062e0f66         // ucomisd    xmm0, qword [rsi]
	WORD $0x9a0f; BYTE $0xd0 // setp    al
	WORD $0x950f; BYTE $0xd2 // setne    dl
	WORD $0xc208             // or    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x894c; BYTE $0xd8 // mov    rax, r11
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x04348a41         // mov    sil, byte [r12 + rax]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf2 // xor    dl, sil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x041c8841         // mov    byte [r12 + rax], bl
	JMP  LBB4_174

LBB4_164:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xf6 // xor    r14d, r14d

LBB4_165:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x2e394466             // cmp    word [rsi], r13w
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xf7     // mov    rdi, r14
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xf1     // mov    ecx, r14d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68349             // add    r14, 2
	LONG $0x6e394466; BYTE $0x02 // cmp    word [rsi + 2], r13w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x394d; BYTE $0xf1     // cmp    r9, r14
	JNE  LBB4_165

LBB4_166:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	LONG $0x2e394466         // cmp    word [rsi], r13w
	WORD $0x950f; BYTE $0xd0 // setne    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xf2 // mov    rdx, r14
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x143c8a41         // mov    dil, byte [r12 + rdx]
	LONG $0x07e68041         // and    r14b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xf1 // mov    ecx, r14d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	JMP  LBB4_173

LBB4_168:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB4_169:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x894d; BYTE $0xe6     // mov    r14, r12
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB4_169

LBB4_170:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	WORD $0x394c; BYTE $0x2e // cmp    qword [rsi], r13

LBB4_172:
	WORD $0x950f; BYTE $0xd0 // setne    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x14348a41         // mov    sil, byte [r12 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil

LBB4_173:
	LONG $0x141c8841 // mov    byte [r12 + rdx], bl

LBB4_174:
	MOVQ 320(SP), SP
	RET

LBB4_175:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi
	WORD $0x894d; BYTE $0xfe // mov    r14, r15

LBB4_176:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xca08                 // or    dl, cl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0xb341; BYTE $0x01     // mov    r11b, 1
	WORD $0xd241; BYTE $0xe3     // shl    r11b, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0x2041; BYTE $0xd3     // and    r11b, dl
	WORD $0x3045; BYTE $0xd3     // xor    r11b, r10b
	LONG $0x3e1c8845             // mov    byte [r14 + rdi], r11b
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0x085b8d48             // lea    rbx, [rbx + 8]
	LONG $0xd29a0f41             // setp    r10b
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0x0844; BYTE $0xd2     // or    dl, r10b
	WORD $0xdaf6                 // neg    dl
	WORD $0x3044; BYTE $0xda     // xor    dl, r11b
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xd8     // xor    al, r11b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB4_176

LBB4_177:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB4_174
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd0 // setp    al
	WORD $0x950f; BYTE $0xd2 // setne    dl
	WORD $0xc208             // or    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x8948; BYTE $0xf0 // mov    rax, rsi
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x073c8a41         // mov    dil, byte [r15 + rax]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xfa // xor    dl, dil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x071c8841         // mov    byte [r15 + rax], bl
	JMP  LBB4_174

LBB4_179:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000013024848948             // mov    qword [rsp + 304], rax
	QUAD $0x000000d82494894c             // mov    qword [rsp + 216], r10
	LONG $0x94048d4b                     // lea    rax, [r12 + 4*r10]
	LONG $0x24448948; BYTE $0x68         // mov    qword [rsp + 104], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000120248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 288], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008024a4894c             // mov    qword [rsp + 128], r12

LBB4_180:
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0x05e1c148                           // shl    rcx, 5
	WORD $0x8949; BYTE $0xcb                   // mov    r11, rcx
	WORD $0x8949; BYTE $0xc8                   // mov    r8, rcx
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	WORD $0x8948; BYTE $0xcb                   // mov    rbx, rcx
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	WORD $0x8948; BYTE $0xcf                   // mov    rdi, rcx
	WORD $0x8949; BYTE $0xc9                   // mov    r9, rcx
	LONG $0x244c8948; BYTE $0x30               // mov    qword [rsp + 48], rcx
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	WORD $0x8948; BYTE $0xca                   // mov    rdx, rcx
	LONG $0x0e0cb60f                           // movzx    ecx, byte [rsi + rcx]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x164cb60f; BYTE $0x01               // movzx    ecx, byte [rsi + rdx + 1]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x164cb60f; BYTE $0x02               // movzx    ecx, byte [rsi + rdx + 2]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x164cb60f; BYTE $0x03               // movzx    ecx, byte [rsi + rdx + 3]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x164cb60f; BYTE $0x04               // movzx    ecx, byte [rsi + rdx + 4]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x164cb60f; BYTE $0x05               // movzx    ecx, byte [rsi + rdx + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x164cb60f; BYTE $0x06               // movzx    ecx, byte [rsi + rdx + 6]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x164cb60f; BYTE $0x07               // movzx    ecx, byte [rsi + rdx + 7]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x164cb60f; BYTE $0x08               // movzx    ecx, byte [rsi + rdx + 8]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x164cb60f; BYTE $0x09               // movzx    ecx, byte [rsi + rdx + 9]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x164cb60f; BYTE $0x0a               // movzx    ecx, byte [rsi + rdx + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x164cb60f; BYTE $0x0b               // movzx    ecx, byte [rsi + rdx + 11]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x164cb60f; BYTE $0x0c               // movzx    ecx, byte [rsi + rdx + 12]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x164cb60f; BYTE $0x0d               // movzx    ecx, byte [rsi + rdx + 13]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x164cb60f; BYTE $0x0e               // movzx    ecx, byte [rsi + rdx + 14]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x164cb60f; BYTE $0x0f               // movzx    ecx, byte [rsi + rdx + 15]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x24548948; BYTE $0x20               // mov    qword [rsp + 32], rdx
	WORD $0x8948; BYTE $0xd1                   // mov    rcx, rdx
	LONG $0x20c98348                           // or    rcx, 32
	LONG $0x244c8948; BYTE $0x18               // mov    qword [rsp + 24], rcx
	LONG $0x40cb8349                           // or    r11, 64
	LONG $0x245c894c; BYTE $0x70               // mov    qword [rsp + 112], r11
	LONG $0x60c88349                           // or    r8, 96
	LONG $0x2444894c; BYTE $0x40               // mov    qword [rsp + 64], r8
	LONG $0x80ce8149; WORD $0x0000; BYTE $0x00 // or    r14, 128
	LONG $0xa0cd8149; WORD $0x0000; BYTE $0x00 // or    r13, 160
	WORD $0x8949; BYTE $0xda                   // mov    r10, rbx
	LONG $0xc0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 192
	LONG $0x2454894c; BYTE $0x48               // mov    qword [rsp + 72], r10
	LONG $0xe0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 224
	LONG $0x00cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 256
	LONG $0x20cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 288
	QUAD $0x000000e024bc8948                   // mov    qword [rsp + 224], rdi
	LONG $0x40c98149; WORD $0x0001; BYTE $0x00 // or    r9, 320
	LONG $0x244c894c; BYTE $0x28               // mov    qword [rsp + 40], r9
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	LONG $0x60cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 352
	LONG $0x245c8948; BYTE $0x30               // mov    qword [rsp + 48], rbx
	LONG $0x01800d48; WORD $0x0000             // or    rax, 384
	LONG $0x24448948; BYTE $0x50               // mov    qword [rsp + 80], rax
	WORD $0x8948; BYTE $0xd0                   // mov    rax, rdx
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	WORD $0x8948; BYTE $0xd1                   // mov    rcx, rdx
	LONG $0xc0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 448
	LONG $0x244c8948; BYTE $0x10               // mov    qword [rsp + 16], rcx
	WORD $0x8948; BYTE $0xd1                   // mov    rcx, rdx
	LONG $0xe0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 480
	LONG $0x244c8948; BYTE $0x38               // mov    qword [rsp + 56], rcx
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	LONG $0x203a0f66; WORD $0x1624; BYTE $0x01 // pinsrb    xmm4, byte [rsi + rdx], 1
	QUAD $0x021e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r11], 2
	QUAD $0x030624203a0f4266                   // pinsrb    xmm4, byte [rsi + r8], 3
	QUAD $0x043624203a0f4266                   // pinsrb    xmm4, byte [rsi + r14], 4
	QUAD $0x052e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r13], 5
	QUAD $0x061624203a0f4266                   // pinsrb    xmm4, byte [rsi + r10], 6
	QUAD $0x072624203a0f4266                   // pinsrb    xmm4, byte [rsi + r12], 7
	QUAD $0x083e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r15], 8
	LONG $0x203a0f66; WORD $0x3e24; BYTE $0x09 // pinsrb    xmm4, byte [rsi + rdi], 9
	QUAD $0x0a0e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r9], 10
	LONG $0x203a0f66; WORD $0x1e24; BYTE $0x0b // pinsrb    xmm4, byte [rsi + rbx], 11
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	LONG $0x203a0f66; WORD $0x1624; BYTE $0x0c // pinsrb    xmm4, byte [rsi + rdx], 12
	LONG $0x203a0f66; WORD $0x0624; BYTE $0x0d // pinsrb    xmm4, byte [rsi + rax], 13
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	LONG $0x203a0f66; WORD $0x1e24; BYTE $0x0e // pinsrb    xmm4, byte [rsi + rbx], 14
	LONG $0x203a0f66; WORD $0x0e24; BYTE $0x0f // pinsrb    xmm4, byte [rsi + rcx], 15
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x01011e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 1], 1
	QUAD $0x011e5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r11 + 1], 2
	QUAD $0x01065c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r8 + 1], 3
	QUAD $0x01365c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r14 + 1], 4
	QUAD $0x012e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r13 + 1], 5
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x01165c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r10 + 1], 6
	QUAD $0x01265c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r12 + 1], 7
	WORD $0x894d; BYTE $0xe5                   // mov    r13, r12
	QUAD $0x013e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r15 + 1], 8
	QUAD $0x09013e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 1], 9
	QUAD $0x010e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r9 + 1], 10
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x01265c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r12 + 1], 11
	QUAD $0x0c01165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 1], 12
	QUAD $0x0d01065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 1], 13
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	LONG $0x24448948; BYTE $0x58               // mov    qword [rsp + 88], rax
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e01065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 1], 14
	QUAD $0x00012024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 288]
	LONG $0xe6740f66                           // pcmpeqb    xmm4, xmm6
	QUAD $0x0f010e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 1], 15
	LONG $0xde740f66                           // pcmpeqb    xmm3, xmm6
	QUAD $0x00000100856f0f66                   // movdqa    xmm0, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xdcfc0f66                           // paddb    xmm3, xmm4
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	LONG $0x0654b60f; BYTE $0x10               // movzx    edx, byte [rsi + rax + 16]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0102066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 2], 1
	LONG $0x24548b4c; BYTE $0x70               // mov    r10, qword [rsp + 112]
	QUAD $0x02166c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r10 + 2], 2
	LONG $0x247c8b48; BYTE $0x40               // mov    rdi, qword [rsp + 64]
	QUAD $0x03023e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 2], 3
	QUAD $0x02366c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r14 + 2], 4
	QUAD $0x021e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r11 + 2], 5
	LONG $0x244c8b4c; BYTE $0x48               // mov    r9, qword [rsp + 72]
	QUAD $0x020e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r9 + 2], 6
	WORD $0x894c; BYTE $0xeb                   // mov    rbx, r13
	QUAD $0x022e6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r13 + 2], 7
	QUAD $0x023e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r15 + 2], 8
	QUAD $0x000000e024948b48                   // mov    rdx, qword [rsp + 224]
	QUAD $0x0902166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 2], 9
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0a02066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 2], 10
	QUAD $0x02266c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r12 + 2], 11
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x0c020e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 2], 12
	QUAD $0x02066c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r8 + 2], 13
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x022e6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r13 + 2], 14
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	QUAD $0x02066c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r8 + 2], 15
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0103067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 1
	QUAD $0x03167c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rsi + r10 + 3], 2
	QUAD $0x03033e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 3], 3
	QUAD $0x03367c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r14 + 3], 4
	QUAD $0x031e7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r11 + 3], 5
	QUAD $0x030e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r9 + 3], 6
	QUAD $0x07031e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 3], 7
	QUAD $0x033e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r15 + 3], 8
	QUAD $0x0903167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 3], 9
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0a03067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 10
	QUAD $0x03267c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r12 + 3], 11
	QUAD $0x0c030e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 3], 12
	LONG $0x24448b48; BYTE $0x58               // mov    rax, qword [rsp + 88]
	QUAD $0x0d03067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 13
	QUAD $0x032e7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r13 + 3], 14
	QUAD $0x03067c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r8 + 3], 15
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0104064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 4], 1
	QUAD $0x04164c203a0f4266; BYTE $0x02       // pinsrb    xmm1, byte [rsi + r10 + 4], 2
	QUAD $0x03043e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 4], 3
	QUAD $0x04364c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r14 + 4], 4
	QUAD $0x041e4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r11 + 4], 5
	WORD $0x894c; BYTE $0xd8                   // mov    rax, r11
	QUAD $0x00000088249c894c                   // mov    qword [rsp + 136], r11
	QUAD $0x040e4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r9 + 4], 6
	QUAD $0x07041e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 4], 7
	WORD $0x8948; BYTE $0xdf                   // mov    rdi, rbx
	QUAD $0x043e4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r15 + 4], 8
	QUAD $0x0904164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 4], 9
	WORD $0x8948; BYTE $0xd3                   // mov    rbx, rdx
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0a04164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 4], 10
	QUAD $0x04264c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r12 + 4], 11
	QUAD $0x0c040e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 4], 12
	LONG $0x245c8b4c; BYTE $0x58               // mov    r11, qword [rsp + 88]
	QUAD $0x041e4c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r11 + 4], 13
	QUAD $0x042e4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r13 + 4], 14
	QUAD $0x04064c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r8 + 4], 15
	LONG $0xee740f66                           // pcmpeqb    xmm5, xmm6
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xfe740f66                           // pcmpeqb    xmm7, xmm6
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xf8df0f66                           // pandn    xmm7, xmm0
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	LONG $0x0e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rcx + 17]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0xce740f66                           // pcmpeqb    xmm1, xmm6
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xc8df0f66                           // pandn    xmm1, xmm0
	LONG $0xcfeb0f66                           // por    xmm1, xmm7
	LONG $0x0e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rcx + 18]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xd8f80f66                           // psubb    xmm3, xmm0
	LONG $0xcbeb0f66                           // por    xmm1, xmm3
	LONG $0x0e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rcx + 19]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x01051654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 5], 1
	QUAD $0x051654203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rsi + r10 + 5], 2
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x03050e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 5], 3
	LONG $0x2474894c; BYTE $0x78               // mov    qword [rsp + 120], r14
	QUAD $0x053654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r14 + 5], 4
	QUAD $0x05050654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 5], 5
	WORD $0x894d; BYTE $0xcc                   // mov    r12, r9
	QUAD $0x050e54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r9 + 5], 6
	QUAD $0x000000a024bc8948                   // mov    qword [rsp + 160], rdi
	QUAD $0x07053e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 5], 7
	QUAD $0x053e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r15 + 5], 8
	WORD $0x8949; BYTE $0xd9                   // mov    r9, rbx
	QUAD $0x09051e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 5], 9
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0a050654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 5], 10
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x0b050e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 5], 11
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x052e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r13 + 5], 12
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	QUAD $0x051e54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r11 + 5], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e050e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 5], 14
	LONG $0x245c8b4c; BYTE $0x38               // mov    r11, qword [rsp + 56]
	QUAD $0x051e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r11 + 5], 15
	QUAD $0x061644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rdx + 6], 1
	QUAD $0x061644203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rsi + r10 + 6], 2
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x061e44203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rbx + 6], 3
	QUAD $0x063644203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r14 + 6], 4
	QUAD $0x00000088249c8b48                   // mov    rbx, qword [rsp + 136]
	QUAD $0x061e44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rbx + 6], 5
	QUAD $0x062644203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r12 + 6], 6
	QUAD $0x063e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rdi + 6], 7
	QUAD $0x063e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r15 + 6], 8
	QUAD $0x060e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 6], 9
	QUAD $0x060644203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rax + 6], 10
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x061e44203a0f4466; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + rbx + 6], 11
	QUAD $0x062e44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r13 + 6], 12
	QUAD $0x060644203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r8 + 6], 13
	QUAD $0x060e44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rcx + 6], 14
	QUAD $0x061e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r11 + 6], 15
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x071674203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rdx + 7], 1
	QUAD $0x071674203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r10 + 7], 2
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x071674203a0f4466; BYTE $0x03       // pinsrb    xmm14, byte [rsi + rdx + 7], 3
	QUAD $0x073674203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rsi + r14 + 7], 4
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x071e74203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rsi + r11 + 7], 5
	QUAD $0x072674203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r12 + 7], 6
	QUAD $0x073e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rdi + 7], 7
	QUAD $0x073e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r15 + 7], 8
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	LONG $0x247c894c; BYTE $0x60               // mov    qword [rsp + 96], r15
	QUAD $0x070e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 7], 9
	QUAD $0x070674203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + rax + 7], 10
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x071e74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + rbx + 7], 11
	QUAD $0x072e74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r13 + 7], 12
	WORD $0x894d; BYTE $0xee                   // mov    r14, r13
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x070674203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + r8 + 7], 13
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x072e74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r13 + 7], 14
	LONG $0xd6740f66                           // pcmpeqb    xmm2, xmm6
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0xd0df0f66                           // pandn    xmm2, xmm0
	LONG $0x740f4466; BYTE $0xc6               // pcmpeqb    xmm8, xmm6
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xdf0f4466; BYTE $0xc0               // pandn    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x244c8b4c; BYTE $0x20               // mov    r9, qword [rsp + 32]
	LONG $0x54b60f42; WORD $0x140e             // movzx    edx, byte [rsi + r9 + 20]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x070e74203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + rcx + 7], 15
	LONG $0x740f4466; BYTE $0xf6               // pcmpeqb    xmm14, xmm6
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xdf0f4466; BYTE $0xf0               // pandn    xmm14, xmm0
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	LONG $0x54b60f42; WORD $0x150e             // movzx    edx, byte [rsi + r9 + 21]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x080e4c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rcx + 8], 1
	QUAD $0x08164c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rsi + r10 + 8], 2
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x08064c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r8 + 8], 3
	LONG $0x24548b48; BYTE $0x78               // mov    rdx, qword [rsp + 120]
	QUAD $0x08164c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rdx + 8], 4
	QUAD $0x081e4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r11 + 8], 5
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x08164c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdx + 8], 6
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x083e4c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rsi + r15 + 8], 7
	QUAD $0x08264c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r12 + 8], 8
	QUAD $0x000000e024a48b4c                   // mov    r12, qword [rsp + 224]
	QUAD $0x08264c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r12 + 8], 9
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x08164c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + rdx + 8], 10
	QUAD $0x081e4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + rbx + 8], 11
	QUAD $0x08364c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r14 + 8], 12
	QUAD $0x083e4c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + rdi + 8], 13
	QUAD $0x082e4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r13 + 8], 14
	QUAD $0x08064c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + rax + 8], 15
	LONG $0xeb0f4466; BYTE $0xf1               // por    xmm14, xmm1
	QUAD $0x011024b47f0f4466; WORD $0x0000     // movdqa    oword [rsp + 272], xmm14
	LONG $0x54b60f42; WORD $0x160e             // movzx    edx, byte [rsi + r9 + 22]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x740f4466; BYTE $0xce               // pcmpeqb    xmm9, xmm6
	QUAD $0x00c024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 192]
	QUAD $0x090e74203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rcx + 9], 1
	QUAD $0x091674203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r10 + 9], 2
	QUAD $0x090674203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r8 + 9], 3
	LONG $0x24448b48; BYTE $0x78               // mov    rax, qword [rsp + 120]
	QUAD $0x090674203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rax + 9], 4
	QUAD $0x091e74203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rsi + r11 + 9], 5
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x091674203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rsi + rdx + 9], 6
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	QUAD $0x093e74203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rsi + r15 + 9], 7
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x093e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r15 + 9], 8
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	QUAD $0x092674203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r12 + 9], 9
	LONG $0x246c8b4c; BYTE $0x28               // mov    r13, qword [rsp + 40]
	QUAD $0x092e74203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + r13 + 9], 10
	QUAD $0x091e74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + rbx + 9], 11
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	QUAD $0x093674203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r14 + 9], 12
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x093674203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + r14 + 9], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x090674203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + rax + 9], 14
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x090674203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + rax + 9], 15
	WORD $0x8949; BYTE $0xca                   // mov    r10, rcx
	QUAD $0x0a0e64203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rcx + 10], 1
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x0a0e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rcx + 10], 2
	QUAD $0x0a0664203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r8 + 10], 3
	LONG $0x244c8b48; BYTE $0x78               // mov    rcx, qword [rsp + 120]
	QUAD $0x0a0e64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rcx + 10], 4
	QUAD $0x0a1e64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r11 + 10], 5
	QUAD $0x0a1664203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rdx + 10], 6
	QUAD $0x0a3e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rdi + 10], 7
	QUAD $0x0a3e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r15 + 10], 8
	QUAD $0x0a0e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 10], 9
	QUAD $0x0a2e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r13 + 10], 10
	QUAD $0x0a1e64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + rbx + 10], 11
	QUAD $0x0a2664203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r12 + 10], 12
	QUAD $0x0a3664203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r14 + 10], 13
	LONG $0x24748b4c; BYTE $0x10               // mov    r14, qword [rsp + 16]
	QUAD $0x0a3664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r14 + 10], 14
	QUAD $0x0a0664203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rax + 10], 15
	QUAD $0x0b166c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r10 + 11], 1
	LONG $0x24548b4c; BYTE $0x70               // mov    r10, qword [rsp + 112]
	QUAD $0x0b166c203a0f4666; BYTE $0x02       // pinsrb    xmm13, byte [rsi + r10 + 11], 2
	QUAD $0x0b066c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r8 + 11], 3
	QUAD $0x0b0e6c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rsi + rcx + 11], 4
	QUAD $0x0b1e6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r11 + 11], 5
	QUAD $0x0b166c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rdx + 11], 6
	QUAD $0x0b3e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rdi + 11], 7
	QUAD $0x0b3e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r15 + 11], 8
	QUAD $0x0b0e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r9 + 11], 9
	QUAD $0x0b2e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r13 + 11], 10
	QUAD $0x0b1e6c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + rbx + 11], 11
	WORD $0x8949; BYTE $0xdf                   // mov    r15, rbx
	QUAD $0x0b266c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r12 + 11], 12
	LONG $0x246c8b4c; BYTE $0x58               // mov    r13, qword [rsp + 88]
	QUAD $0x0b2e6c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + r13 + 11], 13
	QUAD $0x0b366c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r14 + 11], 14
	QUAD $0x0b066c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rax + 11], 15
	LONG $0x740f4466; BYTE $0xf6               // pcmpeqb    xmm14, xmm6
	QUAD $0x000100b5df0f4466; BYTE $0x00       // pandn    xmm14, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xfc0f4566; BYTE $0xf1               // paddb    xmm14, xmm9
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	LONG $0x0654b60f; BYTE $0x17               // movzx    edx, byte [rsi + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0x740f4466; BYTE $0xe6               // pcmpeqb    xmm12, xmm6
	QUAD $0x000110a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0x740f4466; BYTE $0xee               // pcmpeqb    xmm13, xmm6
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x0654b60f; BYTE $0x18               // movzx    edx, byte [rsi + rax + 24]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	QUAD $0x00f0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 240]
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0c064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 12], 1
	QUAD $0x0c164c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rsi + r10 + 12], 2
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x0c064c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r8 + 12], 3
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	QUAD $0x0c0e4c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rcx + 12], 4
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	QUAD $0x0c1e4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r11 + 12], 5
	LONG $0x245c8b4c; BYTE $0x48               // mov    r11, qword [rsp + 72]
	QUAD $0x0c1e4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rsi + r11 + 12], 6
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	QUAD $0x0c3e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rdi + 12], 7
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0c0e4c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rsi + rcx + 12], 8
	QUAD $0x0c0e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 12], 9
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0c3e4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + rdi + 12], 10
	QUAD $0x0c3e4c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r15 + 12], 11
	QUAD $0x0c264c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r12 + 12], 12
	QUAD $0x0c2e4c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r13 + 12], 13
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0c164c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + rdx + 12], 14
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x0c164c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + rdx + 12], 15
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0d165c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rdx + 13], 1
	QUAD $0x0d165c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rsi + r10 + 13], 2
	QUAD $0x0d065c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rax + 13], 3
	QUAD $0x0d365c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r14 + 13], 4
	QUAD $0x0d065c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r8 + 13], 5
	QUAD $0x0d1e5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r11 + 13], 6
	QUAD $0x0d1e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rbx + 13], 7
	QUAD $0x0d0e5c203a0f4466; BYTE $0x08       // pinsrb    xmm11, byte [rsi + rcx + 13], 8
	QUAD $0x0d0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 13], 9
	QUAD $0x0d3e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rdi + 13], 10
	QUAD $0x0d3e5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r15 + 13], 11
	QUAD $0x0d265c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r12 + 13], 12
	QUAD $0x0d2e5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r13 + 13], 13
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0d165c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rdx + 13], 14
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x0d165c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rdx + 13], 15
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0e167c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rdx + 14], 1
	QUAD $0x0e167c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r10 + 14], 2
	QUAD $0x0e067c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rax + 14], 3
	QUAD $0x0e367c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r14 + 14], 4
	QUAD $0x0e067c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rsi + r8 + 14], 5
	QUAD $0x0e1e7c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rsi + r11 + 14], 6
	QUAD $0x0e1e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 14], 7
	QUAD $0x0e0e7c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rsi + rcx + 14], 8
	QUAD $0x0e0e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 14], 9
	QUAD $0x0e3e7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + rdi + 14], 10
	QUAD $0x0e3e7c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r15 + 14], 11
	QUAD $0x0e267c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r12 + 14], 12
	QUAD $0x0e2e7c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r13 + 14], 13
	LONG $0x247c8b4c; BYTE $0x10               // mov    r15, qword [rsp + 16]
	QUAD $0x0e3e7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r15 + 14], 14
	LONG $0x740f4466; BYTE $0xce               // pcmpeqb    xmm9, xmm6
	QUAD $0x0001308ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xeb0f4566; BYTE $0xcd               // por    xmm9, xmm13
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	LONG $0x0e54b60f; BYTE $0x19               // movzx    edx, byte [rsi + rcx + 25]
	LONG $0x6e0f4466; BYTE $0xea               // movd    xmm13, edx
	QUAD $0x000160b5f80f4466; BYTE $0x00       // psubb    xmm14, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xeb0f4566; BYTE $0xce               // por    xmm9, xmm14
	LONG $0x0e54b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rcx + 26]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x0e067c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + rax + 14], 15
	LONG $0x740f4466; BYTE $0xde               // pcmpeqb    xmm11, xmm6
	QUAD $0x0001409ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0x740f4466; BYTE $0xfe               // pcmpeqb    xmm15, xmm6
	LONG $0x6f0f4466; BYTE $0xf6               // movdqa    xmm14, xmm6
	QUAD $0x000150bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	LONG $0x0e54b60f; BYTE $0x1b               // movzx    edx, byte [rsi + rcx + 27]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	QUAD $0x0000b024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 176]
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x0f1e74203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r11 + 15], 1
	QUAD $0x0f1674203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r10 + 15], 2
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x030f1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 15], 3
	QUAD $0x0f3674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r14 + 15], 4
	QUAD $0x0f0674203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r8 + 15], 5
	LONG $0x24648b4c; BYTE $0x48               // mov    r12, qword [rsp + 72]
	QUAD $0x0f2674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r12 + 15], 6
	QUAD $0x000000a0248c8b48                   // mov    rcx, qword [rsp + 160]
	QUAD $0x070f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 7
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x080f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 8
	QUAD $0x0f0e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 15], 9
	QUAD $0x0a0f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 10
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x0b0f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 11
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x0f3674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r14 + 15], 12
	QUAD $0x0f2e74203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r13 + 15], 13
	QUAD $0x0f3e74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r15 + 15], 14
	QUAD $0x0f0f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 15], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0x75df0f66; BYTE $0x60               // pandn    xmm6, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	LONG $0x0654b60f; BYTE $0x1c               // movzx    edx, byte [rsi + rax + 28]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0xeb0f4166; BYTE $0xf1               // por    xmm6, xmm9
	QUAD $0x0000b024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm6
	LONG $0x0654b60f; BYTE $0x1d               // movzx    edx, byte [rsi + rax + 29]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x101e54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r11 + 16], 1
	QUAD $0x101654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r10 + 16], 2
	QUAD $0x101e54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rbx + 16], 3
	LONG $0x246c8b4c; BYTE $0x78               // mov    r13, qword [rsp + 120]
	QUAD $0x102e54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r13 + 16], 4
	QUAD $0x100654203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r8 + 16], 5
	QUAD $0x102654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r12 + 16], 6
	QUAD $0x000000a024a48b4c                   // mov    r12, qword [rsp + 160]
	QUAD $0x102654203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r12 + 16], 7
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x101654203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rdx + 16], 8
	QUAD $0x100e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 16], 9
	QUAD $0x103e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rdi + 16], 10
	QUAD $0x100e54203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rcx + 16], 11
	QUAD $0x103654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r14 + 16], 12
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x103654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r14 + 16], 13
	QUAD $0x103e54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r15 + 16], 14
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x100654203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rax + 16], 15
	QUAD $0x111e64203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r11 + 17], 1
	QUAD $0x111664203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r10 + 17], 2
	QUAD $0x03111e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 17], 3
	WORD $0x894d; BYTE $0xea                   // mov    r10, r13
	QUAD $0x112e64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r13 + 17], 4
	QUAD $0x110664203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r8 + 17], 5
	LONG $0x245c8b4c; BYTE $0x48               // mov    r11, qword [rsp + 72]
	QUAD $0x111e64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r11 + 17], 6
	WORD $0x894c; BYTE $0xe3                   // mov    rbx, r12
	QUAD $0x112664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r12 + 17], 7
	QUAD $0x08111664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 17], 8
	QUAD $0x110e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 17], 9
	QUAD $0x0a113e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 17], 10
	QUAD $0x0b110e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 17], 11
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x0c110e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 17], 12
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	QUAD $0x113664203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r14 + 17], 13
	QUAD $0x113e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r15 + 17], 14
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	QUAD $0x0f110664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 17], 15
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	LONG $0x6f0f4166; BYTE $0xf6               // movdqa    xmm6, xmm14
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0x740f4166; BYTE $0xe6               // pcmpeqb    xmm4, xmm14
	QUAD $0x00000100a5df0f66                   // pandn    xmm4, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xfc0f4166; BYTE $0xe2               // paddb    xmm4, xmm10
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	LONG $0x3e54b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rdi + 30]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0112067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 18], 1
	QUAD $0x0113066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 1
	QUAD $0x0114065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 20], 1
	QUAD $0x01150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 1
	QUAD $0x0116064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 22], 1
	QUAD $0x170644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rax + 23], 1
	QUAD $0x180664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 24], 1
	QUAD $0x19066c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rax + 25], 1
	QUAD $0x011a0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 26], 1
	QUAD $0x1b065c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rax + 27], 1
	QUAD $0x1c067c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rax + 28], 1
	QUAD $0x1d064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 29], 1
	QUAD $0x1e0654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rax + 30], 1
	LONG $0x3e54b60f; BYTE $0x1f               // movzx    edx, byte [rsi + rdi + 31]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	QUAD $0x011f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 31], 1
	LONG $0x24548b48; BYTE $0x70               // mov    rdx, qword [rsp + 112]
	QUAD $0x0212167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 18], 2
	QUAD $0x0213166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 19], 2
	QUAD $0x0214165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 20], 2
	QUAD $0x02151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 2
	QUAD $0x0216164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 22], 2
	QUAD $0x171644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdx + 23], 2
	QUAD $0x181664203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdx + 24], 2
	QUAD $0x19166c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdx + 25], 2
	QUAD $0x021a1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 26], 2
	QUAD $0x1b165c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdx + 27], 2
	QUAD $0x1c167c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rdx + 28], 2
	QUAD $0x1d164c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdx + 29], 2
	QUAD $0x1e1654203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdx + 30], 2
	QUAD $0x021f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 31], 2
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x0312167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 18], 3
	WORD $0x894d; BYTE $0xd6                   // mov    r14, r10
	QUAD $0x12167c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r10 + 18], 4
	QUAD $0x12067c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r8 + 18], 5
	QUAD $0x121e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r11 + 18], 6
	QUAD $0x07121e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 18], 7
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x0812067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 18], 8
	QUAD $0x120e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r9 + 18], 9
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0a123e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 18], 10
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x12167c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r10 + 18], 11
	QUAD $0x0c120e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 18], 12
	QUAD $0x122e7c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r13 + 18], 13
	QUAD $0x12267c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r12 + 18], 14
	QUAD $0x123e7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r15 + 18], 15
	QUAD $0x0313166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 19], 3
	QUAD $0x13366c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r14 + 19], 4
	QUAD $0x13066c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r8 + 19], 5
	QUAD $0x131e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r11 + 19], 6
	QUAD $0x07131e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 19], 7
	QUAD $0x0813066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 8
	QUAD $0x130e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 19], 9
	QUAD $0x0a133e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 19], 10
	QUAD $0x13166c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r10 + 19], 11
	QUAD $0x0c130e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 19], 12
	QUAD $0x132e6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r13 + 19], 13
	QUAD $0x13266c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r12 + 19], 14
	QUAD $0x133e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r15 + 19], 15
	QUAD $0x0314165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 20], 3
	QUAD $0x14365c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r14 + 20], 4
	QUAD $0x14065c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r8 + 20], 5
	QUAD $0x141e5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r11 + 20], 6
	QUAD $0x07141e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 20], 7
	QUAD $0x0814065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 20], 8
	QUAD $0x140e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 20], 9
	QUAD $0x0a143e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 20], 10
	QUAD $0x14165c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r10 + 20], 11
	QUAD $0x0c140e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 20], 12
	QUAD $0x142e5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r13 + 20], 13
	QUAD $0x14265c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r12 + 20], 14
	LONG $0x740f4166; BYTE $0xfe               // pcmpeqb    xmm7, xmm14
	QUAD $0x00000110bddf0f66                   // pandn    xmm7, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0x740f4166; BYTE $0xee               // pcmpeqb    xmm5, xmm14
	QUAD $0x00000120addf0f66                   // pandn    xmm5, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0x143e5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r15 + 20], 15
	LONG $0x740f4166; BYTE $0xde               // pcmpeqb    xmm3, xmm14
	QUAD $0x00000130bd6f0f66                   // movdqa    xmm7, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xdfdf0f66                           // pandn    xmm3, xmm7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0xe5f80f66                           // psubb    xmm4, xmm5
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x03151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 3
	QUAD $0x153654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r14 + 21], 4
	QUAD $0x150654203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r8 + 21], 5
	QUAD $0x151e54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r11 + 21], 6
	QUAD $0x07151e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 21], 7
	QUAD $0x08150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 8
	QUAD $0x150e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r9 + 21], 9
	QUAD $0x0a153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 10
	QUAD $0x151654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r10 + 21], 11
	QUAD $0x0c150e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 21], 12
	QUAD $0x152e54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r13 + 21], 13
	QUAD $0x152654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r12 + 21], 14
	QUAD $0x153e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r15 + 21], 15
	QUAD $0x0316164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 22], 3
	QUAD $0x16364c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r14 + 22], 4
	QUAD $0x16064c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r8 + 22], 5
	QUAD $0x161e4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r11 + 22], 6
	QUAD $0x07161e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 22], 7
	QUAD $0x0816064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 22], 8
	QUAD $0x160e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r9 + 22], 9
	QUAD $0x0a163e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 22], 10
	QUAD $0x16164c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r10 + 22], 11
	QUAD $0x0c160e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 22], 12
	QUAD $0x162e4c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r13 + 22], 13
	QUAD $0x16264c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r12 + 22], 14
	QUAD $0x163e4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r15 + 22], 15
	QUAD $0x171644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rdx + 23], 3
	QUAD $0x173644203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r14 + 23], 4
	QUAD $0x170644203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r8 + 23], 5
	QUAD $0x171e44203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r11 + 23], 6
	QUAD $0x171e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 23], 7
	QUAD $0x170644203a0f4466; BYTE $0x08       // pinsrb    xmm8, byte [rsi + rax + 23], 8
	QUAD $0x170e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 23], 9
	QUAD $0x173e44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rdi + 23], 10
	QUAD $0x171644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r10 + 23], 11
	QUAD $0x170e44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rcx + 23], 12
	QUAD $0x172e44203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r13 + 23], 13
	QUAD $0x172644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r12 + 23], 14
	LONG $0x6f0f4166; BYTE $0xe6               // movdqa    xmm4, xmm14
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140ad6f0f66                   // movdqa    xmm5, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0xd5df0f66                           // pandn    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xcfdf0f66                           // pandn    xmm1, xmm7
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x173e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r15 + 23], 15
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	LONG $0x6f0f4166; BYTE $0xd6               // movdqa    xmm2, xmm14
	LONG $0x656f0f66; BYTE $0x60               // movdqa    xmm4, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	QUAD $0x181664203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rdx + 24], 3
	QUAD $0x183664203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r14 + 24], 4
	QUAD $0x180664203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r8 + 24], 5
	QUAD $0x181e64203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r11 + 24], 6
	QUAD $0x181e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rbx + 24], 7
	QUAD $0x180664203a0f4466; BYTE $0x08       // pinsrb    xmm12, byte [rsi + rax + 24], 8
	QUAD $0x180e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r9 + 24], 9
	QUAD $0x183e64203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + rdi + 24], 10
	QUAD $0x181664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r10 + 24], 11
	QUAD $0x180e64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + rcx + 24], 12
	QUAD $0x182e64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r13 + 24], 13
	QUAD $0x182664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r12 + 24], 14
	QUAD $0x183e64203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r15 + 24], 15
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x19166c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rdx + 25], 3
	QUAD $0x19366c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r14 + 25], 4
	QUAD $0x19066c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r8 + 25], 5
	QUAD $0x191e6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r11 + 25], 6
	QUAD $0x191e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rbx + 25], 7
	QUAD $0x19066c203a0f4466; BYTE $0x08       // pinsrb    xmm13, byte [rsi + rax + 25], 8
	QUAD $0x190e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r9 + 25], 9
	QUAD $0x193e6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rdi + 25], 10
	QUAD $0x19166c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r10 + 25], 11
	QUAD $0x190e6c203a0f4466; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + rcx + 25], 12
	QUAD $0x192e6c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + r13 + 25], 13
	QUAD $0x19266c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r12 + 25], 14
	QUAD $0x193e6c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r15 + 25], 15
	QUAD $0x031a1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 26], 3
	QUAD $0x1a3644203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r14 + 26], 4
	QUAD $0x1a0644203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r8 + 26], 5
	QUAD $0x1a1e44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r11 + 26], 6
	QUAD $0x071a1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 26], 7
	QUAD $0x081a0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 26], 8
	QUAD $0x1a0e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 26], 9
	QUAD $0x0a1a3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 26], 10
	QUAD $0x1a1644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r10 + 26], 11
	QUAD $0x0c1a0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 26], 12
	QUAD $0x1a2e44203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r13 + 26], 13
	QUAD $0x1a2644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r12 + 26], 14
	QUAD $0x1a3e44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r15 + 26], 15
	QUAD $0x1b165c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rdx + 27], 3
	QUAD $0x1b365c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r14 + 27], 4
	QUAD $0x1b065c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r8 + 27], 5
	QUAD $0x1b1e5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r11 + 27], 6
	QUAD $0x1b1e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rbx + 27], 7
	QUAD $0x1b065c203a0f4466; BYTE $0x08       // pinsrb    xmm11, byte [rsi + rax + 27], 8
	QUAD $0x1b0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 27], 9
	QUAD $0x1b3e5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rdi + 27], 10
	QUAD $0x1b165c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r10 + 27], 11
	QUAD $0x1b0e5c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + rcx + 27], 12
	QUAD $0x1b2e5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r13 + 27], 13
	QUAD $0x1b265c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r12 + 27], 14
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xfc0f4566; BYTE $0xec               // paddb    xmm13, xmm12
	QUAD $0x1b3e5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r15 + 27], 15
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x0000011085df0f66                   // pandn    xmm0, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001209ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xeb0f4466; BYTE $0xd8               // por    xmm11, xmm0
	QUAD $0x1c167c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rdx + 28], 3
	QUAD $0x1d164c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rsi + rdx + 29], 3
	QUAD $0x1e1654203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rdx + 30], 3
	QUAD $0x031f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 31], 3
	QUAD $0x1c367c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r14 + 28], 4
	QUAD $0x1d364c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r14 + 29], 4
	QUAD $0x1e3654203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r14 + 30], 4
	QUAD $0x1f3674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r14 + 31], 4
	QUAD $0x1c067c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rsi + r8 + 28], 5
	QUAD $0x1d064c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r8 + 29], 5
	QUAD $0x1e0654203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r8 + 30], 5
	QUAD $0x1f0674203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r8 + 31], 5
	WORD $0x894c; BYTE $0xda                   // mov    rdx, r11
	QUAD $0x1c1e7c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rsi + r11 + 28], 6
	QUAD $0x1d1e4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rsi + r11 + 29], 6
	QUAD $0x1e1e54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r11 + 30], 6
	QUAD $0x1f1e74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r11 + 31], 6
	QUAD $0x0000008024848b4c                   // mov    r8, qword [rsp + 128]
	WORD $0x8948; BYTE $0xda                   // mov    rdx, rbx
	QUAD $0x1c1e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 28], 7
	QUAD $0x1d1e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rbx + 29], 7
	QUAD $0x1e1e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 30], 7
	QUAD $0x071f1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 31], 7
	QUAD $0x1c067c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rsi + rax + 28], 8
	QUAD $0x1d064c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rsi + rax + 29], 8
	QUAD $0x1e0654203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rax + 30], 8
	QUAD $0x081f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 31], 8
	QUAD $0x1c0e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 28], 9
	QUAD $0x1d0e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 29], 9
	QUAD $0x1e0e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 30], 9
	QUAD $0x1f0e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 31], 9
	QUAD $0x1c3e7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + rdi + 28], 10
	QUAD $0x1d3e4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + rdi + 29], 10
	QUAD $0x1e3e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rdi + 30], 10
	QUAD $0x0a1f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 31], 10
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x1c167c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r10 + 28], 11
	QUAD $0x1d164c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r10 + 29], 11
	QUAD $0x1e1654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r10 + 30], 11
	QUAD $0x1f1674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r10 + 31], 11
	QUAD $0x1c0e7c203a0f4466; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + rcx + 28], 12
	QUAD $0x1d0e4c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + rcx + 29], 12
	QUAD $0x1e0e54203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + rcx + 30], 12
	QUAD $0x0c1f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 31], 12
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x1c2e7c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r13 + 28], 13
	QUAD $0x1d2e4c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r13 + 29], 13
	QUAD $0x1e2e54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r13 + 30], 13
	QUAD $0x1f2e74203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r13 + 31], 13
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x1c267c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r12 + 28], 14
	QUAD $0x1d264c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r12 + 29], 14
	QUAD $0x1e2654203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r12 + 30], 14
	QUAD $0x1f2674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r12 + 31], 14
	QUAD $0x1c3e7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r15 + 28], 15
	QUAD $0x1d3e4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r15 + 29], 15
	QUAD $0x1e3e54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r15 + 30], 15
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000130bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	QUAD $0x1f3e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r15 + 31], 15
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	LONG $0xdf0f4466; BYTE $0xcd               // pandn    xmm9, xmm5
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0xdf0f4466; BYTE $0xd7               // pandn    xmm10, xmm7
	LONG $0xeb0f4566; BYTE $0xd1               // por    xmm10, xmm9
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0xf4df0f66                           // pandn    xmm6, xmm4
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc6600f66                           // punpcklbw    xmm0, xmm6
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	QUAD $0x0000b0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 176]
	LONG $0xcb600f66                           // punpcklbw    xmm1, xmm3
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	LONG $0xd0610f66                           // punpcklwd    xmm2, xmm0
	LONG $0xc8690f66                           // punpckhwd    xmm1, xmm0
	LONG $0x680f4466; BYTE $0xc6               // punpckhbw    xmm8, xmm6
	LONG $0xe3680f66                           // punpckhbw    xmm4, xmm3
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x7f0f41f3; WORD $0x8864; BYTE $0x30 // movdqu    oword [r8 + 4*rcx + 48], xmm4
	LONG $0x7f0f41f3; WORD $0x8844; BYTE $0x20 // movdqu    oword [r8 + 4*rcx + 32], xmm0
	LONG $0x7f0f41f3; WORD $0x884c; BYTE $0x10 // movdqu    oword [r8 + 4*rcx + 16], xmm1
	LONG $0x7f0f41f3; WORD $0x8814             // movdqu    oword [r8 + 4*rcx], xmm2
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000d8248c3b48                   // cmp    rcx, qword [rsp + 216]
	JNE  LBB4_180
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	QUAD $0x000000d824943b4c                   // cmp    r10, qword [rsp + 216]
	LONG $0x245c8a44; BYTE $0x08               // mov    r11b, byte [rsp + 8]
	QUAD $0x0000013024b48b48                   // mov    rsi, qword [rsp + 304]
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	JNE  LBB4_43
	JMP  LBB4_138

LBB4_182:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000d82494894c             // mov    qword [rsp + 216], r10
	LONG $0x94048d4b                     // lea    rax, [r12 + 4*r10]
	LONG $0x24448948; BYTE $0x68         // mov    qword [rsp + 104], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000a0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 160], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008024a4894c             // mov    qword [rsp + 128], r12

LBB4_183:
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x0000009824848948                   // mov    qword [rsp + 152], rax
	LONG $0x05e1c149                           // shl    r9, 5
	WORD $0x894d; BYTE $0xcc                   // mov    r12, r9
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	WORD $0x894d; BYTE $0xca                   // mov    r10, r9
	LONG $0x244c894c; BYTE $0x40               // mov    qword [rsp + 64], r9
	WORD $0x894d; BYTE $0xcf                   // mov    r15, r9
	WORD $0x894d; BYTE $0xcb                   // mov    r11, r9
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	LONG $0x04b60f42; BYTE $0x0e               // movzx    eax, byte [rsi + r9]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b60f42; WORD $0x010e             // movzx    eax, byte [rsi + r9 + 1]
	LONG $0xd86e0f66                           // movd    xmm3, eax
	LONG $0x44b60f42; WORD $0x020e             // movzx    eax, byte [rsi + r9 + 2]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b60f42; WORD $0x030e             // movzx    eax, byte [rsi + r9 + 3]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b60f42; WORD $0x040e             // movzx    eax, byte [rsi + r9 + 4]
	LONG $0x6e0f4466; BYTE $0xc8               // movd    xmm9, eax
	LONG $0x44b60f42; WORD $0x050e             // movzx    eax, byte [rsi + r9 + 5]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b60f42; WORD $0x060e             // movzx    eax, byte [rsi + r9 + 6]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b60f42; WORD $0x070e             // movzx    eax, byte [rsi + r9 + 7]
	LONG $0x6e0f4466; BYTE $0xf0               // movd    xmm14, eax
	LONG $0x44b60f42; WORD $0x080e             // movzx    eax, byte [rsi + r9 + 8]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x44b60f42; WORD $0x090e             // movzx    eax, byte [rsi + r9 + 9]
	LONG $0x6e0f4466; BYTE $0xd8               // movd    xmm11, eax
	LONG $0x44b60f42; WORD $0x0a0e             // movzx    eax, byte [rsi + r9 + 10]
	LONG $0x6e0f4466; BYTE $0xe0               // movd    xmm12, eax
	LONG $0x44b60f42; WORD $0x0b0e             // movzx    eax, byte [rsi + r9 + 11]
	LONG $0x6e0f4466; BYTE $0xe8               // movd    xmm13, eax
	LONG $0x44b60f42; WORD $0x0c0e             // movzx    eax, byte [rsi + r9 + 12]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x44b60f42; WORD $0x0d0e             // movzx    eax, byte [rsi + r9 + 13]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	LONG $0x44b60f42; WORD $0x0e0e             // movzx    eax, byte [rsi + r9 + 14]
	LONG $0x6e0f4466; BYTE $0xf8               // movd    xmm15, eax
	LONG $0x44b60f42; WORD $0x0f0e             // movzx    eax, byte [rsi + r9 + 15]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x0000e024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 224], xmm0
	LONG $0x244c894c; BYTE $0x48               // mov    qword [rsp + 72], r9
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	LONG $0x20c98348                           // or    rcx, 32
	LONG $0x244c8948; BYTE $0x30               // mov    qword [rsp + 48], rcx
	LONG $0x40cc8349                           // or    r12, 64
	LONG $0x60cd8349                           // or    r13, 96
	LONG $0x80ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 128
	LONG $0x2454894c; BYTE $0x70               // mov    qword [rsp + 112], r10
	LONG $0x24548b4c; BYTE $0x40               // mov    r10, qword [rsp + 64]
	LONG $0xa0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 160
	LONG $0x2454894c; BYTE $0x40               // mov    qword [rsp + 64], r10
	LONG $0xc0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 192
	LONG $0x247c894c; BYTE $0x20               // mov    qword [rsp + 32], r15
	LONG $0xe0cb8149; WORD $0x0000; BYTE $0x00 // or    r11, 224
	LONG $0x00ce8149; WORD $0x0001; BYTE $0x00 // or    r14, 256
	QUAD $0x000000b024b4894c                   // mov    qword [rsp + 176], r14
	LONG $0x20ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 288
	LONG $0x40c88149; WORD $0x0001; BYTE $0x00 // or    r8, 320
	LONG $0x2444894c; BYTE $0x78               // mov    qword [rsp + 120], r8
	LONG $0x60cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 352
	LONG $0x245c8948; BYTE $0x58               // mov    qword [rsp + 88], rbx
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0x247c8948; BYTE $0x28               // mov    qword [rsp + 40], rdi
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x18               // mov    qword [rsp + 24], rax
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	LONG $0xe0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 480
	LONG $0x203a0f66; WORD $0x0e24; BYTE $0x01 // pinsrb    xmm4, byte [rsi + rcx], 1
	LONG $0x2464894c; BYTE $0x60               // mov    qword [rsp + 96], r12
	QUAD $0x022624203a0f4266                   // pinsrb    xmm4, byte [rsi + r12], 2
	QUAD $0x032e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r13], 3
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	LONG $0x203a0f66; WORD $0x0e24; BYTE $0x04 // pinsrb    xmm4, byte [rsi + rcx], 4
	QUAD $0x051624203a0f4266                   // pinsrb    xmm4, byte [rsi + r10], 5
	QUAD $0x063e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r15], 6
	QUAD $0x071e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r11], 7
	QUAD $0x083624203a0f4266                   // pinsrb    xmm4, byte [rsi + r14], 8
	LONG $0x203a0f66; WORD $0x1624; BYTE $0x09 // pinsrb    xmm4, byte [rsi + rdx], 9
	QUAD $0x0a0624203a0f4266                   // pinsrb    xmm4, byte [rsi + r8], 10
	LONG $0x203a0f66; WORD $0x1e24; BYTE $0x0b // pinsrb    xmm4, byte [rsi + rbx], 11
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	LONG $0x203a0f66; WORD $0x0e24; BYTE $0x0c // pinsrb    xmm4, byte [rsi + rcx], 12
	LONG $0x244c8b4c; BYTE $0x10               // mov    r9, qword [rsp + 16]
	QUAD $0x0d0e24203a0f4266                   // pinsrb    xmm4, byte [rsi + r9], 13
	LONG $0x203a0f66; WORD $0x0624; BYTE $0x0e // pinsrb    xmm4, byte [rsi + rax], 14
	LONG $0x203a0f66; WORD $0x3e24; BYTE $0x0f // pinsrb    xmm4, byte [rsi + rdi], 15
	LONG $0x244c8b4c; BYTE $0x30               // mov    r9, qword [rsp + 48]
	QUAD $0x010e5c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r9 + 1], 1
	QUAD $0x01265c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r12 + 1], 2
	QUAD $0x012e5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r13 + 1], 3
	WORD $0x894d; BYTE $0xec                   // mov    r12, r13
	LONG $0x246c8b4c; BYTE $0x70               // mov    r13, qword [rsp + 112]
	QUAD $0x012e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r13 + 1], 4
	QUAD $0x01165c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r10 + 1], 5
	QUAD $0x013e5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r15 + 1], 6
	QUAD $0x011e5c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r11 + 1], 7
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x01365c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r14 + 1], 8
	QUAD $0x0901165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 1], 9
	WORD $0x8949; BYTE $0xd6                   // mov    r14, rdx
	QUAD $0x01065c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r8 + 1], 10
	QUAD $0x0b011e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 1], 11
	QUAD $0x0c010e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 1], 12
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0d01165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 1], 13
	QUAD $0x0e01065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 1], 14
	QUAD $0x0000a0248c6f0f66; BYTE $0x00       // movdqa    xmm1, oword [rsp + 160]
	LONG $0xe1740f66                           // pcmpeqb    xmm4, xmm1
	QUAD $0x0f013e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 1], 15
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	LONG $0xd9740f66                           // pcmpeqb    xmm3, xmm1
	QUAD $0x00000100856f0f66                   // movdqa    xmm0, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xdcfc0f66                           // paddb    xmm3, xmm4
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0654b60f; BYTE $0x10               // movzx    edx, byte [rsi + rax + 16]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	QUAD $0x020e6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r9 + 2], 1
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x02023e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 2], 2
	LONG $0x2464894c; BYTE $0x38               // mov    qword [rsp + 56], r12
	QUAD $0x02266c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r12 + 2], 3
	WORD $0x894d; BYTE $0xe8                   // mov    r8, r13
	QUAD $0x022e6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r13 + 2], 4
	LONG $0x245c8b4c; BYTE $0x40               // mov    r11, qword [rsp + 64]
	QUAD $0x021e6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r11 + 2], 5
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x022e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r13 + 2], 6
	WORD $0x894c; BYTE $0xd3                   // mov    rbx, r10
	QUAD $0x02166c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r10 + 2], 7
	QUAD $0x000000b024bc8b4c                   // mov    r15, qword [rsp + 176]
	QUAD $0x023e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r15 + 2], 8
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	QUAD $0x02366c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r14 + 2], 9
	LONG $0x24548b4c; BYTE $0x78               // mov    r10, qword [rsp + 120]
	QUAD $0x02166c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r10 + 2], 10
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x02366c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r14 + 2], 11
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0c02066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 2], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d02066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 2], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e02066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 2], 14
	LONG $0x244c8948; BYTE $0x50               // mov    qword [rsp + 80], rcx
	QUAD $0x0f020e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 2], 15
	QUAD $0x0103167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 3], 1
	QUAD $0x02033e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 3], 2
	QUAD $0x03267c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r12 + 3], 3
	QUAD $0x03067c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r8 + 3], 4
	QUAD $0x031e7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r11 + 3], 5
	QUAD $0x032e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r13 + 3], 6
	QUAD $0x07031e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 3], 7
	QUAD $0x033e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r15 + 3], 8
	QUAD $0x030e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r9 + 3], 9
	QUAD $0x03167c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r10 + 3], 10
	QUAD $0x03367c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r14 + 3], 11
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0c03067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d03067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e03067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 3], 14
	QUAD $0x0f030e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 3], 15
	QUAD $0x04164c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rdx + 4], 1
	QUAD $0x043e4c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdi + 4], 2
	QUAD $0x04264c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r12 + 4], 3
	QUAD $0x04064c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r8 + 4], 4
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x041e4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r11 + 4], 5
	QUAD $0x042e4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rsi + r13 + 4], 6
	QUAD $0x041e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rbx + 4], 7
	QUAD $0x043e4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r15 + 4], 8
	QUAD $0x040e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 4], 9
	QUAD $0x04164c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r10 + 4], 10
	QUAD $0x04364c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r14 + 4], 11
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x04064c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + rax + 4], 12
	LONG $0x24448b4c; BYTE $0x10               // mov    r8, qword [rsp + 16]
	QUAD $0x04064c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r8 + 4], 13
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x04164c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + rdx + 4], 14
	QUAD $0x040e4c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + rcx + 4], 15
	LONG $0xe9740f66                           // pcmpeqb    xmm5, xmm1
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xf9740f66                           // pcmpeqb    xmm7, xmm1
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xf8df0f66                           // pandn    xmm7, xmm0
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	LONG $0x0e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rcx + 17]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0x740f4466; BYTE $0xc9               // pcmpeqb    xmm9, xmm1
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xdf0f4466; BYTE $0xc8               // pandn    xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0x0e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rcx + 18]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xd8f80f66                           // psubb    xmm3, xmm0
	LONG $0xeb0f4466; BYTE $0xcb               // por    xmm9, xmm3
	LONG $0x0e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rcx + 19]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x052654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r12 + 5], 1
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x052e54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rsi + r13 + 5], 2
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x03050654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 5], 3
	QUAD $0x04053e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 5], 4
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	QUAD $0x051e54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r11 + 5], 5
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x06050654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 5], 6
	QUAD $0x00000110249c8948                   // mov    qword [rsp + 272], rbx
	QUAD $0x07051e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 5], 7
	QUAD $0x053e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r15 + 5], 8
	QUAD $0x00000088248c894c                   // mov    qword [rsp + 136], r9
	QUAD $0x050e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r9 + 5], 9
	QUAD $0x051654203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r10 + 5], 10
	QUAD $0x053654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r14 + 5], 11
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0c051654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 5], 12
	WORD $0x894c; BYTE $0xc1                   // mov    rcx, r8
	QUAD $0x050654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r8 + 5], 13
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x050654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r8 + 5], 14
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x051e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r11 + 5], 15
	QUAD $0x062644203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r12 + 6], 1
	QUAD $0x062e44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rsi + r13 + 6], 2
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x060644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rax + 6], 3
	LONG $0x246c8b4c; BYTE $0x70               // mov    r13, qword [rsp + 112]
	QUAD $0x062e44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r13 + 6], 4
	QUAD $0x063e44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rdi + 6], 5
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x060644203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rax + 6], 6
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	QUAD $0x061e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 6], 7
	QUAD $0x063e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r15 + 6], 8
	QUAD $0x060e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 6], 9
	QUAD $0x061644203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r10 + 6], 10
	QUAD $0x063644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r14 + 6], 11
	QUAD $0x061644203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rdx + 6], 12
	QUAD $0x060e44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rcx + 6], 13
	QUAD $0x060644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r8 + 6], 14
	QUAD $0x061e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r11 + 6], 15
	QUAD $0x072674203a0f4666; BYTE $0x01       // pinsrb    xmm14, byte [rsi + r12 + 7], 1
	LONG $0x24648b4c; BYTE $0x60               // mov    r12, qword [rsp + 96]
	QUAD $0x072674203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r12 + 7], 2
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x070674203a0f4466; BYTE $0x03       // pinsrb    xmm14, byte [rsi + rax + 7], 3
	LONG $0x245c8b4c; BYTE $0x70               // mov    r11, qword [rsp + 112]
	QUAD $0x071e74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rsi + r11 + 7], 4
	QUAD $0x073e74203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rsi + rdi + 7], 5
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x072e74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r13 + 7], 6
	QUAD $0x071e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rbx + 7], 7
	QUAD $0x073e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r15 + 7], 8
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x070e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 7], 9
	QUAD $0x071674203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + r10 + 7], 10
	QUAD $0x073674203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r14 + 7], 11
	QUAD $0x071674203a0f4466; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + rdx + 7], 12
	QUAD $0x070e74203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + rcx + 7], 13
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	QUAD $0x070674203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r8 + 7], 14
	LONG $0x6f0f4166; BYTE $0xce               // movdqa    xmm1, xmm14
	QUAD $0x00a024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 160]
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0xd0df0f66                           // pandn    xmm2, xmm0
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xdf0f4466; BYTE $0xc0               // pandn    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x247c8b48; BYTE $0x48               // mov    rdi, qword [rsp + 72]
	LONG $0x3e54b60f; BYTE $0x14               // movzx    edx, byte [rsi + rdi + 20]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x0f070e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 7], 15
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xc8df0f66                           // pandn    xmm1, xmm0
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	LONG $0x3e54b60f; BYTE $0x15               // movzx    edx, byte [rsi + rdi + 21]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x01080644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 8], 1
	QUAD $0x082644203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r12 + 8], 2
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	QUAD $0x082644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r12 + 8], 3
	QUAD $0x081e44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r11 + 8], 4
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x083644203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r14 + 8], 5
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x06081644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 8], 6
	QUAD $0x00000110249c8b4c                   // mov    r11, qword [rsp + 272]
	QUAD $0x081e44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r11 + 8], 7
	QUAD $0x083e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r15 + 8], 8
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x081644203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r10 + 8], 9
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x083e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r15 + 8], 10
	LONG $0x24548b48; BYTE $0x58               // mov    rdx, qword [rsp + 88]
	QUAD $0x0b081644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 8], 11
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0c081644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 8], 12
	QUAD $0x082e44203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r13 + 8], 13
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0e081644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 8], 14
	QUAD $0x0f080e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 8], 15
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	QUAD $0x0000c0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm1
	LONG $0x3e54b60f; BYTE $0x16               // movzx    edx, byte [rsi + rdi + 22]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x09065c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rax + 9], 1
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x093e5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdi + 9], 2
	QUAD $0x09265c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r12 + 9], 3
	QUAD $0x09065c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r8 + 9], 4
	QUAD $0x09365c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r14 + 9], 5
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x092e5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r13 + 9], 6
	QUAD $0x091e5c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r11 + 9], 7
	QUAD $0x091e5c203a0f4466; BYTE $0x08       // pinsrb    xmm11, byte [rsi + rbx + 9], 8
	WORD $0x894c; BYTE $0xd1                   // mov    rcx, r10
	QUAD $0x09165c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r10 + 9], 9
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	QUAD $0x093e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r15 + 9], 10
	LONG $0x24548b4c; BYTE $0x58               // mov    r10, qword [rsp + 88]
	QUAD $0x09165c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r10 + 9], 11
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x093e5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r15 + 9], 12
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x09165c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdx + 9], 13
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x09165c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rdx + 9], 14
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x09165c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rdx + 9], 15
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0a0664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 10], 1
	QUAD $0x0a3e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdi + 10], 2
	QUAD $0x0a2664203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r12 + 10], 3
	QUAD $0x0a0664203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r8 + 10], 4
	QUAD $0x0a3664203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r14 + 10], 5
	QUAD $0x0a2e64203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r13 + 10], 6
	QUAD $0x0a1e64203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r11 + 10], 7
	QUAD $0x0a1e64203a0f4466; BYTE $0x08       // pinsrb    xmm12, byte [rsi + rbx + 10], 8
	QUAD $0x0a0e64203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rsi + rcx + 10], 9
	QUAD $0x0a0e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r9 + 10], 10
	QUAD $0x0a1664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r10 + 10], 11
	QUAD $0x0a3e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r15 + 10], 12
	LONG $0x24748b4c; BYTE $0x10               // mov    r14, qword [rsp + 16]
	QUAD $0x0a3664203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r14 + 10], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0a0664203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rax + 10], 14
	QUAD $0x0a1664203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rdx + 10], 15
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0b066c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rax + 11], 1
	QUAD $0x0b3e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdi + 11], 2
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x0b266c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r12 + 11], 3
	QUAD $0x0b066c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r8 + 11], 4
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0b066c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rax + 11], 5
	QUAD $0x0b2e6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r13 + 11], 6
	QUAD $0x0b1e6c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r11 + 11], 7
	WORD $0x894d; BYTE $0xdc                   // mov    r12, r11
	QUAD $0x0b1e6c203a0f4466; BYTE $0x08       // pinsrb    xmm13, byte [rsi + rbx + 11], 8
	QUAD $0x0b0e6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rsi + rcx + 11], 9
	QUAD $0x0b0e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r9 + 11], 10
	QUAD $0x0b166c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r10 + 11], 11
	QUAD $0x0b3e6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r15 + 11], 12
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0b3e6c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rdi + 11], 13
	WORD $0x8949; BYTE $0xfd                   // mov    r13, rdi
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x0b0e6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r9 + 11], 14
	QUAD $0x0b166c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rdx + 11], 15
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001009ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xfc0f4466; BYTE $0xd8               // paddb    xmm11, xmm0
	LONG $0x247c8b48; BYTE $0x48               // mov    rdi, qword [rsp + 72]
	LONG $0x3e54b60f; BYTE $0x17               // movzx    edx, byte [rsi + rdi + 23]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x000110a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x3e54b60f; BYTE $0x18               // movzx    edx, byte [rsi + rdi + 24]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	QUAD $0x00f0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 240]
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x0c1e4c203a0f4666; BYTE $0x01       // pinsrb    xmm9, byte [rsi + r11 + 12], 1
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x0c364c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rsi + r14 + 12], 2
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	QUAD $0x0c3e4c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rsi + rdi + 12], 3
	LONG $0x24748b4c; BYTE $0x70               // mov    r14, qword [rsp + 112]
	QUAD $0x0c364c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r14 + 12], 4
	QUAD $0x0c064c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rsi + rax + 12], 5
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0c164c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdx + 12], 6
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x0c264c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rsi + r12 + 12], 7
	QUAD $0x0c1e4c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rsi + rbx + 12], 8
	QUAD $0x0c0e4c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rsi + rcx + 12], 9
	LONG $0x24648b4c; BYTE $0x78               // mov    r12, qword [rsp + 120]
	QUAD $0x0c264c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r12 + 12], 10
	QUAD $0x0c164c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r10 + 12], 11
	LONG $0x24548b4c; BYTE $0x28               // mov    r10, qword [rsp + 40]
	QUAD $0x0c164c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r10 + 12], 12
	QUAD $0x0c2e4c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r13 + 12], 13
	QUAD $0x0c0e4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r9 + 12], 14
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x0c2e4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r13 + 12], 15
	QUAD $0x0d1e74203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r11 + 13], 1
	QUAD $0x0d0674203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r8 + 13], 2
	QUAD $0x030d3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 13], 3
	QUAD $0x0d3674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r14 + 13], 4
	QUAD $0x050d0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 13], 5
	QUAD $0x060d1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 13], 6
	QUAD $0x0d3e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r15 + 13], 7
	QUAD $0x080d1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 13], 8
	QUAD $0x090d0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 13], 9
	QUAD $0x0d2674203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r12 + 13], 10
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x0b0d1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 13], 11
	QUAD $0x0d1674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r10 + 13], 12
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x0d1674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r10 + 13], 13
	QUAD $0x0d0e74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r9 + 13], 14
	LONG $0x244c8b4c; BYTE $0x50               // mov    r9, qword [rsp + 80]
	QUAD $0x0d0e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r9 + 13], 15
	QUAD $0x0e1e7c203a0f4666; BYTE $0x01       // pinsrb    xmm15, byte [rsi + r11 + 14], 1
	QUAD $0x0e067c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r8 + 14], 2
	QUAD $0x0e3e7c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rdi + 14], 3
	QUAD $0x0e367c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r14 + 14], 4
	QUAD $0x0e067c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rax + 14], 5
	QUAD $0x0e167c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rdx + 14], 6
	QUAD $0x0e3e7c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rsi + r15 + 14], 7
	QUAD $0x000000b024bc8b48                   // mov    rdi, qword [rsp + 176]
	QUAD $0x0e3e7c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rsi + rdi + 14], 8
	QUAD $0x0e0e7c203a0f4466; BYTE $0x09       // pinsrb    xmm15, byte [rsi + rcx + 14], 9
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	QUAD $0x0e267c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r12 + 14], 10
	QUAD $0x0e1e7c203a0f4466; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + rbx + 14], 11
	WORD $0x894d; BYTE $0xec                   // mov    r12, r13
	QUAD $0x0e2e7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r13 + 14], 12
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x0e167c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r10 + 14], 13
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x0e167c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r10 + 14], 14
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	QUAD $0x0001308ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xeb0f4566; BYTE $0xcd               // por    xmm9, xmm13
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0654b60f; BYTE $0x19               // movzx    edx, byte [rsi + rax + 25]
	LONG $0x6e0f4466; BYTE $0xea               // movd    xmm13, edx
	QUAD $0x0001609df80f4466; BYTE $0x00       // psubb    xmm11, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xeb0f4566; BYTE $0xcb               // por    xmm9, xmm11
	LONG $0x0654b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rax + 26]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	QUAD $0x0e0e7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r9 + 14], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	QUAD $0x00000140b5df0f66                   // pandn    xmm6, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000150bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xeb0f4466; BYTE $0xfe               // por    xmm15, xmm6
	LONG $0x0654b60f; BYTE $0x1b               // movzx    edx, byte [rsi + rax + 27]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	QUAD $0x0000e024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 224]
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x010f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 1
	QUAD $0x0f0674203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r8 + 15], 2
	LONG $0x244c8b4c; BYTE $0x38               // mov    r9, qword [rsp + 56]
	QUAD $0x0f0e74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r9 + 15], 3
	QUAD $0x0f3674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r14 + 15], 4
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x050f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 5
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x060f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 15], 6
	QUAD $0x0f3e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r15 + 15], 7
	QUAD $0x080f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 8
	QUAD $0x0000008824bc8b48                   // mov    rdi, qword [rsp + 136]
	QUAD $0x090f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 9
	QUAD $0x0f1e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r11 + 15], 10
	QUAD $0x0b0f1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 15], 11
	QUAD $0x0f2674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r12 + 15], 12
	QUAD $0x0f2e74203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r13 + 15], 13
	QUAD $0x0f1674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r10 + 15], 14
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x0f1674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r10 + 15], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0x75df0f66; BYTE $0x60               // pandn    xmm6, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x0654b60f; BYTE $0x1c               // movzx    edx, byte [rsi + rax + 28]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0xeb0f4166; BYTE $0xf1               // por    xmm6, xmm9
	QUAD $0x0000e024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 224], xmm6
	LONG $0x0654b60f; BYTE $0x1d               // movzx    edx, byte [rsi + rax + 29]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x101654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rdx + 16], 1
	QUAD $0x100654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r8 + 16], 2
	QUAD $0x100e54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r9 + 16], 3
	QUAD $0x103654203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r14 + 16], 4
	QUAD $0x100e54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rcx + 16], 5
	LONG $0x24648b4c; BYTE $0x20               // mov    r12, qword [rsp + 32]
	QUAD $0x102654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r12 + 16], 6
	QUAD $0x103e54203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r15 + 16], 7
	QUAD $0x000000b0248c8b48                   // mov    rcx, qword [rsp + 176]
	QUAD $0x100e54203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rsi + rcx + 16], 8
	QUAD $0x103e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rdi + 16], 9
	QUAD $0x101e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r11 + 16], 10
	QUAD $0x101e54203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rbx + 16], 11
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x100654203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + rax + 16], 12
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x102e54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r13 + 16], 13
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x102e54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r13 + 16], 14
	QUAD $0x101654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r10 + 16], 15
	QUAD $0x01111664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 17], 1
	QUAD $0x110664203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r8 + 17], 2
	QUAD $0x110e64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r9 + 17], 3
	QUAD $0x113664203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r14 + 17], 4
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x110664203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r8 + 17], 5
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	QUAD $0x112664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r12 + 17], 6
	QUAD $0x113e64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r15 + 17], 7
	QUAD $0x08110e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 17], 8
	QUAD $0x09113e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 17], 9
	QUAD $0x111e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r11 + 17], 10
	QUAD $0x0b111e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 17], 11
	LONG $0x24648b4c; BYTE $0x28               // mov    r12, qword [rsp + 40]
	QUAD $0x112664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 17], 12
	QUAD $0x0d110664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 17], 13
	QUAD $0x112e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r13 + 17], 14
	QUAD $0x111664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r10 + 17], 15
	WORD $0x894c; BYTE $0xd7                   // mov    rdi, r10
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0x740f4166; BYTE $0xe6               // pcmpeqb    xmm4, xmm14
	QUAD $0x00000100b56f0f66                   // movdqa    xmm6, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xe6df0f66                           // pandn    xmm4, xmm6
	LONG $0xfc0f4166; BYTE $0xe2               // paddb    xmm4, xmm10
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	LONG $0x0e54b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rcx + 30]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0112067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 18], 1
	QUAD $0x0113066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 1
	QUAD $0x0114065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 20], 1
	QUAD $0x01150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 1
	QUAD $0x0116064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 22], 1
	QUAD $0x170644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rax + 23], 1
	QUAD $0x180664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 24], 1
	QUAD $0x19066c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rax + 25], 1
	QUAD $0x011a0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 26], 1
	QUAD $0x1b065c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rax + 27], 1
	QUAD $0x1c067c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rax + 28], 1
	QUAD $0x1d064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 29], 1
	QUAD $0x1e0654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rax + 30], 1
	LONG $0x0e54b60f; BYTE $0x1f               // movzx    edx, byte [rsi + rcx + 31]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	QUAD $0x011f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 31], 1
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x0212167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 18], 2
	QUAD $0x0213166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 19], 2
	QUAD $0x0214165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 20], 2
	QUAD $0x02151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 2
	QUAD $0x0216164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 22], 2
	QUAD $0x171644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdx + 23], 2
	QUAD $0x181664203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdx + 24], 2
	QUAD $0x19166c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdx + 25], 2
	QUAD $0x021a1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 26], 2
	QUAD $0x1b165c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdx + 27], 2
	QUAD $0x1c167c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rdx + 28], 2
	QUAD $0x1d164c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdx + 29], 2
	QUAD $0x1e1654203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdx + 30], 2
	QUAD $0x021f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 31], 2
	LONG $0x24548b48; BYTE $0x38               // mov    rdx, qword [rsp + 56]
	QUAD $0x0312167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 18], 3
	QUAD $0x12367c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r14 + 18], 4
	QUAD $0x12067c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r8 + 18], 5
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	QUAD $0x120e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r9 + 18], 6
	QUAD $0x123e7c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rsi + r15 + 18], 7
	QUAD $0x000000b0249c8b4c                   // mov    r11, qword [rsp + 176]
	QUAD $0x121e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r11 + 18], 8
	QUAD $0x00000088248c8b48                   // mov    rcx, qword [rsp + 136]
	QUAD $0x09120e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 18], 9
	LONG $0x244c8b4c; BYTE $0x78               // mov    r9, qword [rsp + 120]
	QUAD $0x120e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r9 + 18], 10
	LONG $0x24548b4c; BYTE $0x58               // mov    r10, qword [rsp + 88]
	QUAD $0x12167c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r10 + 18], 11
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x12267c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r12 + 18], 12
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x12267c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r12 + 18], 13
	QUAD $0x122e7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r13 + 18], 14
	QUAD $0x0f123e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 18], 15
	QUAD $0x0313166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 19], 3
	QUAD $0x13366c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r14 + 19], 4
	QUAD $0x13066c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r8 + 19], 5
	QUAD $0x06131e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 19], 6
	QUAD $0x133e6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r15 + 19], 7
	QUAD $0x131e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r11 + 19], 8
	QUAD $0x09130e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 19], 9
	QUAD $0x130e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r9 + 19], 10
	QUAD $0x13166c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r10 + 19], 11
	QUAD $0x0c13066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 12
	QUAD $0x13266c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r12 + 19], 13
	QUAD $0x132e6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r13 + 19], 14
	QUAD $0x0f133e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 19], 15
	QUAD $0x0314165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 20], 3
	QUAD $0x14365c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r14 + 20], 4
	QUAD $0x14065c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r8 + 20], 5
	QUAD $0x06141e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 20], 6
	QUAD $0x143e5c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r15 + 20], 7
	QUAD $0x141e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 20], 8
	QUAD $0x09140e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 20], 9
	QUAD $0x140e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r9 + 20], 10
	QUAD $0x14165c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r10 + 20], 11
	QUAD $0x0c14065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 20], 12
	QUAD $0x14265c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r12 + 20], 13
	QUAD $0x142e5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r13 + 20], 14
	LONG $0x740f4166; BYTE $0xfe               // pcmpeqb    xmm7, xmm14
	QUAD $0x000110b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0xdf0f4166; BYTE $0xfe               // pandn    xmm7, xmm14
	QUAD $0x0000a024ac740f66; BYTE $0x00       // pcmpeqb    xmm5, oword [rsp + 160]
	QUAD $0x000120b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xdf0f4166; BYTE $0xee               // pandn    xmm5, xmm14
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0x0f143e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 20], 15
	QUAD $0x00a024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 160]
	LONG $0x740f4166; BYTE $0xde               // pcmpeqb    xmm3, xmm14
	QUAD $0x00000130bd6f0f66                   // movdqa    xmm7, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xdfdf0f66                           // pandn    xmm3, xmm7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0xe5f80f66                           // psubb    xmm4, xmm5
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x03151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 3
	QUAD $0x153654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r14 + 21], 4
	QUAD $0x150654203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r8 + 21], 5
	QUAD $0x06151e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 21], 6
	QUAD $0x153e54203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r15 + 21], 7
	QUAD $0x151e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r11 + 21], 8
	QUAD $0x09150e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 21], 9
	QUAD $0x150e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r9 + 21], 10
	QUAD $0x151654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r10 + 21], 11
	QUAD $0x0c150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 12
	QUAD $0x152654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r12 + 21], 13
	QUAD $0x152e54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r13 + 21], 14
	QUAD $0x0f153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 15
	QUAD $0x0316164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 22], 3
	QUAD $0x16364c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r14 + 22], 4
	QUAD $0x16064c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r8 + 22], 5
	QUAD $0x06161e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 22], 6
	QUAD $0x163e4c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rsi + r15 + 22], 7
	QUAD $0x161e4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r11 + 22], 8
	QUAD $0x09160e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 22], 9
	QUAD $0x160e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r9 + 22], 10
	QUAD $0x16164c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r10 + 22], 11
	QUAD $0x0c16064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 22], 12
	QUAD $0x16264c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r12 + 22], 13
	QUAD $0x162e4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r13 + 22], 14
	QUAD $0x0f163e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 22], 15
	QUAD $0x171644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rdx + 23], 3
	QUAD $0x173644203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r14 + 23], 4
	QUAD $0x170644203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r8 + 23], 5
	QUAD $0x171e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rbx + 23], 6
	QUAD $0x173e44203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r15 + 23], 7
	QUAD $0x171e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r11 + 23], 8
	QUAD $0x170e44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rsi + rcx + 23], 9
	QUAD $0x170e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r9 + 23], 10
	QUAD $0x171644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r10 + 23], 11
	QUAD $0x170644203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rax + 23], 12
	QUAD $0x172644203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r12 + 23], 13
	QUAD $0x172e44203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r13 + 23], 14
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140ad6f0f66                   // movdqa    xmm5, oword 320[rbp] /* [rip + .LCPI4_20] */
	LONG $0xd5df0f66                           // pandn    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI4_21] */
	LONG $0xcfdf0f66                           // pandn    xmm1, xmm7
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x173e44203a0f4466; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + rdi + 23], 15
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	LONG $0x656f0f66; BYTE $0x60               // movdqa    xmm4, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	QUAD $0x181664203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rdx + 24], 3
	QUAD $0x183664203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r14 + 24], 4
	QUAD $0x180664203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r8 + 24], 5
	QUAD $0x181e64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rbx + 24], 6
	QUAD $0x183e64203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r15 + 24], 7
	QUAD $0x181e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r11 + 24], 8
	QUAD $0x180e64203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rsi + rcx + 24], 9
	QUAD $0x180e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r9 + 24], 10
	QUAD $0x181664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r10 + 24], 11
	QUAD $0x180664203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + rax + 24], 12
	QUAD $0x182664203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r12 + 24], 13
	QUAD $0x182e64203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r13 + 24], 14
	QUAD $0x183e64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rdi + 24], 15
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x19166c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rdx + 25], 3
	QUAD $0x19366c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r14 + 25], 4
	QUAD $0x19066c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r8 + 25], 5
	QUAD $0x191e6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rbx + 25], 6
	QUAD $0x193e6c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r15 + 25], 7
	QUAD $0x191e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r11 + 25], 8
	QUAD $0x190e6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rsi + rcx + 25], 9
	QUAD $0x190e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r9 + 25], 10
	QUAD $0x19166c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r10 + 25], 11
	QUAD $0x19066c203a0f4466; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + rax + 25], 12
	QUAD $0x19266c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + r12 + 25], 13
	QUAD $0x192e6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r13 + 25], 14
	QUAD $0x193e6c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rdi + 25], 15
	QUAD $0x031a1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 26], 3
	QUAD $0x1a3644203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r14 + 26], 4
	QUAD $0x1a0644203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r8 + 26], 5
	QUAD $0x061a1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 26], 6
	QUAD $0x1a3e44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r15 + 26], 7
	QUAD $0x1a1e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r11 + 26], 8
	QUAD $0x091a0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 26], 9
	QUAD $0x1a0e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r9 + 26], 10
	QUAD $0x1a1644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r10 + 26], 11
	QUAD $0x0c1a0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 26], 12
	QUAD $0x1a2644203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r12 + 26], 13
	QUAD $0x1a2e44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r13 + 26], 14
	QUAD $0x0f1a3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 26], 15
	QUAD $0x1b165c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rdx + 27], 3
	QUAD $0x1b365c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r14 + 27], 4
	QUAD $0x1b065c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r8 + 27], 5
	QUAD $0x1b1e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rbx + 27], 6
	QUAD $0x1b3e5c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r15 + 27], 7
	QUAD $0x1b1e5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r11 + 27], 8
	QUAD $0x1b0e5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rsi + rcx + 27], 9
	QUAD $0x1b0e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r9 + 27], 10
	QUAD $0x1b165c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r10 + 27], 11
	QUAD $0x1b065c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + rax + 27], 12
	QUAD $0x1b265c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r12 + 27], 13
	QUAD $0x1b2e5c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r13 + 27], 14
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI4_16] */
	LONG $0xfc0f4566; BYTE $0xec               // paddb    xmm13, xmm12
	QUAD $0x1b3e5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rdi + 27], 15
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x0000011085df0f66                   // pandn    xmm0, oword 272[rbp] /* [rip + .LCPI4_17] */
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001209ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 288[rbp] /* [rip + .LCPI4_18] */
	LONG $0xeb0f4466; BYTE $0xd8               // por    xmm11, xmm0
	QUAD $0x1c167c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rdx + 28], 3
	QUAD $0x1d164c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rsi + rdx + 29], 3
	QUAD $0x1e1654203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rdx + 30], 3
	QUAD $0x031f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 31], 3
	QUAD $0x1c367c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rsi + r14 + 28], 4
	QUAD $0x1d364c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rsi + r14 + 29], 4
	QUAD $0x1e3654203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r14 + 30], 4
	QUAD $0x1f3674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r14 + 31], 4
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x1c067c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rsi + r8 + 28], 5
	QUAD $0x1d064c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r8 + 29], 5
	QUAD $0x1e0654203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r8 + 30], 5
	QUAD $0x1f0674203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r8 + 31], 5
	QUAD $0x1c1e7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rbx + 28], 6
	QUAD $0x1d1e4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rbx + 29], 6
	QUAD $0x1e1e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rbx + 30], 6
	QUAD $0x061f1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 31], 6
	QUAD $0x1c3e7c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rsi + r15 + 28], 7
	QUAD $0x1d3e4c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rsi + r15 + 29], 7
	QUAD $0x1e3e54203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r15 + 30], 7
	QUAD $0x1f3e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r15 + 31], 7
	QUAD $0x00000080249c8b48                   // mov    rbx, qword [rsp + 128]
	QUAD $0x1c1e7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r11 + 28], 8
	QUAD $0x1d1e4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r11 + 29], 8
	QUAD $0x1e1e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r11 + 30], 8
	QUAD $0x1f1e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r11 + 31], 8
	QUAD $0x1c0e7c203a0f4466; BYTE $0x09       // pinsrb    xmm15, byte [rsi + rcx + 28], 9
	QUAD $0x1d0e4c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rsi + rcx + 29], 9
	QUAD $0x1e0e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rcx + 30], 9
	QUAD $0x091f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 31], 9
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	QUAD $0x1c0e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r9 + 28], 10
	QUAD $0x1d0e4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r9 + 29], 10
	QUAD $0x1e0e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r9 + 30], 10
	QUAD $0x1f0e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r9 + 31], 10
	WORD $0x894c; BYTE $0xd2                   // mov    rdx, r10
	QUAD $0x1c167c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r10 + 28], 11
	QUAD $0x1d164c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r10 + 29], 11
	QUAD $0x1e1654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r10 + 30], 11
	QUAD $0x1f1674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r10 + 31], 11
	QUAD $0x1c067c203a0f4466; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + rax + 28], 12
	QUAD $0x1d064c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + rax + 29], 12
	QUAD $0x1e0654203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + rax + 30], 12
	QUAD $0x0c1f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 31], 12
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x1c267c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r12 + 28], 13
	QUAD $0x1d264c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r12 + 29], 13
	QUAD $0x1e2654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r12 + 30], 13
	QUAD $0x1f2674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r12 + 31], 13
	QUAD $0x1c2e7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r13 + 28], 14
	QUAD $0x1d2e4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r13 + 29], 14
	QUAD $0x1e2e54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r13 + 30], 14
	QUAD $0x1f2e74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r13 + 31], 14
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	QUAD $0x1c3e7c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + rdi + 28], 15
	QUAD $0x1d3e4c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + rdi + 29], 15
	QUAD $0x1e3e54203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rdi + 30], 15
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000130bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 304[rbp] /* [rip + .LCPI4_19] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	QUAD $0x0f1f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 31], 15
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	LONG $0xdf0f4466; BYTE $0xcd               // pandn    xmm9, xmm5
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0xdf0f4466; BYTE $0xd7               // pandn    xmm10, xmm7
	LONG $0xeb0f4566; BYTE $0xd1               // por    xmm10, xmm9
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0xf4df0f66                           // pandn    xmm6, xmm4
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc6600f66                           // punpcklbw    xmm0, xmm6
	QUAD $0x0000c0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 192]
	LONG $0xcb6f0f66                           // movdqa    xmm1, xmm3
	QUAD $0x0000e024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 224]
	LONG $0xcc600f66                           // punpcklbw    xmm1, xmm4
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	LONG $0xd0610f66                           // punpcklwd    xmm2, xmm0
	LONG $0xc8690f66                           // punpckhwd    xmm1, xmm0
	LONG $0x680f4466; BYTE $0xc6               // punpckhbw    xmm8, xmm6
	LONG $0xdc680f66                           // punpckhbw    xmm3, xmm4
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xd8               // punpckhwd    xmm3, xmm8
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	LONG $0x5c7f0ff3; WORD $0x308b             // movdqu    oword [rbx + 4*rcx + 48], xmm3
	LONG $0x447f0ff3; WORD $0x208b             // movdqu    oword [rbx + 4*rcx + 32], xmm0
	LONG $0x4c7f0ff3; WORD $0x108b             // movdqu    oword [rbx + 4*rcx + 16], xmm1
	LONG $0x147f0ff3; BYTE $0x8b               // movdqu    oword [rbx + 4*rcx], xmm2
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000d8248c3b48                   // cmp    rcx, qword [rsp + 216]
	JNE  LBB4_183
	QUAD $0x0000012024948b4c                   // mov    r10, qword [rsp + 288]
	QUAD $0x000000d824943b4c                   // cmp    r10, qword [rsp + 216]
	LONG $0x245c8a44; BYTE $0x08               // mov    r11b, byte [rsp + 8]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	JNE  LBB4_69
	JMP  LBB4_142

LBB4_185:
	LONG $0xf8e28349               // and    r10, -8
	WORD $0x894c; BYTE $0xd0       // mov    rax, r10
	LONG $0x06e0c148               // shl    rax, 6
	WORD $0x0148; BYTE $0xf0       // add    rax, rsi
	LONG $0x24448948; BYTE $0x38   // mov    qword [rsp + 56], rax
	LONG $0x2454894c; BYTE $0x20   // mov    qword [rsp + 32], r10
	LONG $0x94048d4b               // lea    rax, [r12 + 4*r10]
	LONG $0x24448948; BYTE $0x08   // mov    qword [rsp + 8], rax
	LONG $0x246c8944; BYTE $0x40   // mov    dword [rsp + 64], r13d
	LONG $0x6e0f4166; BYTE $0xc5   // movd    xmm0, r13d
	LONG $0xc0700ff2; BYTE $0xe0   // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00d8 // pshufd    xmm11, xmm0, 0
	WORD $0x3145; BYTE $0xff       // xor    r15d, r15d
	QUAD $0x0000008024a4894c       // mov    qword [rsp + 128], r12
	LONG $0xef0f4566; BYTE $0xff   // pxor    xmm15, xmm15

LBB4_186:
	LONG $0x247c894c; BYTE $0x18               // mov    qword [rsp + 24], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	LONG $0x04b70f42; BYTE $0x3e               // movzx    eax, word [rsi + r15]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x023e             // movzx    eax, word [rsi + r15 + 2]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44b70f42; WORD $0x043e             // movzx    eax, word [rsi + r15 + 4]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x063e             // movzx    eax, word [rsi + r15 + 6]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b70f42; WORD $0x083e             // movzx    eax, word [rsi + r15 + 8]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b70f42; WORD $0x0a3e             // movzx    eax, word [rsi + r15 + 10]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b70f42; WORD $0x0c3e             // movzx    eax, word [rsi + r15 + 12]
	LONG $0x54b70f46; WORD $0x0e3e             // movzx    r10d, word [rsi + r15 + 14]
	LONG $0x5cb70f46; WORD $0x103e             // movzx    r11d, word [rsi + r15 + 16]
	LONG $0x54b70f42; WORD $0x123e             // movzx    edx, word [rsi + r15 + 18]
	LONG $0x74b70f46; WORD $0x143e             // movzx    r14d, word [rsi + r15 + 20]
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80c88149; WORD $0x0000; BYTE $0x00 // or    r8, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0x2cc40f66; WORD $0x010e             // pinsrw    xmm5, word [rsi + rcx], 1
	LONG $0xc40f4266; WORD $0x062c; BYTE $0x02 // pinsrw    xmm5, word [rsi + r8], 2
	LONG $0xc40f4266; WORD $0x262c; BYTE $0x03 // pinsrw    xmm5, word [rsi + r12], 3
	LONG $0xc40f4266; WORD $0x2e2c; BYTE $0x04 // pinsrw    xmm5, word [rsi + r13], 4
	LONG $0x2cc40f66; WORD $0x051e             // pinsrw    xmm5, word [rsi + rbx], 5
	LONG $0x2cc40f66; WORD $0x063e             // pinsrw    xmm5, word [rsi + rdi], 6
	LONG $0x44c40f66; WORD $0x020e; BYTE $0x01 // pinsrw    xmm0, word [rsi + rcx + 2], 1
	QUAD $0x02020644c40f4266                   // pinsrw    xmm0, word [rsi + r8 + 2], 2
	QUAD $0x03022644c40f4266                   // pinsrw    xmm0, word [rsi + r12 + 2], 3
	QUAD $0x04022e44c40f4266                   // pinsrw    xmm0, word [rsi + r13 + 2], 4
	LONG $0x44c40f66; WORD $0x021e; BYTE $0x05 // pinsrw    xmm0, word [rsi + rbx + 2], 5
	LONG $0x44c40f66; WORD $0x023e; BYTE $0x06 // pinsrw    xmm0, word [rsi + rdi + 2], 6
	LONG $0xc0c98149; WORD $0x0001; BYTE $0x00 // or    r9, 448
	QUAD $0x07020e44c40f4266                   // pinsrw    xmm0, word [rsi + r9 + 2], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x163e             // movzx    eax, word [rsi + r15 + 22]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0x4cc40f66; WORD $0x040e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 4], 1
	QUAD $0x0204064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 4], 2
	QUAD $0x0304264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 4], 3
	QUAD $0x04042e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 4], 4
	LONG $0x4cc40f66; WORD $0x041e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 4], 5
	LONG $0x4cc40f66; WORD $0x043e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 4], 6
	QUAD $0x07040e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 4], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x0000808d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0x6f0f4166; BYTE $0xd9               // movdqa    xmm3, xmm9
	LONG $0x380f4166; WORD $0xdf10             // pblendvb    xmm3, xmm15, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x00000090856f0f66                   // movdqa    xmm0, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xf06f0f66                           // movdqa    xmm6, xmm0
	LONG $0x6f0f4466; BYTE $0xf0               // movdqa    xmm14, xmm0
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xca               // movd    xmm1, r10d
	LONG $0x54b70f46; WORD $0x183e             // movzx    r10d, word [rsi + r15 + 24]
	LONG $0xc40f4266; WORD $0x0e2c; BYTE $0x07 // pinsrw    xmm5, word [rsi + r9], 7
	LONG $0x750f4166; BYTE $0xeb               // pcmpeqw    xmm5, xmm11
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8ef0f66                           // pxor    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x7cc40f66; WORD $0x060e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 6], 1
	QUAD $0x0206067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 6], 2
	QUAD $0x0306267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 6], 3
	QUAD $0x04062e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 6], 4
	LONG $0x7cc40f66; WORD $0x061e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 6], 5
	LONG $0x7cc40f66; WORD $0x063e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 6], 6
	QUAD $0x07060e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 6], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01080e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 8], 1
	QUAD $0x02080644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 8], 2
	QUAD $0x03082644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 8], 3
	QUAD $0x04082e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 8], 4
	QUAD $0x05081e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 8], 5
	QUAD $0x06083e44c40f4466                   // pinsrw    xmm8, word [rsi + rdi + 8], 6
	QUAD $0x07080e44c40f4666                   // pinsrw    xmm8, word [rsi + r9 + 8], 7
	LONG $0xddf80f66                           // psubb    xmm3, xmm5
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x44b70f42; WORD $0x1a3e             // movzx    eax, word [rsi + r15 + 26]
	LONG $0x750f4566; BYTE $0xc3               // pcmpeqw    xmm8, xmm11
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x5cb70f46; WORD $0x1c3e             // movzx    r11d, word [rsi + r15 + 28]
	LONG $0x64c40f66; WORD $0x0a0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 10], 1
	QUAD $0x020a0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 10], 2
	QUAD $0x030a2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 10], 3
	QUAD $0x040a2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 10], 4
	LONG $0x64c40f66; WORD $0x0a1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 10], 5
	LONG $0x64c40f66; WORD $0x0a3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 10], 6
	QUAD $0x070a0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 10], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0x54c40f66; WORD $0x0c0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 12], 1
	QUAD $0x020c0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 12], 2
	QUAD $0x030c2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 12], 3
	QUAD $0x040c2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 12], 4
	LONG $0x54c40f66; WORD $0x0c1e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 12], 5
	LONG $0x54c40f66; WORD $0x0c3e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 12], 6
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0x54b70f42; WORD $0x1e3e             // movzx    edx, word [rsi + r15 + 30]
	LONG $0x30245489                           // mov    dword [rsp + 48], edx
	QUAD $0x070c0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 12], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x1024             // movd    xmm3, dword [rsp + 16]
	LONG $0x54b70f42; WORD $0x203e             // movzx    edx, word [rsi + r15 + 32]
	LONG $0x28245489                           // mov    dword [rsp + 40], edx
	LONG $0x4cc40f66; WORD $0x0e0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 14], 1
	QUAD $0x020e064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 14], 2
	QUAD $0x030e264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 14], 3
	QUAD $0x040e2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 14], 4
	LONG $0x4cc40f66; WORD $0x0e1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 14], 5
	LONG $0x4cc40f66; WORD $0x0e3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 14], 6
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x54b70f42; WORD $0x223e             // movzx    edx, word [rsi + r15 + 34]
	LONG $0x10245489                           // mov    dword [rsp + 16], edx
	QUAD $0x070e0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 14], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0x74c40f66; WORD $0x120e; BYTE $0x01 // pinsrw    xmm6, word [rsi + rcx + 18], 1
	QUAD $0x02120674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 18], 2
	QUAD $0x03122674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 18], 3
	QUAD $0x04122e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 18], 4
	LONG $0x74c40f66; WORD $0x121e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rbx + 18], 5
	LONG $0x74c40f66; WORD $0x123e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 18], 6
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x07120e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 18], 7
	LONG $0x750f4166; BYTE $0xf3               // pcmpeqw    xmm6, xmm11
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	QUAD $0x0000e0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 224[rbp] /* [rip + .LCPI4_14] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x6f0f4566; BYTE $0xc1               // movdqa    xmm8, xmm9
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x74b70f46; WORD $0x243e             // movzx    r14d, word [rsi + r15 + 36]
	LONG $0x7cc40f66; WORD $0x100e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 16], 1
	QUAD $0x0210067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 16], 2
	QUAD $0x0310267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 16], 3
	QUAD $0x04102e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 16], 4
	LONG $0x7cc40f66; WORD $0x101e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 16], 5
	LONG $0x7cc40f66; WORD $0x103e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 16], 6
	LONG $0x64c40f66; WORD $0x140e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 20], 1
	QUAD $0x02140664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 20], 2
	QUAD $0x03142664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 20], 3
	QUAD $0x04142e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 20], 4
	LONG $0x64c40f66; WORD $0x141e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 20], 5
	LONG $0x64c40f66; WORD $0x143e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 20], 6
	QUAD $0x07140e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 20], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x6f0f4166; BYTE $0xee               // movdqa    xmm5, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f46; WORD $0x263e             // movzx    r11d, word [rsi + r15 + 38]
	QUAD $0x07100e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 16], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x5cc40f66; WORD $0x160e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 22], 1
	QUAD $0x0216065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 22], 2
	QUAD $0x0316265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 22], 3
	QUAD $0x04162e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 22], 4
	LONG $0x5cc40f66; WORD $0x161e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 22], 5
	LONG $0x5cc40f66; WORD $0x163e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 22], 6
	QUAD $0x07160e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 22], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x54c40f66; WORD $0x180e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 24], 1
	QUAD $0x02180654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 24], 2
	QUAD $0x03182654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 24], 3
	QUAD $0x04182e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 24], 4
	LONG $0x54c40f66; WORD $0x181e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 24], 5
	LONG $0x54c40f66; WORD $0x183e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 24], 6
	QUAD $0x07180e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 24], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x0000a0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0x6f0f4566; BYTE $0xf2               // movdqa    xmm14, xmm10
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x3024             // movd    xmm3, dword [rsp + 48]
	LONG $0x44b70f42; WORD $0x283e             // movzx    eax, word [rsi + r15 + 40]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4466; BYTE $0xf5               // por    xmm14, xmm5
	QUAD $0x0000b08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0x6f0f4566; BYTE $0xe9               // movdqa    xmm13, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x7c6e0f66; WORD $0x2824             // movd    xmm7, dword [rsp + 40]
	LONG $0x54b70f46; WORD $0x2a3e             // movzx    r10d, word [rsi + r15 + 42]
	LONG $0x4cc40f66; WORD $0x1a0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 26], 1
	QUAD $0x021a064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 26], 2
	QUAD $0x031a264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 26], 3
	QUAD $0x041a2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 26], 4
	LONG $0x4cc40f66; WORD $0x1a1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 26], 5
	LONG $0x4cc40f66; WORD $0x1a3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 26], 6
	QUAD $0x071a0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 26], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x64c40f66; WORD $0x1c0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 28], 1
	QUAD $0x021c0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 28], 2
	QUAD $0x031c2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 28], 3
	QUAD $0x041c2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 28], 4
	LONG $0x64c40f66; WORD $0x1c1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 28], 5
	LONG $0x64c40f66; WORD $0x1c3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 28], 6
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x546e0f66; WORD $0x1024             // movd    xmm2, dword [rsp + 16]
	LONG $0x54b70f42; WORD $0x2c3e             // movzx    edx, word [rsi + r15 + 44]
	LONG $0x28245489                           // mov    dword [rsp + 40], edx
	QUAD $0x071c0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 28], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0x54b70f42; WORD $0x2e3e             // movzx    edx, word [rsi + r15 + 46]
	LONG $0x10245489                           // mov    dword [rsp + 16], edx
	LONG $0x5cc40f66; WORD $0x1e0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 30], 1
	QUAD $0x021e065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 30], 2
	QUAD $0x031e265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 30], 3
	QUAD $0x041e2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 30], 4
	LONG $0x5cc40f66; WORD $0x1e1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 30], 5
	LONG $0x5cc40f66; WORD $0x1e3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 30], 6
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x5cb70f46; WORD $0x303e             // movzx    r11d, word [rsi + r15 + 48]
	QUAD $0x071e0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 30], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0x54c40f66; WORD $0x220e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 34], 1
	QUAD $0x02220654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 34], 2
	QUAD $0x03222654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 34], 3
	QUAD $0x04222e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 34], 4
	LONG $0x54c40f66; WORD $0x221e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 34], 5
	LONG $0x54c40f66; WORD $0x223e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 34], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07220e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 34], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xf6               // por    xmm6, xmm14
	QUAD $0x0000e0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 224[rbp] /* [rip + .LCPI4_14] */
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	QUAD $0x000080856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x74b70f46; WORD $0x323e             // movzx    r14d, word [rsi + r15 + 50]
	LONG $0x7cc40f66; WORD $0x200e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 32], 1
	QUAD $0x0220067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 32], 2
	QUAD $0x0320267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 32], 3
	QUAD $0x04202e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 32], 4
	LONG $0x7cc40f66; WORD $0x201e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 32], 5
	LONG $0x7cc40f66; WORD $0x203e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 32], 6
	LONG $0x64c40f66; WORD $0x240e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 36], 1
	QUAD $0x02240664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 36], 2
	QUAD $0x03242664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 36], 3
	QUAD $0x04242e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 36], 4
	LONG $0x64c40f66; WORD $0x241e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 36], 5
	LONG $0x64c40f66; WORD $0x243e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 36], 6
	QUAD $0x07240e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 36], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4466; BYTE $0xee               // por    xmm13, xmm6
	QUAD $0x00000090b56f0f66                   // movdqa    xmm6, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x54b70f42; WORD $0x343e             // movzx    edx, word [rsi + r15 + 52]
	QUAD $0x07200e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 32], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x4cc40f66; WORD $0x260e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 38], 1
	QUAD $0x0226064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 38], 2
	QUAD $0x0326264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 38], 3
	QUAD $0x04262e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 38], 4
	LONG $0x4cc40f66; WORD $0x261e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 38], 5
	LONG $0x4cc40f66; WORD $0x263e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 38], 6
	QUAD $0x07260e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 38], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x54c40f66; WORD $0x280e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 40], 1
	QUAD $0x02280654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 40], 2
	QUAD $0x03282654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 40], 3
	QUAD $0x04282e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 40], 4
	LONG $0x54c40f66; WORD $0x281e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 40], 5
	LONG $0x54c40f66; WORD $0x283e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 40], 6
	QUAD $0x07280e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 40], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	LONG $0x6f0f4166; BYTE $0xea               // movdqa    xmm5, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x4c6e0f66; WORD $0x2824             // movd    xmm1, dword [rsp + 40]
	LONG $0x54b70f46; WORD $0x363e             // movzx    r10d, word [rsi + r15 + 54]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6f0f4166; BYTE $0xf1               // movdqa    xmm6, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x646e0f66; WORD $0x1024             // movd    xmm4, dword [rsp + 16]
	LONG $0x44b70f42; WORD $0x383e             // movzx    eax, word [rsi + r15 + 56]
	LONG $0x5cc40f66; WORD $0x2a0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 42], 1
	QUAD $0x022a065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 42], 2
	QUAD $0x032a265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 42], 3
	QUAD $0x042a2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 42], 4
	LONG $0x5cc40f66; WORD $0x2a1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 42], 5
	LONG $0x5cc40f66; WORD $0x2a3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 42], 6
	QUAD $0x072a0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 42], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x4cc40f66; WORD $0x2c0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 44], 1
	QUAD $0x022c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 44], 2
	QUAD $0x032c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 44], 3
	QUAD $0x042c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 44], 4
	LONG $0x4cc40f66; WORD $0x2c1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 44], 5
	LONG $0x4cc40f66; WORD $0x2c3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 44], 6
	LONG $0xeb0f4166; BYTE $0xe8               // por    xmm5, xmm8
	QUAD $0x0000c08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0x6f0f4166; BYTE $0xd1               // movdqa    xmm2, xmm9
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd710             // pblendvb    xmm2, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x5cb70f46; WORD $0x3a3e             // movzx    r11d, word [rsi + r15 + 58]
	QUAD $0x072c0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 44], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0x0000d0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0x6f0f4166; BYTE $0xf2               // movdqa    xmm6, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	LONG $0x74b70f46; WORD $0x3c3e             // movzx    r14d, word [rsi + r15 + 60]
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x64c40f66; WORD $0x2e0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 46], 1
	QUAD $0x022e0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 46], 2
	QUAD $0x032e2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 46], 3
	QUAD $0x042e2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 46], 4
	LONG $0x64c40f66; WORD $0x2e1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 46], 5
	LONG $0x64c40f66; WORD $0x2e3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 46], 6
	QUAD $0x072e0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 46], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6f0f4566; BYTE $0xc6               // movdqa    xmm8, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x4cc40f66; WORD $0x320e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 50], 1
	QUAD $0x0232064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 50], 2
	QUAD $0x0332264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 50], 3
	QUAD $0x04322e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x321e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 50], 5
	LONG $0x4cc40f66; WORD $0x323e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 50], 6
	QUAD $0x07320e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 50], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	QUAD $0x00000080a56f0f66                   // movdqa    xmm4, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x7cc40f66; WORD $0x300e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 48], 1
	QUAD $0x0230067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 48], 2
	QUAD $0x0330267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 48], 3
	QUAD $0x04302e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 48], 4
	LONG $0x7cc40f66; WORD $0x301e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 48], 5
	LONG $0x7cc40f66; WORD $0x303e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 48], 6
	QUAD $0x07300e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 48], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0x54c40f66; WORD $0x340e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 52], 1
	QUAD $0x02340654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 52], 2
	QUAD $0x03342654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 52], 3
	QUAD $0x04342e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 52], 4
	LONG $0x54c40f66; WORD $0x341e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 52], 5
	LONG $0x54c40f66; WORD $0x343e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 52], 6
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x07340e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 52], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0x5cc40f66; WORD $0x360e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 54], 1
	QUAD $0x0236065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 54], 2
	QUAD $0x0336265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 54], 3
	QUAD $0x04362e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 54], 4
	LONG $0x5cc40f66; WORD $0x361e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 54], 5
	LONG $0x5cc40f66; WORD $0x363e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 54], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x07360e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 54], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0x4cc40f66; WORD $0x380e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 56], 1
	QUAD $0x0238064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 56], 2
	QUAD $0x0338264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 56], 3
	QUAD $0x04382e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 56], 4
	LONG $0x4cc40f66; WORD $0x381e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 56], 5
	LONG $0x4cc40f66; WORD $0x383e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 56], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07380e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 56], 7
	LONG $0xe7f80f66                           // psubb    xmm4, xmm7
	QUAD $0x00000090ad6f0f66                   // movdqa    xmm5, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	QUAD $0x000000a0b56f0f66                   // movdqa    xmm6, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0x54c40f66; WORD $0x3a0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 58], 1
	QUAD $0x023a0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 58], 2
	QUAD $0x033a2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 58], 3
	QUAD $0x043a2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 58], 4
	LONG $0x54c40f66; WORD $0x3a1e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 58], 5
	LONG $0x54c40f66; WORD $0x3a3e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 58], 6
	QUAD $0x073a0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 58], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xde               // movd    xmm3, r14d
	LONG $0x5cc40f66; WORD $0x3c0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 60], 1
	QUAD $0x023c065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 60], 2
	QUAD $0x033c265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 60], 3
	QUAD $0x043c2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 60], 4
	LONG $0x5cc40f66; WORD $0x3c1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 60], 5
	LONG $0x5cc40f66; WORD $0x3c3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 60], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x073c0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 60], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0x6f0f4166; BYTE $0xc9               // movdqa    xmm1, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xcf10             // pblendvb    xmm1, xmm15, xmm0
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xd710             // pblendvb    xmm10, xmm15, xmm0
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x44b70f42; WORD $0x3e3e             // movzx    eax, word [rsi + r15 + 62]
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44c40f66; WORD $0x3e0e; BYTE $0x01 // pinsrw    xmm0, word [rsi + rcx + 62], 1
	QUAD $0x023e0644c40f4266                   // pinsrw    xmm0, word [rsi + r8 + 62], 2
	QUAD $0x033e2644c40f4266                   // pinsrw    xmm0, word [rsi + r12 + 62], 3
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x043e2e44c40f4266                   // pinsrw    xmm0, word [rsi + r13 + 62], 4
	LONG $0x44c40f66; WORD $0x3e1e; BYTE $0x05 // pinsrw    xmm0, word [rsi + rbx + 62], 5
	LONG $0x44c40f66; WORD $0x3e3e; BYTE $0x06 // pinsrw    xmm0, word [rsi + rdi + 62], 6
	QUAD $0x073e0e44c40f4266                   // pinsrw    xmm0, word [rsi + r9 + 62], 7
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xeb0f4466; BYTE $0xd6               // por    xmm10, xmm6
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0xeb0f4566; BYTE $0xf2               // por    xmm14, xmm10
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x6c0f4166; BYTE $0xc5               // punpcklqdq    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x6c0f4166; BYTE $0xd6               // punpcklqdq    xmm2, xmm14
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI4_15] */
	LONG $0x00380f66; BYTE $0xd3               // pshufb    xmm2, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0x600f4566; BYTE $0xc6               // punpcklbw    xmm8, xmm14
	LONG $0x600f4566; BYTE $0xe5               // punpcklbw    xmm12, xmm13
	LONG $0x610f4566; BYTE $0xe0               // punpcklwd    xmm12, xmm8
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	LONG $0x7f0f44f3; WORD $0x8824             // movdqu    oword [rax + 4*rcx], xmm12
	LONG $0x447f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm0
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB4_186
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	LONG $0x24543b4c; BYTE $0x20               // cmp    r10, qword [rsp + 32]
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	LONG $0x246c8b44; BYTE $0x40               // mov    r13d, dword [rsp + 64]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	JNE  LBB4_92
	JMP  LBB4_95

LBB4_188:
	WORD $0x894d; BYTE $0xd0                   // mov    r8, r10
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x0148; BYTE $0xf3                   // add    rbx, rsi
	LONG $0x843c8d4f                           // lea    r15, [r12 + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc68148; WORD $0x0001; BYTE $0x00 // add    rsi, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI4_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI4_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI4_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI4_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI4_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI4_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI4_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI4_7] */

LBB4_189:
	QUAD $0xfffffe04b6100ff3                   // movss    xmm6, dword [rsi - 508]
	QUAD $0xfffffe08be100ff3                   // movss    xmm7, dword [rsi - 504]
	QUAD $0xfffffe0cae100ff3                   // movss    xmm5, dword [rsi - 500]
	QUAD $0xfffffe10a6100ff3                   // movss    xmm4, dword [rsi - 496]
	QUAD $0xfffe84b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 380], 16
	QUAD $0xffff04b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 252], 32
	LONG $0x213a0f66; WORD $0x8476; BYTE $0x30 // insertps    xmm6, dword [rsi - 124], 48
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	QUAD $0xfffe88be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 376], 16
	QUAD $0xffff08be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 248], 32
	LONG $0x213a0f66; WORD $0x887e; BYTE $0x30 // insertps    xmm7, dword [rsi - 120], 48
	QUAD $0xfffe8cae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 372], 16
	QUAD $0xffff0cae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 244], 32
	LONG $0x213a0f66; WORD $0x8c6e; BYTE $0x30 // insertps    xmm5, dword [rsi - 116], 48
	QUAD $0xfffe90a6213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rsi - 368], 16
	QUAD $0xffff10a6213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rsi - 240], 32
	LONG $0x213a0f66; WORD $0x9066; BYTE $0x30 // insertps    xmm4, dword [rsi - 112], 48
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xd7f80f66                           // psubb    xmm2, xmm7
	QUAD $0xfffffe14be100ff3                   // movss    xmm7, dword [rsi - 492]
	QUAD $0xfffe94be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 364], 16
	QUAD $0xffff14be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 236], 32
	LONG $0x213a0f66; WORD $0x947e; BYTE $0x30 // insertps    xmm7, dword [rsi - 108], 48
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe18b6100ff3                   // movss    xmm6, dword [rsi - 488]
	QUAD $0xfffe98b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 360], 16
	QUAD $0xffff18b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 232], 32
	LONG $0x213a0f66; WORD $0x9876; BYTE $0x30 // insertps    xmm6, dword [rsi - 104], 48
	LONG $0x04e9c20f                           // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe1c9e100ff3                   // movss    xmm3, dword [rsi - 484]
	QUAD $0xfffe9c9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 356], 16
	QUAD $0xffff1c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 228], 32
	LONG $0x213a0f66; WORD $0x9c5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 100], 48
	LONG $0x04e1c20f                           // cmpneqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2               // pand    xmm4, xmm10
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04               // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	QUAD $0xfffffe20a6100ff3                   // movss    xmm4, dword [rsi - 480]
	QUAD $0xfffea0a6213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rsi - 352], 16
	QUAD $0xffff20a6213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rsi - 224], 32
	LONG $0x213a0f66; WORD $0xa066; BYTE $0x30 // insertps    xmm4, dword [rsi - 96], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe24ae100ff3                   // movss    xmm5, dword [rsi - 476]
	QUAD $0xfffea4ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 348], 16
	QUAD $0xffff24ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 220], 32
	LONG $0x213a0f66; WORD $0xa46e; BYTE $0x30 // insertps    xmm5, dword [rsi - 92], 48
	LONG $0x04e9c20f                           // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x04d9c20f                           // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06               // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd               // pand    xmm3, xmm13
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe2896100ff3                   // movss    xmm2, dword [rsi - 472]
	QUAD $0xfffea896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 344], 16
	QUAD $0xffff2896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 216], 32
	LONG $0x213a0f66; WORD $0xa856; BYTE $0x30 // insertps    xmm2, dword [rsi - 88], 48
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x04e1c20f                           // cmpneqps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	QUAD $0xfffffe2c9e100ff3                   // movss    xmm3, dword [rsi - 468]
	QUAD $0xfffeac9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 340], 16
	QUAD $0xffff2c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 212], 32
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0x213a0f66; WORD $0xac5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 84], 48
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe30be100ff3                   // movss    xmm7, dword [rsi - 464]
	QUAD $0xfffeb0be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 336], 16
	QUAD $0xffff30be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 208], 32
	LONG $0x213a0f66; WORD $0xb07e; BYTE $0x30 // insertps    xmm7, dword [rsi - 80], 48
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe34ae100ff3                   // movss    xmm5, dword [rsi - 460]
	QUAD $0xfffeb4ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 332], 16
	QUAD $0xffff34ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 204], 32
	LONG $0x213a0f66; WORD $0xb46e; BYTE $0x30 // insertps    xmm5, dword [rsi - 76], 48
	LONG $0x04d9c20f                           // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe38b6100ff3                   // movss    xmm6, dword [rsi - 456]
	QUAD $0xfffeb8b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 328], 16
	QUAD $0xffff38b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 200], 32
	LONG $0x213a0f66; WORD $0xb876; BYTE $0x30 // insertps    xmm6, dword [rsi - 72], 48
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03               // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa               // pand    xmm7, xmm10
	LONG $0x04e9c20f                           // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0xfffffe3c96100ff3                   // movss    xmm2, dword [rsi - 452]
	QUAD $0xfffebc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 324], 16
	QUAD $0xffff3c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 196], 32
	LONG $0x213a0f66; WORD $0xbc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 68], 48
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	QUAD $0xfffffe40be100ff3                   // movss    xmm7, dword [rsi - 448]
	QUAD $0xfffec0be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 320], 16
	QUAD $0xffff40be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 192], 32
	LONG $0x213a0f66; WORD $0xc07e; BYTE $0x30 // insertps    xmm7, dword [rsi - 64], 48
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe44b6100ff3                   // movss    xmm6, dword [rsi - 444]
	QUAD $0xfffec4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 316], 16
	QUAD $0xffff44b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 188], 32
	LONG $0x213a0f66; WORD $0xc476; BYTE $0x30 // insertps    xmm6, dword [rsi - 60], 48
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07               // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe               // pand    xmm7, xmm14
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0xfffffe4896100ff3                   // movss    xmm2, dword [rsi - 440]
	QUAD $0xfffec896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 312], 16
	QUAD $0xffff4896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 184], 32
	LONG $0x213a0f66; WORD $0xc856; BYTE $0x30 // insertps    xmm2, dword [rsi - 56], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe4c9e100ff3                   // movss    xmm3, dword [rsi - 436]
	QUAD $0xfffecc9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 308], 16
	QUAD $0xffff4c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x213a0f66; WORD $0xcc5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 52], 48
	LONG $0xe7620f66                           // punpckldq    xmm4, xmm7
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xfaf80f66                           // psubb    xmm7, xmm2
	QUAD $0xfffffe50ae100ff3                   // movss    xmm5, dword [rsi - 432]
	QUAD $0xfffed0ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 304], 16
	QUAD $0xffff50ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 176], 32
	LONG $0x213a0f66; WORD $0xd06e; BYTE $0x30 // insertps    xmm5, dword [rsi - 48], 48
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	QUAD $0xfffffe54b6100ff3                   // movss    xmm6, dword [rsi - 428]
	QUAD $0xfffed4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 300], 16
	QUAD $0xffff54b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 172], 32
	LONG $0x213a0f66; WORD $0xd476; BYTE $0x30 // insertps    xmm6, dword [rsi - 44], 48
	LONG $0x04d9c20f                           // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	QUAD $0xfffffe58be100ff3                   // movss    xmm7, dword [rsi - 424]
	QUAD $0xfffed8be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 296], 16
	QUAD $0xffff58be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 168], 32
	LONG $0x213a0f66; WORD $0xd87e; BYTE $0x30 // insertps    xmm7, dword [rsi - 40], 48
	LONG $0x04e9c20f                           // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe5c96100ff3                   // movss    xmm2, dword [rsi - 420]
	QUAD $0xfffedc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 292], 16
	QUAD $0xffff5c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 164], 32
	LONG $0x213a0f66; WORD $0xdc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 36], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe60ae100ff3                   // movss    xmm5, dword [rsi - 416]
	QUAD $0xfffee0ae213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rsi - 288], 16
	QUAD $0xffff60ae213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rsi - 160], 32
	LONG $0x213a0f66; WORD $0xe06e; BYTE $0x30 // insertps    xmm5, dword [rsi - 32], 48
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe64be100ff3                   // movss    xmm7, dword [rsi - 412]
	QUAD $0xfffee4be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 284], 16
	QUAD $0xffff64be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 156], 32
	LONG $0x213a0f66; WORD $0xe47e; BYTE $0x30 // insertps    xmm7, dword [rsi - 28], 48
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x04e9c20f                           // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07               // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee               // pand    xmm5, xmm14
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe6896100ff3                   // movss    xmm2, dword [rsi - 408]
	QUAD $0xfffee896213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 280], 16
	QUAD $0xffff6896213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 152], 32
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0x213a0f66; WORD $0xe856; BYTE $0x30 // insertps    xmm2, dword [rsi - 24], 48
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe6c9e100ff3                   // movss    xmm3, dword [rsi - 404]
	QUAD $0xfffeec9e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 276], 16
	QUAD $0xffff6c9e213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rsi - 148], 32
	LONG $0x213a0f66; WORD $0xec5e; BYTE $0x30 // insertps    xmm3, dword [rsi - 20], 48
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0xfffffe7096100ff3                   // movss    xmm2, dword [rsi - 400]
	QUAD $0xfffef096213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 272], 16
	QUAD $0xffff7096213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 144], 32
	LONG $0x213a0f66; WORD $0xf056; BYTE $0x30 // insertps    xmm2, dword [rsi - 16], 48
	LONG $0x04d9c20f                           // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe74b6100ff3                   // movss    xmm6, dword [rsi - 396]
	QUAD $0xfffef4b6213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rsi - 268], 16
	QUAD $0xffff74b6213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rsi - 140], 32
	LONG $0x213a0f66; WORD $0xf476; BYTE $0x30 // insertps    xmm6, dword [rsi - 12], 48
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0x04f1c20f                           // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	QUAD $0xfffffe78be100ff3                   // movss    xmm7, dword [rsi - 392]
	QUAD $0xfffef8be213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rsi - 264], 16
	QUAD $0xffff78be213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rsi - 136], 32
	LONG $0x213a0f66; WORD $0xf87e; BYTE $0x30 // insertps    xmm7, dword [rsi - 8], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe7c96100ff3                   // movss    xmm2, dword [rsi - 388]
	QUAD $0xfffefc96213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rsi - 260], 16
	QUAD $0xffff7c96213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rsi - 132], 32
	LONG $0x213a0f66; WORD $0xfc56; BYTE $0x30 // insertps    xmm2, dword [rsi - 4], 48
	LONG $0x04f9c20f                           // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x04d1c20f                           // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe809e100ff3                   // movss    xmm3, dword [rsi - 384]
	QUAD $0xffff009e213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rsi - 256], 16
	LONG $0x213a0f66; WORD $0x805e; BYTE $0x20 // insertps    xmm3, dword [rsi - 128], 32
	LONG $0x213a0f66; WORD $0x301e             // insertps    xmm3, dword [rsi], 48
	LONG $0x04d9c20f                           // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	LONG $0xeb620f66                           // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                           // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100             // pshufb    xmm4, xmm9
	LONG $0x7f0f41f3; WORD $0x8c24             // movdqu    oword [r12 + 4*rcx], xmm4
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x00c68148; WORD $0x0002; BYTE $0x00 // add    rsi, 512
	WORD $0x3949; BYTE $0xc8                   // cmp    r8, rcx
	JNE  LBB4_189
	WORD $0x394d; BYTE $0xc2                   // cmp    r10, r8
	JNE  LBB4_134
	JMP  LBB4_146

LBB4_191:
	LONG $0xf8e28349               // and    r10, -8
	WORD $0x894c; BYTE $0xd0       // mov    rax, r10
	LONG $0x06e0c148               // shl    rax, 6
	WORD $0x0148; BYTE $0xf0       // add    rax, rsi
	LONG $0x24448948; BYTE $0x38   // mov    qword [rsp + 56], rax
	LONG $0x2454894c; BYTE $0x20   // mov    qword [rsp + 32], r10
	LONG $0x94048d4b               // lea    rax, [r12 + 4*r10]
	LONG $0x24448948; BYTE $0x08   // mov    qword [rsp + 8], rax
	LONG $0x246c8944; BYTE $0x40   // mov    dword [rsp + 64], r13d
	LONG $0x6e0f4166; BYTE $0xc5   // movd    xmm0, r13d
	LONG $0xc0700ff2; BYTE $0xe0   // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00d8 // pshufd    xmm11, xmm0, 0
	WORD $0x3145; BYTE $0xff       // xor    r15d, r15d
	QUAD $0x0000008024a4894c       // mov    qword [rsp + 128], r12
	LONG $0xef0f4566; BYTE $0xff   // pxor    xmm15, xmm15

LBB4_192:
	LONG $0x247c894c; BYTE $0x18               // mov    qword [rsp + 24], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	LONG $0x04b70f42; BYTE $0x3e               // movzx    eax, word [rsi + r15]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x023e             // movzx    eax, word [rsi + r15 + 2]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44b70f42; WORD $0x043e             // movzx    eax, word [rsi + r15 + 4]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x063e             // movzx    eax, word [rsi + r15 + 6]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b70f42; WORD $0x083e             // movzx    eax, word [rsi + r15 + 8]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b70f42; WORD $0x0a3e             // movzx    eax, word [rsi + r15 + 10]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b70f42; WORD $0x0c3e             // movzx    eax, word [rsi + r15 + 12]
	LONG $0x54b70f46; WORD $0x0e3e             // movzx    r10d, word [rsi + r15 + 14]
	LONG $0x5cb70f46; WORD $0x103e             // movzx    r11d, word [rsi + r15 + 16]
	LONG $0x54b70f42; WORD $0x123e             // movzx    edx, word [rsi + r15 + 18]
	LONG $0x74b70f46; WORD $0x143e             // movzx    r14d, word [rsi + r15 + 20]
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80c88149; WORD $0x0000; BYTE $0x00 // or    r8, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0x2cc40f66; WORD $0x010e             // pinsrw    xmm5, word [rsi + rcx], 1
	LONG $0xc40f4266; WORD $0x062c; BYTE $0x02 // pinsrw    xmm5, word [rsi + r8], 2
	LONG $0xc40f4266; WORD $0x262c; BYTE $0x03 // pinsrw    xmm5, word [rsi + r12], 3
	LONG $0xc40f4266; WORD $0x2e2c; BYTE $0x04 // pinsrw    xmm5, word [rsi + r13], 4
	LONG $0x2cc40f66; WORD $0x051e             // pinsrw    xmm5, word [rsi + rbx], 5
	LONG $0x2cc40f66; WORD $0x063e             // pinsrw    xmm5, word [rsi + rdi], 6
	LONG $0x44c40f66; WORD $0x020e; BYTE $0x01 // pinsrw    xmm0, word [rsi + rcx + 2], 1
	QUAD $0x02020644c40f4266                   // pinsrw    xmm0, word [rsi + r8 + 2], 2
	QUAD $0x03022644c40f4266                   // pinsrw    xmm0, word [rsi + r12 + 2], 3
	QUAD $0x04022e44c40f4266                   // pinsrw    xmm0, word [rsi + r13 + 2], 4
	LONG $0x44c40f66; WORD $0x021e; BYTE $0x05 // pinsrw    xmm0, word [rsi + rbx + 2], 5
	LONG $0x44c40f66; WORD $0x023e; BYTE $0x06 // pinsrw    xmm0, word [rsi + rdi + 2], 6
	LONG $0xc0c98149; WORD $0x0001; BYTE $0x00 // or    r9, 448
	QUAD $0x07020e44c40f4266                   // pinsrw    xmm0, word [rsi + r9 + 2], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x163e             // movzx    eax, word [rsi + r15 + 22]
	LONG $0x10244489                           // mov    dword [rsp + 16], eax
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0x4cc40f66; WORD $0x040e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 4], 1
	QUAD $0x0204064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 4], 2
	QUAD $0x0304264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 4], 3
	QUAD $0x04042e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 4], 4
	LONG $0x4cc40f66; WORD $0x041e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 4], 5
	LONG $0x4cc40f66; WORD $0x043e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 4], 6
	QUAD $0x07040e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 4], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x0000808d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0x6f0f4166; BYTE $0xd9               // movdqa    xmm3, xmm9
	LONG $0x380f4166; WORD $0xdf10             // pblendvb    xmm3, xmm15, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x00000090856f0f66                   // movdqa    xmm0, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xf06f0f66                           // movdqa    xmm6, xmm0
	LONG $0x6f0f4466; BYTE $0xf0               // movdqa    xmm14, xmm0
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xca               // movd    xmm1, r10d
	LONG $0x54b70f46; WORD $0x183e             // movzx    r10d, word [rsi + r15 + 24]
	LONG $0xc40f4266; WORD $0x0e2c; BYTE $0x07 // pinsrw    xmm5, word [rsi + r9], 7
	LONG $0x750f4166; BYTE $0xeb               // pcmpeqw    xmm5, xmm11
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8ef0f66                           // pxor    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x7cc40f66; WORD $0x060e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 6], 1
	QUAD $0x0206067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 6], 2
	QUAD $0x0306267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 6], 3
	QUAD $0x04062e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 6], 4
	LONG $0x7cc40f66; WORD $0x061e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 6], 5
	LONG $0x7cc40f66; WORD $0x063e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 6], 6
	QUAD $0x07060e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 6], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01080e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 8], 1
	QUAD $0x02080644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 8], 2
	QUAD $0x03082644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 8], 3
	QUAD $0x04082e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 8], 4
	QUAD $0x05081e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 8], 5
	QUAD $0x06083e44c40f4466                   // pinsrw    xmm8, word [rsi + rdi + 8], 6
	QUAD $0x07080e44c40f4666                   // pinsrw    xmm8, word [rsi + r9 + 8], 7
	LONG $0xddf80f66                           // psubb    xmm3, xmm5
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x44b70f42; WORD $0x1a3e             // movzx    eax, word [rsi + r15 + 26]
	LONG $0x750f4566; BYTE $0xc3               // pcmpeqw    xmm8, xmm11
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x5cb70f46; WORD $0x1c3e             // movzx    r11d, word [rsi + r15 + 28]
	LONG $0x64c40f66; WORD $0x0a0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 10], 1
	QUAD $0x020a0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 10], 2
	QUAD $0x030a2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 10], 3
	QUAD $0x040a2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 10], 4
	LONG $0x64c40f66; WORD $0x0a1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 10], 5
	LONG $0x64c40f66; WORD $0x0a3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 10], 6
	QUAD $0x070a0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 10], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0x54c40f66; WORD $0x0c0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 12], 1
	QUAD $0x020c0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 12], 2
	QUAD $0x030c2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 12], 3
	QUAD $0x040c2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 12], 4
	LONG $0x54c40f66; WORD $0x0c1e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 12], 5
	LONG $0x54c40f66; WORD $0x0c3e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 12], 6
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0x54b70f42; WORD $0x1e3e             // movzx    edx, word [rsi + r15 + 30]
	LONG $0x30245489                           // mov    dword [rsp + 48], edx
	QUAD $0x070c0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 12], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x1024             // movd    xmm3, dword [rsp + 16]
	LONG $0x54b70f42; WORD $0x203e             // movzx    edx, word [rsi + r15 + 32]
	LONG $0x28245489                           // mov    dword [rsp + 40], edx
	LONG $0x4cc40f66; WORD $0x0e0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 14], 1
	QUAD $0x020e064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 14], 2
	QUAD $0x030e264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 14], 3
	QUAD $0x040e2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 14], 4
	LONG $0x4cc40f66; WORD $0x0e1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 14], 5
	LONG $0x4cc40f66; WORD $0x0e3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 14], 6
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x54b70f42; WORD $0x223e             // movzx    edx, word [rsi + r15 + 34]
	LONG $0x10245489                           // mov    dword [rsp + 16], edx
	QUAD $0x070e0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 14], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0x74c40f66; WORD $0x120e; BYTE $0x01 // pinsrw    xmm6, word [rsi + rcx + 18], 1
	QUAD $0x02120674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 18], 2
	QUAD $0x03122674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 18], 3
	QUAD $0x04122e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 18], 4
	LONG $0x74c40f66; WORD $0x121e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rbx + 18], 5
	LONG $0x74c40f66; WORD $0x123e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 18], 6
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x07120e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 18], 7
	LONG $0x750f4166; BYTE $0xf3               // pcmpeqw    xmm6, xmm11
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	QUAD $0x0000e0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 224[rbp] /* [rip + .LCPI4_14] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x6f0f4566; BYTE $0xc1               // movdqa    xmm8, xmm9
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x74b70f46; WORD $0x243e             // movzx    r14d, word [rsi + r15 + 36]
	LONG $0x7cc40f66; WORD $0x100e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 16], 1
	QUAD $0x0210067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 16], 2
	QUAD $0x0310267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 16], 3
	QUAD $0x04102e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 16], 4
	LONG $0x7cc40f66; WORD $0x101e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 16], 5
	LONG $0x7cc40f66; WORD $0x103e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 16], 6
	LONG $0x64c40f66; WORD $0x140e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 20], 1
	QUAD $0x02140664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 20], 2
	QUAD $0x03142664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 20], 3
	QUAD $0x04142e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 20], 4
	LONG $0x64c40f66; WORD $0x141e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 20], 5
	LONG $0x64c40f66; WORD $0x143e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 20], 6
	QUAD $0x07140e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 20], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x6f0f4166; BYTE $0xee               // movdqa    xmm5, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f46; WORD $0x263e             // movzx    r11d, word [rsi + r15 + 38]
	QUAD $0x07100e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 16], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x5cc40f66; WORD $0x160e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 22], 1
	QUAD $0x0216065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 22], 2
	QUAD $0x0316265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 22], 3
	QUAD $0x04162e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 22], 4
	LONG $0x5cc40f66; WORD $0x161e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 22], 5
	LONG $0x5cc40f66; WORD $0x163e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 22], 6
	QUAD $0x07160e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 22], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x54c40f66; WORD $0x180e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 24], 1
	QUAD $0x02180654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 24], 2
	QUAD $0x03182654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 24], 3
	QUAD $0x04182e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 24], 4
	LONG $0x54c40f66; WORD $0x181e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 24], 5
	LONG $0x54c40f66; WORD $0x183e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 24], 6
	QUAD $0x07180e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 24], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x0000a0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0x6f0f4566; BYTE $0xf2               // movdqa    xmm14, xmm10
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x3024             // movd    xmm3, dword [rsp + 48]
	LONG $0x44b70f42; WORD $0x283e             // movzx    eax, word [rsi + r15 + 40]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4466; BYTE $0xf5               // por    xmm14, xmm5
	QUAD $0x0000b08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0x6f0f4566; BYTE $0xe9               // movdqa    xmm13, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x7c6e0f66; WORD $0x2824             // movd    xmm7, dword [rsp + 40]
	LONG $0x54b70f46; WORD $0x2a3e             // movzx    r10d, word [rsi + r15 + 42]
	LONG $0x4cc40f66; WORD $0x1a0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 26], 1
	QUAD $0x021a064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 26], 2
	QUAD $0x031a264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 26], 3
	QUAD $0x041a2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 26], 4
	LONG $0x4cc40f66; WORD $0x1a1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 26], 5
	LONG $0x4cc40f66; WORD $0x1a3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 26], 6
	QUAD $0x071a0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 26], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x64c40f66; WORD $0x1c0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 28], 1
	QUAD $0x021c0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 28], 2
	QUAD $0x031c2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 28], 3
	QUAD $0x041c2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 28], 4
	LONG $0x64c40f66; WORD $0x1c1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 28], 5
	LONG $0x64c40f66; WORD $0x1c3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 28], 6
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x546e0f66; WORD $0x1024             // movd    xmm2, dword [rsp + 16]
	LONG $0x54b70f42; WORD $0x2c3e             // movzx    edx, word [rsi + r15 + 44]
	LONG $0x28245489                           // mov    dword [rsp + 40], edx
	QUAD $0x071c0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 28], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0x54b70f42; WORD $0x2e3e             // movzx    edx, word [rsi + r15 + 46]
	LONG $0x10245489                           // mov    dword [rsp + 16], edx
	LONG $0x5cc40f66; WORD $0x1e0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 30], 1
	QUAD $0x021e065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 30], 2
	QUAD $0x031e265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 30], 3
	QUAD $0x041e2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 30], 4
	LONG $0x5cc40f66; WORD $0x1e1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 30], 5
	LONG $0x5cc40f66; WORD $0x1e3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 30], 6
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x5cb70f46; WORD $0x303e             // movzx    r11d, word [rsi + r15 + 48]
	QUAD $0x071e0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 30], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0x54c40f66; WORD $0x220e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 34], 1
	QUAD $0x02220654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 34], 2
	QUAD $0x03222654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 34], 3
	QUAD $0x04222e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 34], 4
	LONG $0x54c40f66; WORD $0x221e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 34], 5
	LONG $0x54c40f66; WORD $0x223e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 34], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07220e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 34], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xf6               // por    xmm6, xmm14
	QUAD $0x0000e0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 224[rbp] /* [rip + .LCPI4_14] */
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	QUAD $0x000080856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x74b70f46; WORD $0x323e             // movzx    r14d, word [rsi + r15 + 50]
	LONG $0x7cc40f66; WORD $0x200e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 32], 1
	QUAD $0x0220067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 32], 2
	QUAD $0x0320267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 32], 3
	QUAD $0x04202e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 32], 4
	LONG $0x7cc40f66; WORD $0x201e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 32], 5
	LONG $0x7cc40f66; WORD $0x203e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 32], 6
	LONG $0x64c40f66; WORD $0x240e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 36], 1
	QUAD $0x02240664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 36], 2
	QUAD $0x03242664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 36], 3
	QUAD $0x04242e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 36], 4
	LONG $0x64c40f66; WORD $0x241e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 36], 5
	LONG $0x64c40f66; WORD $0x243e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 36], 6
	QUAD $0x07240e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 36], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4466; BYTE $0xee               // por    xmm13, xmm6
	QUAD $0x00000090b56f0f66                   // movdqa    xmm6, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x54b70f42; WORD $0x343e             // movzx    edx, word [rsi + r15 + 52]
	QUAD $0x07200e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 32], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x4cc40f66; WORD $0x260e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 38], 1
	QUAD $0x0226064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 38], 2
	QUAD $0x0326264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 38], 3
	QUAD $0x04262e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 38], 4
	LONG $0x4cc40f66; WORD $0x261e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 38], 5
	LONG $0x4cc40f66; WORD $0x263e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 38], 6
	QUAD $0x07260e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 38], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x54c40f66; WORD $0x280e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 40], 1
	QUAD $0x02280654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 40], 2
	QUAD $0x03282654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 40], 3
	QUAD $0x04282e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 40], 4
	LONG $0x54c40f66; WORD $0x281e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 40], 5
	LONG $0x54c40f66; WORD $0x283e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 40], 6
	QUAD $0x07280e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 40], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	LONG $0x6f0f4166; BYTE $0xea               // movdqa    xmm5, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x4c6e0f66; WORD $0x2824             // movd    xmm1, dword [rsp + 40]
	LONG $0x54b70f46; WORD $0x363e             // movzx    r10d, word [rsi + r15 + 54]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6f0f4166; BYTE $0xf1               // movdqa    xmm6, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x646e0f66; WORD $0x1024             // movd    xmm4, dword [rsp + 16]
	LONG $0x44b70f42; WORD $0x383e             // movzx    eax, word [rsi + r15 + 56]
	LONG $0x5cc40f66; WORD $0x2a0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 42], 1
	QUAD $0x022a065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 42], 2
	QUAD $0x032a265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 42], 3
	QUAD $0x042a2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 42], 4
	LONG $0x5cc40f66; WORD $0x2a1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 42], 5
	LONG $0x5cc40f66; WORD $0x2a3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 42], 6
	QUAD $0x072a0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 42], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x4cc40f66; WORD $0x2c0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 44], 1
	QUAD $0x022c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 44], 2
	QUAD $0x032c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 44], 3
	QUAD $0x042c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 44], 4
	LONG $0x4cc40f66; WORD $0x2c1e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 44], 5
	LONG $0x4cc40f66; WORD $0x2c3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 44], 6
	LONG $0xeb0f4166; BYTE $0xe8               // por    xmm5, xmm8
	QUAD $0x0000c08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 192[rbp] /* [rip + .LCPI4_12] */
	LONG $0x6f0f4166; BYTE $0xd1               // movdqa    xmm2, xmm9
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd710             // pblendvb    xmm2, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x5cb70f46; WORD $0x3a3e             // movzx    r11d, word [rsi + r15 + 58]
	QUAD $0x072c0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 44], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0x0000d0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 208[rbp] /* [rip + .LCPI4_13] */
	LONG $0x6f0f4166; BYTE $0xf2               // movdqa    xmm6, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	LONG $0x74b70f46; WORD $0x3c3e             // movzx    r14d, word [rsi + r15 + 60]
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0x64c40f66; WORD $0x2e0e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 46], 1
	QUAD $0x022e0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 46], 2
	QUAD $0x032e2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 46], 3
	QUAD $0x042e2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 46], 4
	LONG $0x64c40f66; WORD $0x2e1e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rbx + 46], 5
	LONG $0x64c40f66; WORD $0x2e3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 46], 6
	QUAD $0x072e0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 46], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6f0f4566; BYTE $0xc6               // movdqa    xmm8, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x4cc40f66; WORD $0x320e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 50], 1
	QUAD $0x0232064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 50], 2
	QUAD $0x0332264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 50], 3
	QUAD $0x04322e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x321e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 50], 5
	LONG $0x4cc40f66; WORD $0x323e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 50], 6
	QUAD $0x07320e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 50], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	QUAD $0x00000080a56f0f66                   // movdqa    xmm4, oword 128[rbp] /* [rip + .LCPI4_8] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x7cc40f66; WORD $0x300e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 48], 1
	QUAD $0x0230067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 48], 2
	QUAD $0x0330267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 48], 3
	QUAD $0x04302e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 48], 4
	LONG $0x7cc40f66; WORD $0x301e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rbx + 48], 5
	LONG $0x7cc40f66; WORD $0x303e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 48], 6
	QUAD $0x07300e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 48], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI4_22] */
	LONG $0x54c40f66; WORD $0x340e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 52], 1
	QUAD $0x02340654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 52], 2
	QUAD $0x03342654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 52], 3
	QUAD $0x04342e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 52], 4
	LONG $0x54c40f66; WORD $0x341e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 52], 5
	LONG $0x54c40f66; WORD $0x343e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 52], 6
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x07340e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 52], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0x5cc40f66; WORD $0x360e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 54], 1
	QUAD $0x0236065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 54], 2
	QUAD $0x0336265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 54], 3
	QUAD $0x04362e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 54], 4
	LONG $0x5cc40f66; WORD $0x361e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 54], 5
	LONG $0x5cc40f66; WORD $0x363e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 54], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x07360e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 54], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0x4cc40f66; WORD $0x380e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 56], 1
	QUAD $0x0238064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 56], 2
	QUAD $0x0338264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 56], 3
	QUAD $0x04382e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 56], 4
	LONG $0x4cc40f66; WORD $0x381e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rbx + 56], 5
	LONG $0x4cc40f66; WORD $0x383e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 56], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07380e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 56], 7
	LONG $0xe7f80f66                           // psubb    xmm4, xmm7
	QUAD $0x00000090ad6f0f66                   // movdqa    xmm5, oword 144[rbp] /* [rip + .LCPI4_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	QUAD $0x000000a0b56f0f66                   // movdqa    xmm6, oword 160[rbp] /* [rip + .LCPI4_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0x54c40f66; WORD $0x3a0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 58], 1
	QUAD $0x023a0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 58], 2
	QUAD $0x033a2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 58], 3
	QUAD $0x043a2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 58], 4
	LONG $0x54c40f66; WORD $0x3a1e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rbx + 58], 5
	LONG $0x54c40f66; WORD $0x3a3e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 58], 6
	QUAD $0x073a0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 58], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xde               // movd    xmm3, r14d
	LONG $0x5cc40f66; WORD $0x3c0e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 60], 1
	QUAD $0x023c065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 60], 2
	QUAD $0x033c265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 60], 3
	QUAD $0x043c2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 60], 4
	LONG $0x5cc40f66; WORD $0x3c1e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rbx + 60], 5
	LONG $0x5cc40f66; WORD $0x3c3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 60], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x073c0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 60], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI4_11] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0x6f0f4166; BYTE $0xc9               // movdqa    xmm1, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xcf10             // pblendvb    xmm1, xmm15, xmm0
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xd710             // pblendvb    xmm10, xmm15, xmm0
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x44b70f42; WORD $0x3e3e             // movzx    eax, word [rsi + r15 + 62]
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44c40f66; WORD $0x3e0e; BYTE $0x01 // pinsrw    xmm0, word [rsi + rcx + 62], 1
	QUAD $0x023e0644c40f4266                   // pinsrw    xmm0, word [rsi + r8 + 62], 2
	QUAD $0x033e2644c40f4266                   // pinsrw    xmm0, word [rsi + r12 + 62], 3
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x043e2e44c40f4266                   // pinsrw    xmm0, word [rsi + r13 + 62], 4
	LONG $0x44c40f66; WORD $0x3e1e; BYTE $0x05 // pinsrw    xmm0, word [rsi + rbx + 62], 5
	LONG $0x44c40f66; WORD $0x3e3e; BYTE $0x06 // pinsrw    xmm0, word [rsi + rdi + 62], 6
	QUAD $0x073e0e44c40f4266                   // pinsrw    xmm0, word [rsi + r9 + 62], 7
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xeb0f4466; BYTE $0xd6               // por    xmm10, xmm6
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0xeb0f4566; BYTE $0xf2               // por    xmm14, xmm10
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x6c0f4166; BYTE $0xc5               // punpcklqdq    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x6c0f4166; BYTE $0xd6               // punpcklqdq    xmm2, xmm14
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI4_15] */
	LONG $0x00380f66; BYTE $0xd3               // pshufb    xmm2, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0x600f4566; BYTE $0xc6               // punpcklbw    xmm8, xmm14
	LONG $0x600f4566; BYTE $0xe5               // punpcklbw    xmm12, xmm13
	LONG $0x610f4566; BYTE $0xe0               // punpcklwd    xmm12, xmm8
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	LONG $0x7f0f44f3; WORD $0x8824             // movdqu    oword [rax + 4*rcx], xmm12
	LONG $0x447f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm0
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB4_192
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	LONG $0x24543b4c; BYTE $0x20               // cmp    r10, qword [rsp + 32]
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	LONG $0x246c8b44; BYTE $0x40               // mov    r13d, dword [rsp + 64]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	JNE  LBB4_108
	JMP  LBB4_111

DATA LCDATA4<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA4<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA4<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA4<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA4<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA4<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA4<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA4<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA4<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA4<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA4<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA4<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA4<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA4<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA4<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA4<>+0x080(SB)/8, $0x0202020202020202
DATA LCDATA4<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x090(SB)/8, $0x0404040404040404
DATA LCDATA4<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0a0(SB)/8, $0x0808080808080808
DATA LCDATA4<>+0x0a8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0b0(SB)/8, $0x1010101010101010
DATA LCDATA4<>+0x0b8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0c0(SB)/8, $0x2020202020202020
DATA LCDATA4<>+0x0c8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0d0(SB)/8, $0x4040404040404040
DATA LCDATA4<>+0x0d8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0e0(SB)/8, $0x8080808080808080
DATA LCDATA4<>+0x0e8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x0f0(SB)/8, $0x0f070e060d050c04
DATA LCDATA4<>+0x0f8(SB)/8, $0x0000000000000000
DATA LCDATA4<>+0x100(SB)/8, $0x0202020202020202
DATA LCDATA4<>+0x108(SB)/8, $0x0202020202020202
DATA LCDATA4<>+0x110(SB)/8, $0x0404040404040404
DATA LCDATA4<>+0x118(SB)/8, $0x0404040404040404
DATA LCDATA4<>+0x120(SB)/8, $0x0808080808080808
DATA LCDATA4<>+0x128(SB)/8, $0x0808080808080808
DATA LCDATA4<>+0x130(SB)/8, $0x1010101010101010
DATA LCDATA4<>+0x138(SB)/8, $0x1010101010101010
DATA LCDATA4<>+0x140(SB)/8, $0x2020202020202020
DATA LCDATA4<>+0x148(SB)/8, $0x2020202020202020
DATA LCDATA4<>+0x150(SB)/8, $0x4040404040404040
DATA LCDATA4<>+0x158(SB)/8, $0x4040404040404040
DATA LCDATA4<>+0x160(SB)/8, $0xffffffffffffffff
DATA LCDATA4<>+0x168(SB)/8, $0xffffffffffffffff
GLOBL LCDATA4<>(SB), 8, $368

TEXT ·_comparison_not_equal_scalar_arr_sse4(SB), $312-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 288(SP)
	LEAQ LCDATA4<>(SB), BP

	WORD $0x894d; BYTE $0xc7     // mov    r15, r8
	LONG $0x244c8948; BYTE $0x08 // mov    qword [rsp + 8], rcx
	WORD $0x8949; BYTE $0xd6     // mov    r14, rdx
	WORD $0xff83; BYTE $0x06     // cmp    edi, 6
	JG   LBB5_27
	WORD $0xff83; BYTE $0x03     // cmp    edi, 3
	JLE  LBB5_2
	WORD $0xff83; BYTE $0x04     // cmp    edi, 4
	JE   LBB5_100
	WORD $0xff83; BYTE $0x05     // cmp    edi, 5
	JE   LBB5_123
	WORD $0xff83; BYTE $0x06     // cmp    edi, 6
	JNE  LBB5_198
	WORD $0x8b44; BYTE $0x1e     // mov    r11d, dword [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_17
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24548b48; BYTE $0x08 // mov    rdx, qword [rsp + 8]

LBB5_15:
	WORD $0x3b45; BYTE $0x1e                   // cmp    r11d, dword [r14]
	LONG $0x04768d4d                           // lea    r14, [r14 + 4]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f44; BYTE $0x32               // movzx    r8d, byte [rdx + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x323c8840                           // mov    byte [rdx + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_15
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_17:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20ff8349         // cmp    r15, 32
	JL   LBB5_21
	QUAD $0x000000a024bc894c // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	QUAD $0x000000a82494894c // mov    qword [rsp + 168], r10

LBB5_19:
	LONG $0x7c5e3b45                           // cmp    r11d, dword [r14 + 124]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x785e3b45                           // cmp    r11d, dword [r14 + 120]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x745e3b45                           // cmp    r11d, dword [r14 + 116]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x705e3b45                           // cmp    r11d, dword [r14 + 112]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x6c5e3b45                           // cmp    r11d, dword [r14 + 108]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x685e3b45                           // cmp    r11d, dword [r14 + 104]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x645e3b45                           // cmp    r11d, dword [r14 + 100]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x5c5e3b45                           // cmp    r11d, dword [r14 + 92]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x585e3b45                           // cmp    r11d, dword [r14 + 88]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x545e3b45                           // cmp    r11d, dword [r14 + 84]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x505e3b45                           // cmp    r11d, dword [r14 + 80]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x4c5e3b45                           // cmp    r11d, dword [r14 + 76]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x485e3b45                           // cmp    r11d, dword [r14 + 72]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x445e3b45                           // cmp    r11d, dword [r14 + 68]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x3c5e3b45                           // cmp    r11d, dword [r14 + 60]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x385e3b45                           // cmp    r11d, dword [r14 + 56]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x345e3b45                           // cmp    r11d, dword [r14 + 52]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x305e3b45                           // cmp    r11d, dword [r14 + 48]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x2c5e3b45                           // cmp    r11d, dword [r14 + 44]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x285e3b45                           // cmp    r11d, dword [r14 + 40]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x245e3b45                           // cmp    r11d, dword [r14 + 36]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x1c5e3b45                           // cmp    r11d, dword [r14 + 28]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x185e3b45                           // cmp    r11d, dword [r14 + 24]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x145e3b45                           // cmp    r11d, dword [r14 + 20]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x105e3b45                           // cmp    r11d, dword [r14 + 16]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x0c5e3b45                           // cmp    r11d, dword [r14 + 12]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x085e3b45                           // cmp    r11d, dword [r14 + 8]
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x3b45; BYTE $0x1e                   // cmp    r11d, dword [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x045e3b45                           // cmp    r11d, dword [r14 + 4]
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	LONG $0xd6950f41                           // setne    r14b
	LONG $0x245c3b45; BYTE $0x20               // cmp    r11d, dword [r12 + 32]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x245c3b45; BYTE $0x40               // cmp    r11d, dword [r12 + 64]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x245c3b45; BYTE $0x60               // cmp    r11d, dword [r12 + 96]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	QUAD $0x000000c024b40244                   // add    r14b, byte [rsp + 192]
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0845; BYTE $0xf7                   // or    r15b, r14b
	WORD $0x894d; BYTE $0xe6                   // mov    r14, r12
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x247c8b4c; BYTE $0x08               // mov    r15, qword [rsp + 8]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xca08                               // or    dl, cl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xd008                               // or    al, dl
	WORD $0x8841; BYTE $0x07                   // mov    byte [r15], al
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000b024b40240                   // add    sil, byte [rsp + 176]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01478845                           // mov    byte [r15 + 1], r8b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x02478841                           // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x70244402                           // add    al, byte [rsp + 112]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x80ee8349                           // sub    r14, -128
	LONG $0x04c78349                           // add    r15, 4
	LONG $0x247c894c; BYTE $0x08               // mov    qword [rsp + 8], r15
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_19
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]

LBB5_21:
	LONG $0x05e2c149             // shl    r10, 5
	WORD $0x394d; BYTE $0xfa     // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8     // mov    r8, r15
	WORD $0x294d; BYTE $0xd0     // sub    r8, r10
	WORD $0xf749; BYTE $0xd2     // not    r10
	WORD $0x014d; BYTE $0xfa     // add    r10, r15
	JE   LBB5_23
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xff31                 // xor    edi, edi
	LONG $0x247c8b4c; BYTE $0x08 // mov    r15, qword [rsp + 8]

LBB5_144:
	WORD $0x3b45; BYTE $0x1e     // cmp    r11d, dword [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc220                 // and    dl, al
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	LONG $0x37148841             // mov    byte [r15 + rsi], dl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x045e3b45             // cmp    r11d, dword [r14 + 4]
	LONG $0x08768d4d             // lea    r14, [r14 + 8]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd030                 // xor    al, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x3949; BYTE $0xf9     // cmp    r9, rdi
	JNE  LBB5_144
	JMP  LBB5_24

LBB5_27:
	WORD $0xff83; BYTE $0x08     // cmp    edi, 8
	JLE  LBB5_28
	WORD $0xff83; BYTE $0x09     // cmp    edi, 9
	JE   LBB5_159
	WORD $0xff83; BYTE $0x0b     // cmp    edi, 11
	JE   LBB5_171
	WORD $0xff83; BYTE $0x0c     // cmp    edi, 12
	JNE  LBB5_198
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	LONG $0x06100ff2             // movsd    xmm0, qword [rsi]
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_50
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]

LBB5_48:
	LONG $0x2e0f4166; BYTE $0x06               // ucomisd    xmm0, qword [r14]
	LONG $0x08768d4d                           // lea    r14, [r14 + 8]
	WORD $0x9a0f; BYTE $0xd1                   // setp    cl
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xca08                               // or    dl, cl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x1cb60f41; BYTE $0x30               // movzx    ebx, byte [r8 + rsi]
	WORD $0xda30                               // xor    dl, bl
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3040; BYTE $0xdf                   // xor    dil, bl
	LONG $0x303c8841                           // mov    byte [r8 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_48
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_50:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20ff8349         // cmp    r15, 32
	JL   LBB5_54
	QUAD $0x000000a024bc894c // mov    qword [rsp + 160], r15
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB5_52:
	WORD $0x894c; BYTE $0xf2                   // mov    rdx, r14
	LONG $0x2e0f4166; BYTE $0x06               // ucomisd    xmm0, qword [r14]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x2e0f4166; WORD $0x0846             // ucomisd    xmm0, qword [r14 + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x2e0f4166; WORD $0x1046             // ucomisd    xmm0, qword [r14 + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x2e0f4166; WORD $0x1846             // ucomisd    xmm0, qword [r14 + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x2e0f4166; WORD $0x2046             // ucomisd    xmm0, qword [r14 + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x10244c88                           // mov    byte [rsp + 16], cl
	LONG $0x2e0f4166; WORD $0x2846             // ucomisd    xmm0, qword [r14 + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2e0f4166; WORD $0x3046             // ucomisd    xmm0, qword [r14 + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x2e0f4166; WORD $0x3846             // ucomisd    xmm0, qword [r14 + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x2e0f4166; WORD $0x4046             // ucomisd    xmm0, qword [r14 + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x2e0f4166; WORD $0x4846             // ucomisd    xmm0, qword [r14 + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x2e0f4166; WORD $0x5046             // ucomisd    xmm0, qword [r14 + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x50245c88                           // mov    byte [rsp + 80], bl
	LONG $0x2e0f4166; WORD $0x5846             // ucomisd    xmm0, qword [r14 + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x48245c88                           // mov    byte [rsp + 72], bl
	LONG $0x2e0f4166; WORD $0x6046             // ucomisd    xmm0, qword [r14 + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x68245c88                           // mov    byte [rsp + 104], bl
	LONG $0x2e0f4166; WORD $0x6846             // ucomisd    xmm0, qword [r14 + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	LONG $0x60245c88                           // mov    byte [rsp + 96], bl
	LONG $0x2e0f4166; WORD $0x7046             // ucomisd    xmm0, qword [r14 + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd5950f41                           // setne    r13b
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2e0f4166; WORD $0x7846             // ucomisd    xmm0, qword [r14 + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	QUAD $0x000080862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 128]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	QUAD $0x000088862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 136]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	QUAD $0x000090862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 144]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc308                               // or    bl, al
	QUAD $0x000098862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 152]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	QUAD $0x0000a0862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 160]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x98248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 152], cl
	QUAD $0x0000a8862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 168]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	QUAD $0x0000b0862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 176]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	QUAD $0x0000b8862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 184]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	QUAD $0x0000c0862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 192]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x90248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 144], cl
	QUAD $0x0000c8862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 200]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x0000d0862e0f4166; BYTE $0x00       // ucomisd    xmm0, qword [r14 + 208]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xa8248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 168], cl
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f40                           // setne    sil
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	LONG $0x245c0244; BYTE $0x18               // add    r11b, byte [rsp + 24]
	LONG $0x05e1c041                           // shl    r9b, 5
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0x0844; BYTE $0xc8                   // or    al, r9b
	WORD $0x8941; BYTE $0xc1                   // mov    r9d, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	WORD $0x8941; BYTE $0xc3                   // mov    r11d, eax
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xc900                               // add    cl, cl
	LONG $0x30244c02                           // add    cl, byte [rsp + 48]
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xc8                   // or    al, r9b
	WORD $0x8941; BYTE $0xc1                   // mov    r9d, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	WORD $0x8941; BYTE $0xc3                   // mov    r11d, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	LONG $0x10244488                           // mov    byte [rsp + 16], al
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0x8941; BYTE $0xc3                   // mov    r11d, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e5c041                           // shl    r13b, 6
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xc900                               // add    cl, cl
	LONG $0x78244c02                           // add    cl, byte [rsp + 120]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0xcb08                               // or    bl, cl
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	QUAD $0x00000098248cb60f                   // movzx    ecx, byte [rsp + 152]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	LONG $0x244c0a44; BYTE $0x10               // or    r9b, byte [rsp + 16]
	QUAD $0x000000b0249cb60f                   // movzx    ebx, byte [rsp + 176]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e4c041                           // shl    r12b, 6
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	WORD $0x0845; BYTE $0xdd                   // or    r13b, r11b
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xe0                   // or    r8b, r12b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	QUAD $0x0000009024bc0244                   // add    r15b, byte [rsp + 144]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xfe                   // or    r14b, r15b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xf2                   // or    r10b, r14b
	QUAD $0x000000c0248cb60f                   // movzx    ecx, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xd1                   // or    cl, r10b
	WORD $0x8844; BYTE $0x08                   // mov    byte [rax], r9b
	QUAD $0x000000a8249cb60f                   // movzx    ebx, byte [rsp + 168]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x02408844                           // mov    byte [rax + 2], r8b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x00b28d4c; WORD $0x0001; BYTE $0x00 // lea    r14, [rdx + 256]
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24448948; BYTE $0x08               // mov    qword [rsp + 8], rax
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB5_52
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]

LBB5_54:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_194
	WORD $0xff31             // xor    edi, edi
	JMP  LBB5_196

LBB5_2:
	WORD $0xff83; BYTE $0x02     // cmp    edi, 2
	JE   LBB5_57
	WORD $0xff83; BYTE $0x03     // cmp    edi, 3
	JNE  LBB5_198
	WORD $0x068a                 // mov    al, byte [rsi]
	LONG $0x10244488             // mov    byte [rsp + 16], al
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_8
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24548b48; BYTE $0x08 // mov    rdx, qword [rsp + 8]

LBB5_6:
	LONG $0x244cb60f; BYTE $0x10   // movzx    ecx, byte [rsp + 16]
	WORD $0x3a41; BYTE $0x0e       // cmp    cl, byte [r14]
	LONG $0x01768d4d               // lea    r14, [r14 + 1]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	WORD $0xdbf6                   // neg    bl
	LONG $0x07708d48               // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xf0490f48               // cmovns    rsi, rax
	LONG $0x03fec148               // sar    rsi, 3
	LONG $0x0cb60f44; BYTE $0x32   // movzx    r9d, byte [rdx + rsi]
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	QUAD $0x00000000f5048d44       // lea    r8d, [8*rsi]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1       // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2040; BYTE $0xdf       // and    dil, bl
	WORD $0x3044; BYTE $0xcf       // xor    dil, r9b
	LONG $0x323c8840               // mov    byte [rdx + rsi], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB5_6
	LONG $0x24448348; WORD $0x0108 // add    qword [rsp + 8], 1

LBB5_8:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20ff8349             // cmp    r15, 32
	JL   LBB5_9
	LONG $0x10fa8349             // cmp    r10, 16
	QUAD $0x000000a024bc894c     // mov    qword [rsp + 160], r15
	QUAD $0x000001082494894c     // mov    qword [rsp + 264], r10
	JB   LBB5_83
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x014c; BYTE $0xf0     // add    rax, r14
	LONG $0x24443948; BYTE $0x08 // cmp    qword [rsp + 8], rax
	JAE  LBB5_86
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB5_86

LBB5_83:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x24448948; BYTE $0x50 // mov    qword [rsp + 80], rax

LBB5_89:
	QUAD $0x000000e824942b4c // sub    r10, qword [rsp + 232]
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB5_90:
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	LONG $0x1f463a41                           // cmp    al, byte [r14 + 31]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x1e463a41                           // cmp    al, byte [r14 + 30]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x1d463a41                           // cmp    al, byte [r14 + 29]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x1c463a41                           // cmp    al, byte [r14 + 28]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x1b463a41                           // cmp    al, byte [r14 + 27]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x1a463a41                           // cmp    al, byte [r14 + 26]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x19463a41                           // cmp    al, byte [r14 + 25]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x17463a41                           // cmp    al, byte [r14 + 23]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x16463a41                           // cmp    al, byte [r14 + 22]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x15463a41                           // cmp    al, byte [r14 + 21]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x14463a41                           // cmp    al, byte [r14 + 20]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x13463a41                           // cmp    al, byte [r14 + 19]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x12463a41                           // cmp    al, byte [r14 + 18]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x11463a41                           // cmp    al, byte [r14 + 17]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x0f463a41                           // cmp    al, byte [r14 + 15]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x0e463a41                           // cmp    al, byte [r14 + 14]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x0d463a41                           // cmp    al, byte [r14 + 13]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x0c463a41                           // cmp    al, byte [r14 + 12]
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x0b463a41                           // cmp    al, byte [r14 + 11]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x0a463a41                           // cmp    al, byte [r14 + 10]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x09463a41                           // cmp    al, byte [r14 + 9]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x07463a41                           // cmp    al, byte [r14 + 7]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x06463a41                           // cmp    al, byte [r14 + 6]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x05463a41                           // cmp    al, byte [r14 + 5]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x04463a41                           // cmp    al, byte [r14 + 4]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x03463a41                           // cmp    al, byte [r14 + 3]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x02463a41                           // cmp    al, byte [r14 + 2]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x3a41; BYTE $0x06                   // cmp    al, byte [r14]
	QUAD $0x000000a82494950f                   // setne    byte [rsp + 168]
	LONG $0x01463a41                           // cmp    al, byte [r14 + 1]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x08463a41                           // cmp    al, byte [r14 + 8]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x10463a41                           // cmp    al, byte [r14 + 16]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x18463a41                           // cmp    al, byte [r14 + 24]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	WORD $0xc900                               // add    cl, cl
	LONG $0xa8248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 168]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xca08                               // or    dl, cl
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x05e1c041                           // shl    r9b, 5
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0844; BYTE $0xce                   // or    sil, r9b
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	WORD $0x8840; BYTE $0x30                   // mov    byte [rax], sil
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000c0249c0244                   // add    r11b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	QUAD $0x00000098248cb60f                   // movzx    ecx, byte [rsp + 152]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0845; BYTE $0xea                   // or    r10b, r13b
	LONG $0x01508844                           // mov    byte [rax + 1], r10b
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xc900                               // add    cl, cl
	LONG $0x90248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 144]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	WORD $0x4888; BYTE $0x02                   // mov    byte [rax + 2], cl
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xc900                               // add    cl, cl
	LONG $0x88248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 136]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	WORD $0x4888; BYTE $0x03                   // mov    byte [rax + 3], cl
	LONG $0x20c68349                           // add    r14, 32
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24448948; BYTE $0x50               // mov    qword [rsp + 80], rax
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB5_90
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	JMP  LBB5_92

LBB5_28:
	WORD $0xff83; BYTE $0x07     // cmp    edi, 7
	JE   LBB5_145
	WORD $0xff83; BYTE $0x08     // cmp    edi, 8
	JNE  LBB5_198
	WORD $0x8b4c; BYTE $0x1e     // mov    r11, qword [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_34
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]

LBB5_32:
	WORD $0x3b4d; BYTE $0x1e                   // cmp    r11, qword [r14]
	LONG $0x08768d4d                           // lea    r14, [r14 + 8]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x1cb60f41; BYTE $0x30               // movzx    ebx, byte [r8 + rsi]
	WORD $0xda30                               // xor    dl, bl
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3040; BYTE $0xdf                   // xor    dil, bl
	LONG $0x303c8841                           // mov    byte [r8 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_32
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_34:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20ff8349         // cmp    r15, 32
	JL   LBB5_38
	QUAD $0x000000a024bc894c // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	QUAD $0x000000a82494894c // mov    qword [rsp + 168], r10

LBB5_36:
	LONG $0xf89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 248]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xf09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 240]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0xe89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 232]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0xe09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 224]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0xd89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 216]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0xd09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 208]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0xc89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 200]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0xb89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 184]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0xb09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 176]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0xa89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 168]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0xa09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 160]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x989e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 152]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x909e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 144]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x889e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 136]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x785e3b4d                           // cmp    r11, qword [r14 + 120]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x705e3b4d                           // cmp    r11, qword [r14 + 112]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x685e3b4d                           // cmp    r11, qword [r14 + 104]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x605e3b4d                           // cmp    r11, qword [r14 + 96]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x585e3b4d                           // cmp    r11, qword [r14 + 88]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x505e3b4d                           // cmp    r11, qword [r14 + 80]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x485e3b4d                           // cmp    r11, qword [r14 + 72]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x385e3b4d                           // cmp    r11, qword [r14 + 56]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x305e3b4d                           // cmp    r11, qword [r14 + 48]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x285e3b4d                           // cmp    r11, qword [r14 + 40]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x205e3b4d                           // cmp    r11, qword [r14 + 32]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x185e3b4d                           // cmp    r11, qword [r14 + 24]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x105e3b4d                           // cmp    r11, qword [r14 + 16]
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x3b4d; BYTE $0x1e                   // cmp    r11, qword [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x085e3b4d                           // cmp    r11, qword [r14 + 8]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x405e3b4d                           // cmp    r11, qword [r14 + 64]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x809e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 128]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0xc09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 192]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	QUAD $0x000000c024ac0244                   // add    r13b, byte [rsp + 192]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xec                   // or    r12b, r13b
	LONG $0x246c8b4c; BYTE $0x08               // mov    r13, qword [rsp + 8]
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xe7                   // or    r15b, r12b
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0844; BYTE $0xfa                   // or    dl, r15b
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x00458841                           // mov    byte [r13], al
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000b024b40240                   // add    sil, byte [rsp + 176]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01458845                           // mov    byte [r13 + 1], r8b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x02458841                           // mov    byte [r13 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x70244402                           // add    al, byte [rsp + 112]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x03458841                           // mov    byte [r13 + 3], al
	LONG $0x00c68149; WORD $0x0001; BYTE $0x00 // add    r14, 256
	LONG $0x04c58349                           // add    r13, 4
	LONG $0x246c894c; BYTE $0x08               // mov    qword [rsp + 8], r13
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_36
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]

LBB5_38:
	LONG $0x05e2c149             // shl    r10, 5
	WORD $0x394d; BYTE $0xfa     // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8     // mov    r8, r15
	WORD $0x294d; BYTE $0xd0     // sub    r8, r10
	WORD $0xf749; BYTE $0xd2     // not    r10
	WORD $0x014d; BYTE $0xfa     // add    r10, r15
	JE   LBB5_40
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xff31                 // xor    edi, edi
	LONG $0x247c8b4c; BYTE $0x08 // mov    r15, qword [rsp + 8]

LBB5_158:
	WORD $0x3b4d; BYTE $0x1e     // cmp    r11, qword [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc220                 // and    dl, al
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	LONG $0x37148841             // mov    byte [r15 + rsi], dl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x085e3b4d             // cmp    r11, qword [r14 + 8]
	LONG $0x10768d4d             // lea    r14, [r14 + 16]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd030                 // xor    al, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x3949; BYTE $0xf9     // cmp    r9, rdi
	JNE  LBB5_158
	JMP  LBB5_41

LBB5_57:
	WORD $0x068a                 // mov    al, byte [rsi]
	LONG $0x40244488             // mov    byte [rsp + 64], al
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_61
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24548b48; BYTE $0x08 // mov    rdx, qword [rsp + 8]

LBB5_59:
	LONG $0x244cb60f; BYTE $0x40   // movzx    ecx, byte [rsp + 64]
	WORD $0x3a41; BYTE $0x0e       // cmp    cl, byte [r14]
	LONG $0x01768d4d               // lea    r14, [r14 + 1]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	WORD $0xdbf6                   // neg    bl
	LONG $0x07708d48               // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xf0490f48               // cmovns    rsi, rax
	LONG $0x03fec148               // sar    rsi, 3
	LONG $0x0cb60f44; BYTE $0x32   // movzx    r9d, byte [rdx + rsi]
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	QUAD $0x00000000f5048d44       // lea    r8d, [8*rsi]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1       // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2040; BYTE $0xdf       // and    dil, bl
	WORD $0x3044; BYTE $0xcf       // xor    dil, r9b
	LONG $0x323c8840               // mov    byte [rdx + rsi], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB5_59
	LONG $0x24448348; WORD $0x0108 // add    qword [rsp + 8], 1

LBB5_61:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20ff8349             // cmp    r15, 32
	JL   LBB5_62
	LONG $0x10fa8349             // cmp    r10, 16
	QUAD $0x000000a024bc894c     // mov    qword [rsp + 160], r15
	QUAD $0x000001082494894c     // mov    qword [rsp + 264], r10
	JB   LBB5_64
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x014c; BYTE $0xf0     // add    rax, r14
	LONG $0x24443948; BYTE $0x08 // cmp    qword [rsp + 8], rax
	JAE  LBB5_67
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB5_67

LBB5_64:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax

LBB5_70:
	QUAD $0x000000e824942b4c // sub    r10, qword [rsp + 232]
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB5_71:
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	LONG $0x1f463a41                           // cmp    al, byte [r14 + 31]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x1e463a41                           // cmp    al, byte [r14 + 30]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x1d463a41                           // cmp    al, byte [r14 + 29]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x1c463a41                           // cmp    al, byte [r14 + 28]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x1b463a41                           // cmp    al, byte [r14 + 27]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x1a463a41                           // cmp    al, byte [r14 + 26]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x19463a41                           // cmp    al, byte [r14 + 25]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x17463a41                           // cmp    al, byte [r14 + 23]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x16463a41                           // cmp    al, byte [r14 + 22]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x15463a41                           // cmp    al, byte [r14 + 21]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x14463a41                           // cmp    al, byte [r14 + 20]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x13463a41                           // cmp    al, byte [r14 + 19]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x12463a41                           // cmp    al, byte [r14 + 18]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x11463a41                           // cmp    al, byte [r14 + 17]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x0f463a41                           // cmp    al, byte [r14 + 15]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x0e463a41                           // cmp    al, byte [r14 + 14]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x0d463a41                           // cmp    al, byte [r14 + 13]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x0c463a41                           // cmp    al, byte [r14 + 12]
	LONG $0xd4950f41                           // setne    r12b
	LONG $0x0b463a41                           // cmp    al, byte [r14 + 11]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x0a463a41                           // cmp    al, byte [r14 + 10]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x09463a41                           // cmp    al, byte [r14 + 9]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x07463a41                           // cmp    al, byte [r14 + 7]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x06463a41                           // cmp    al, byte [r14 + 6]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x05463a41                           // cmp    al, byte [r14 + 5]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x04463a41                           // cmp    al, byte [r14 + 4]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x03463a41                           // cmp    al, byte [r14 + 3]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x02463a41                           // cmp    al, byte [r14 + 2]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0x3a41; BYTE $0x06                   // cmp    al, byte [r14]
	QUAD $0x000000a82494950f                   // setne    byte [rsp + 168]
	LONG $0x01463a41                           // cmp    al, byte [r14 + 1]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x08463a41                           // cmp    al, byte [r14 + 8]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x10463a41                           // cmp    al, byte [r14 + 16]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x18463a41                           // cmp    al, byte [r14 + 24]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	WORD $0xc900                               // add    cl, cl
	LONG $0xa8248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 168]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xca08                               // or    dl, cl
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x05e1c041                           // shl    r9b, 5
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0844; BYTE $0xce                   // or    sil, r9b
	LONG $0x24448b48; BYTE $0x68               // mov    rax, qword [rsp + 104]
	WORD $0x8840; BYTE $0x30                   // mov    byte [rax], sil
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000c0249c0244                   // add    r11b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	QUAD $0x00000098248cb60f                   // movzx    ecx, byte [rsp + 152]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0845; BYTE $0xea                   // or    r10b, r13b
	LONG $0x01508844                           // mov    byte [rax + 1], r10b
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xc900                               // add    cl, cl
	LONG $0x90248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 144]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	QUAD $0x00000080248cb60f                   // movzx    ecx, byte [rsp + 128]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	WORD $0x4888; BYTE $0x02                   // mov    byte [rax + 2], cl
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xc900                               // add    cl, cl
	LONG $0x88248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 136]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	WORD $0x4888; BYTE $0x03                   // mov    byte [rax + 3], cl
	LONG $0x20c68349                           // add    r14, 32
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24448948; BYTE $0x68               // mov    qword [rsp + 104], rax
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB5_71
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	JMP  LBB5_73

LBB5_145:
	WORD $0x8b44; BYTE $0x1e     // mov    r11d, dword [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_149
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]

LBB5_147:
	WORD $0x3b45; BYTE $0x1e                   // cmp    r11d, dword [r14]
	LONG $0x04768d4d                           // lea    r14, [r14 + 4]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x1cb60f41; BYTE $0x30               // movzx    ebx, byte [r8 + rsi]
	WORD $0xda30                               // xor    dl, bl
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3040; BYTE $0xdf                   // xor    dil, bl
	LONG $0x303c8841                           // mov    byte [r8 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_147
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_149:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20ff8349         // cmp    r15, 32
	JL   LBB5_153
	QUAD $0x000000a024bc894c // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	QUAD $0x000000a82494894c // mov    qword [rsp + 168], r10

LBB5_151:
	LONG $0x7c5e3b45                           // cmp    r11d, dword [r14 + 124]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0x785e3b45                           // cmp    r11d, dword [r14 + 120]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x745e3b45                           // cmp    r11d, dword [r14 + 116]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x705e3b45                           // cmp    r11d, dword [r14 + 112]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x6c5e3b45                           // cmp    r11d, dword [r14 + 108]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x685e3b45                           // cmp    r11d, dword [r14 + 104]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x645e3b45                           // cmp    r11d, dword [r14 + 100]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x5c5e3b45                           // cmp    r11d, dword [r14 + 92]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x585e3b45                           // cmp    r11d, dword [r14 + 88]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x545e3b45                           // cmp    r11d, dword [r14 + 84]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x505e3b45                           // cmp    r11d, dword [r14 + 80]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x4c5e3b45                           // cmp    r11d, dword [r14 + 76]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x485e3b45                           // cmp    r11d, dword [r14 + 72]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x445e3b45                           // cmp    r11d, dword [r14 + 68]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x3c5e3b45                           // cmp    r11d, dword [r14 + 60]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x385e3b45                           // cmp    r11d, dword [r14 + 56]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x345e3b45                           // cmp    r11d, dword [r14 + 52]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x305e3b45                           // cmp    r11d, dword [r14 + 48]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x2c5e3b45                           // cmp    r11d, dword [r14 + 44]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x285e3b45                           // cmp    r11d, dword [r14 + 40]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x245e3b45                           // cmp    r11d, dword [r14 + 36]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x1c5e3b45                           // cmp    r11d, dword [r14 + 28]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x185e3b45                           // cmp    r11d, dword [r14 + 24]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x145e3b45                           // cmp    r11d, dword [r14 + 20]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x105e3b45                           // cmp    r11d, dword [r14 + 16]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x0c5e3b45                           // cmp    r11d, dword [r14 + 12]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x085e3b45                           // cmp    r11d, dword [r14 + 8]
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x3b45; BYTE $0x1e                   // cmp    r11d, dword [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x045e3b45                           // cmp    r11d, dword [r14 + 4]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x205e3b45                           // cmp    r11d, dword [r14 + 32]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x405e3b45                           // cmp    r11d, dword [r14 + 64]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x605e3b45                           // cmp    r11d, dword [r14 + 96]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	QUAD $0x000000c024ac0244                   // add    r13b, byte [rsp + 192]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xec                   // or    r12b, r13b
	LONG $0x246c8b4c; BYTE $0x08               // mov    r13, qword [rsp + 8]
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xe7                   // or    r15b, r12b
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0844; BYTE $0xfa                   // or    dl, r15b
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x00458841                           // mov    byte [r13], al
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000b024b40240                   // add    sil, byte [rsp + 176]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01458845                           // mov    byte [r13 + 1], r8b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x02458841                           // mov    byte [r13 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x70244402                           // add    al, byte [rsp + 112]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x03458841                           // mov    byte [r13 + 3], al
	LONG $0x80ee8349                           // sub    r14, -128
	LONG $0x04c58349                           // add    r13, 4
	LONG $0x246c894c; BYTE $0x08               // mov    qword [rsp + 8], r13
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_151
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]

LBB5_153:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_155

LBB5_23:
	WORD $0xff31 // xor    edi, edi
	JMP  LBB5_24

LBB5_100:
	LONG $0x1eb70f44             // movzx    r11d, word [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_104
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24548b48; BYTE $0x08 // mov    rdx, qword [rsp + 8]

LBB5_102:
	LONG $0x1e3b4566               // cmp    r11w, word [r14]
	LONG $0x02768d4d               // lea    r14, [r14 + 2]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	WORD $0xdbf6                   // neg    bl
	LONG $0x07708d48               // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xf0490f48               // cmovns    rsi, rax
	LONG $0x03fec148               // sar    rsi, 3
	LONG $0x0cb60f44; BYTE $0x32   // movzx    r9d, byte [rdx + rsi]
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	QUAD $0x00000000f5048d44       // lea    r8d, [8*rsi]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1       // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2040; BYTE $0xdf       // and    dil, bl
	WORD $0x3044; BYTE $0xcf       // xor    dil, r9b
	LONG $0x323c8840               // mov    byte [rdx + rsi], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB5_102
	LONG $0x24448348; WORD $0x0108 // add    qword [rsp + 8], 1

LBB5_104:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20ff8349             // cmp    r15, 32
	JL   LBB5_105
	LONG $0x08fa8349             // cmp    r10, 8
	LONG $0x245c8944; BYTE $0x10 // mov    dword [rsp + 16], r11d
	QUAD $0x000000a024bc894c     // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c     // mov    qword [rsp + 208], r10
	JB   LBB5_107
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x014c; BYTE $0xf0     // add    rax, r14
	LONG $0x24443948; BYTE $0x08 // cmp    qword [rsp + 8], rax
	JAE  LBB5_110
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x394c; BYTE $0xf0     // cmp    rax, r14
	JBE  LBB5_110

LBB5_107:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x28 // mov    qword [rsp + 40], rax
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]

LBB5_113:
	LONG $0x24542b4c; BYTE $0x28 // sub    r10, qword [rsp + 40]
	QUAD $0x000000a82494894c     // mov    qword [rsp + 168], r10

LBB5_114:
	LONG $0x5e3b4566; BYTE $0x3e               // cmp    r11w, word [r14 + 62]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x5e3b4566; BYTE $0x3c               // cmp    r11w, word [r14 + 60]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x5e3b4566; BYTE $0x3a               // cmp    r11w, word [r14 + 58]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x5e3b4566; BYTE $0x38               // cmp    r11w, word [r14 + 56]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x5e3b4566; BYTE $0x36               // cmp    r11w, word [r14 + 54]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x5e3b4566; BYTE $0x34               // cmp    r11w, word [r14 + 52]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x5e3b4566; BYTE $0x32               // cmp    r11w, word [r14 + 50]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x5e3b4566; BYTE $0x2e               // cmp    r11w, word [r14 + 46]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x5e3b4566; BYTE $0x2c               // cmp    r11w, word [r14 + 44]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x5e3b4566; BYTE $0x2a               // cmp    r11w, word [r14 + 42]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x5e3b4566; BYTE $0x28               // cmp    r11w, word [r14 + 40]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x5e3b4566; BYTE $0x26               // cmp    r11w, word [r14 + 38]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x5e3b4566; BYTE $0x24               // cmp    r11w, word [r14 + 36]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x5e3b4566; BYTE $0x22               // cmp    r11w, word [r14 + 34]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x5e3b4566; BYTE $0x1e               // cmp    r11w, word [r14 + 30]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x5e3b4566; BYTE $0x1c               // cmp    r11w, word [r14 + 28]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x5e3b4566; BYTE $0x1a               // cmp    r11w, word [r14 + 26]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x5e3b4566; BYTE $0x18               // cmp    r11w, word [r14 + 24]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x5e3b4566; BYTE $0x16               // cmp    r11w, word [r14 + 22]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x5e3b4566; BYTE $0x14               // cmp    r11w, word [r14 + 20]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x12               // cmp    ax, word [r14 + 18]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0e               // cmp    ax, word [r14 + 14]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0c               // cmp    ax, word [r14 + 12]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0a               // cmp    ax, word [r14 + 10]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x08               // cmp    ax, word [r14 + 8]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x06               // cmp    ax, word [r14 + 6]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x04               // cmp    ax, word [r14 + 4]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x063b4166                           // cmp    ax, word [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x02               // cmp    ax, word [r14 + 2]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	WORD $0x894c; BYTE $0xe3                   // mov    rbx, r12
	LONG $0x24648b44; BYTE $0x10               // mov    r12d, dword [rsp + 16]
	LONG $0x663b4566; BYTE $0x10               // cmp    r12w, word [r14 + 16]
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x10245c8b                           // mov    ebx, dword [rsp + 16]
	LONG $0x5e3b4166; BYTE $0x20               // cmp    bx, word [r14 + 32]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x10245c8b                           // mov    ebx, dword [rsp + 16]
	LONG $0x5e3b4166; BYTE $0x30               // cmp    bx, word [r14 + 48]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc000                               // add    al, al
	LONG $0xc0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	LONG $0x03e6c040                           // shl    sil, 3
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	LONG $0x05e0c041                           // shl    r8b, 5
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xc208                               // or    dl, al
	WORD $0x0844; BYTE $0xc2                   // or    dl, r8b
	LONG $0x24148841                           // mov    byte [r12], dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000b024940244                   // add    r10b, byte [rsp + 176]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245c8b44; BYTE $0x10               // mov    r11d, dword [rsp + 16]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x244c8845; BYTE $0x01               // mov    byte [r12 + 1], r9b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x98248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 152]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x24448841; BYTE $0x02               // mov    byte [r12 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	WORD $0xd808                               // or    al, bl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x24448841; BYTE $0x03               // mov    byte [r12 + 3], al
	LONG $0x40c68349                           // add    r14, 64
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_114
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]
	JMP  LBB5_116

LBB5_123:
	LONG $0x1eb70f44             // movzx    r11d, word [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_127
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24548b48; BYTE $0x08 // mov    rdx, qword [rsp + 8]

LBB5_125:
	LONG $0x1e3b4566               // cmp    r11w, word [r14]
	LONG $0x02768d4d               // lea    r14, [r14 + 2]
	WORD $0x950f; BYTE $0xd3       // setne    bl
	WORD $0xdbf6                   // neg    bl
	LONG $0x07708d48               // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xf0490f48               // cmovns    rsi, rax
	LONG $0x03fec148               // sar    rsi, 3
	LONG $0x0cb60f44; BYTE $0x32   // movzx    r9d, byte [rdx + rsi]
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	QUAD $0x00000000f5048d44       // lea    r8d, [8*rsi]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1       // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2040; BYTE $0xdf       // and    dil, bl
	WORD $0x3044; BYTE $0xcf       // xor    dil, r9b
	LONG $0x323c8840               // mov    byte [rdx + rsi], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB5_125
	LONG $0x24448348; WORD $0x0108 // add    qword [rsp + 8], 1

LBB5_127:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20ff8349             // cmp    r15, 32
	JL   LBB5_128
	LONG $0x08fa8349             // cmp    r10, 8
	LONG $0x245c8944; BYTE $0x10 // mov    dword [rsp + 16], r11d
	QUAD $0x000000a024bc894c     // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c     // mov    qword [rsp + 208], r10
	JB   LBB5_130
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x014c; BYTE $0xf0     // add    rax, r14
	LONG $0x24443948; BYTE $0x08 // cmp    qword [rsp + 8], rax
	JAE  LBB5_133
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x394c; BYTE $0xf0     // cmp    rax, r14
	JBE  LBB5_133

LBB5_130:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x28 // mov    qword [rsp + 40], rax
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]

LBB5_136:
	LONG $0x24542b4c; BYTE $0x28 // sub    r10, qword [rsp + 40]
	QUAD $0x000000a82494894c     // mov    qword [rsp + 168], r10

LBB5_137:
	LONG $0x5e3b4566; BYTE $0x3e               // cmp    r11w, word [r14 + 62]
	LONG $0x2454950f; BYTE $0x08               // setne    byte [rsp + 8]
	LONG $0x5e3b4566; BYTE $0x3c               // cmp    r11w, word [r14 + 60]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0x5e3b4566; BYTE $0x3a               // cmp    r11w, word [r14 + 58]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0x5e3b4566; BYTE $0x38               // cmp    r11w, word [r14 + 56]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0x5e3b4566; BYTE $0x36               // cmp    r11w, word [r14 + 54]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0x5e3b4566; BYTE $0x34               // cmp    r11w, word [r14 + 52]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0x5e3b4566; BYTE $0x32               // cmp    r11w, word [r14 + 50]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0x5e3b4566; BYTE $0x2e               // cmp    r11w, word [r14 + 46]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0x5e3b4566; BYTE $0x2c               // cmp    r11w, word [r14 + 44]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0x5e3b4566; BYTE $0x2a               // cmp    r11w, word [r14 + 42]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0x5e3b4566; BYTE $0x28               // cmp    r11w, word [r14 + 40]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x5e3b4566; BYTE $0x26               // cmp    r11w, word [r14 + 38]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x5e3b4566; BYTE $0x24               // cmp    r11w, word [r14 + 36]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x5e3b4566; BYTE $0x22               // cmp    r11w, word [r14 + 34]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x5e3b4566; BYTE $0x1e               // cmp    r11w, word [r14 + 30]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x5e3b4566; BYTE $0x1c               // cmp    r11w, word [r14 + 28]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x5e3b4566; BYTE $0x1a               // cmp    r11w, word [r14 + 26]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	LONG $0x5e3b4566; BYTE $0x18               // cmp    r11w, word [r14 + 24]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x5e3b4566; BYTE $0x16               // cmp    r11w, word [r14 + 22]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x5e3b4566; BYTE $0x14               // cmp    r11w, word [r14 + 20]
	LONG $0xd3950f41                           // setne    r11b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x12               // cmp    ax, word [r14 + 18]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0e               // cmp    ax, word [r14 + 14]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0c               // cmp    ax, word [r14 + 12]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x0a               // cmp    ax, word [r14 + 10]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x08               // cmp    ax, word [r14 + 8]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x06               // cmp    ax, word [r14 + 6]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x04               // cmp    ax, word [r14 + 4]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x063b4166                           // cmp    ax, word [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x1024448b                           // mov    eax, dword [rsp + 16]
	LONG $0x463b4166; BYTE $0x02               // cmp    ax, word [r14 + 2]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	WORD $0x894c; BYTE $0xe3                   // mov    rbx, r12
	LONG $0x24648b44; BYTE $0x10               // mov    r12d, dword [rsp + 16]
	LONG $0x663b4566; BYTE $0x10               // cmp    r12w, word [r14 + 16]
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x10245c8b                           // mov    ebx, dword [rsp + 16]
	LONG $0x5e3b4166; BYTE $0x20               // cmp    bx, word [r14 + 32]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x10245c8b                           // mov    ebx, dword [rsp + 16]
	LONG $0x5e3b4166; BYTE $0x30               // cmp    bx, word [r14 + 48]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	WORD $0xc000                               // add    al, al
	LONG $0xc0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	LONG $0x03e6c040                           // shl    sil, 3
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	LONG $0x05e0c041                           // shl    r8b, 5
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xc208                               // or    dl, al
	WORD $0x0844; BYTE $0xc2                   // or    dl, r8b
	LONG $0x24148841                           // mov    byte [r12], dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000b024940244                   // add    r10b, byte [rsp + 176]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x245c8b44; BYTE $0x10               // mov    r11d, dword [rsp + 16]
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x244c8845; BYTE $0x01               // mov    byte [r12 + 1], r9b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x98248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 152]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x24448841; BYTE $0x02               // mov    byte [r12 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	WORD $0xd808                               // or    al, bl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x24448841; BYTE $0x03               // mov    byte [r12 + 3], al
	LONG $0x40c68349                           // add    r14, 64
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_137
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]
	JMP  LBB5_139

LBB5_159:
	WORD $0x8b4c; BYTE $0x1e     // mov    r11, qword [rsi]
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_163
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]

LBB5_161:
	WORD $0x3b4d; BYTE $0x1e                   // cmp    r11, qword [r14]
	LONG $0x08768d4d                           // lea    r14, [r14 + 8]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x1cb60f41; BYTE $0x30               // movzx    ebx, byte [r8 + rsi]
	WORD $0xda30                               // xor    dl, bl
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3040; BYTE $0xdf                   // xor    dil, bl
	LONG $0x303c8841                           // mov    byte [r8 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_161
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_163:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20ff8349         // cmp    r15, 32
	JL   LBB5_167
	QUAD $0x000000a024bc894c // mov    qword [rsp + 160], r15
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	QUAD $0x000000a82494894c // mov    qword [rsp + 168], r10

LBB5_165:
	LONG $0xf89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 248]
	LONG $0x2454950f; BYTE $0x10               // setne    byte [rsp + 16]
	LONG $0xf09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 240]
	LONG $0x2454950f; BYTE $0x40               // setne    byte [rsp + 64]
	LONG $0xe89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 232]
	LONG $0x2454950f; BYTE $0x20               // setne    byte [rsp + 32]
	LONG $0xe09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 224]
	LONG $0x2454950f; BYTE $0x18               // setne    byte [rsp + 24]
	LONG $0xd89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 216]
	LONG $0x2454950f; BYTE $0x28               // setne    byte [rsp + 40]
	LONG $0xd09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 208]
	LONG $0x2454950f; BYTE $0x38               // setne    byte [rsp + 56]
	LONG $0xc89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 200]
	LONG $0x2454950f; BYTE $0x30               // setne    byte [rsp + 48]
	LONG $0xb89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 184]
	LONG $0x2454950f; BYTE $0x50               // setne    byte [rsp + 80]
	LONG $0xb09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 176]
	LONG $0x2454950f; BYTE $0x48               // setne    byte [rsp + 72]
	LONG $0xa89e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 168]
	LONG $0x2454950f; BYTE $0x68               // setne    byte [rsp + 104]
	LONG $0xa09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 160]
	LONG $0x2454950f; BYTE $0x60               // setne    byte [rsp + 96]
	LONG $0x989e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 152]
	LONG $0x2454950f; BYTE $0x58               // setne    byte [rsp + 88]
	LONG $0x909e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 144]
	QUAD $0x000000802494950f                   // setne    byte [rsp + 128]
	LONG $0x889e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 136]
	LONG $0x2454950f; BYTE $0x78               // setne    byte [rsp + 120]
	LONG $0x785e3b4d                           // cmp    r11, qword [r14 + 120]
	LONG $0xd0950f41                           // setne    r8b
	LONG $0x705e3b4d                           // cmp    r11, qword [r14 + 112]
	QUAD $0x000000882494950f                   // setne    byte [rsp + 136]
	LONG $0x685e3b4d                           // cmp    r11, qword [r14 + 104]
	QUAD $0x000000982494950f                   // setne    byte [rsp + 152]
	LONG $0x605e3b4d                           // cmp    r11, qword [r14 + 96]
	LONG $0xd7950f40                           // setne    dil
	LONG $0x585e3b4d                           // cmp    r11, qword [r14 + 88]
	LONG $0xd2950f41                           // setne    r10b
	LONG $0x505e3b4d                           // cmp    r11, qword [r14 + 80]
	LONG $0xd1950f41                           // setne    r9b
	LONG $0x485e3b4d                           // cmp    r11, qword [r14 + 72]
	LONG $0xd6950f40                           // setne    sil
	LONG $0x385e3b4d                           // cmp    r11, qword [r14 + 56]
	WORD $0x950f; BYTE $0xd0                   // setne    al
	LONG $0x305e3b4d                           // cmp    r11, qword [r14 + 48]
	WORD $0x950f; BYTE $0xd3                   // setne    bl
	LONG $0x285e3b4d                           // cmp    r11, qword [r14 + 40]
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	LONG $0x205e3b4d                           // cmp    r11, qword [r14 + 32]
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	LONG $0x185e3b4d                           // cmp    r11, qword [r14 + 24]
	LONG $0xd7950f41                           // setne    r15b
	LONG $0x105e3b4d                           // cmp    r11, qword [r14 + 16]
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x3b4d; BYTE $0x1e                   // cmp    r11, qword [r14]
	QUAD $0x000000c02494950f                   // setne    byte [rsp + 192]
	LONG $0x085e3b4d                           // cmp    r11, qword [r14 + 8]
	LONG $0xd5950f41                           // setne    r13b
	LONG $0x405e3b4d                           // cmp    r11, qword [r14 + 64]
	QUAD $0x000000b02494950f                   // setne    byte [rsp + 176]
	LONG $0x809e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 128]
	QUAD $0x000000902494950f                   // setne    byte [rsp + 144]
	LONG $0xc09e3b4d; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [r14 + 192]
	LONG $0x2454950f; BYTE $0x70               // setne    byte [rsp + 112]
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	QUAD $0x000000c024ac0244                   // add    r13b, byte [rsp + 192]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xec                   // or    r12b, r13b
	LONG $0x246c8b4c; BYTE $0x08               // mov    r13, qword [rsp + 8]
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xe7                   // or    r15b, r12b
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0844; BYTE $0xfa                   // or    dl, r15b
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x00458841                           // mov    byte [r13], al
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000b024b40240                   // add    sil, byte [rsp + 176]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e7c040                           // shl    dil, 4
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	QUAD $0x000000982484b60f                   // movzx    eax, byte [rsp + 152]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	QUAD $0x00000088248cb60f                   // movzx    ecx, byte [rsp + 136]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01458845                           // mov    byte [r13 + 1], r8b
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x02458841                           // mov    byte [r13 + 2], al
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x70244402                           // add    al, byte [rsp + 112]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	WORD $0xc808                               // or    al, cl
	LONG $0x03458841                           // mov    byte [r13 + 3], al
	LONG $0x00c68149; WORD $0x0001; BYTE $0x00 // add    r14, 256
	LONG $0x04c58349                           // add    r13, 4
	LONG $0x246c894c; BYTE $0x08               // mov    qword [rsp + 8], r13
	QUAD $0x000000a824848348; BYTE $0xff       // add    qword [rsp + 168], -1
	JNE  LBB5_165
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]

LBB5_167:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_169

LBB5_40:
	WORD $0xff31 // xor    edi, edi
	JMP  LBB5_41

LBB5_171:
	LONG $0x1f578d4d             // lea    r10, [r15 + 31]
	WORD $0x854d; BYTE $0xff     // test    r15, r15
	LONG $0xd7490f4d             // cmovns    r10, r15
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB5_175
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]

LBB5_173:
	LONG $0x062e0f41                           // ucomiss    xmm0, dword [r14]
	LONG $0x04768d4d                           // lea    r14, [r14 + 4]
	WORD $0x9a0f; BYTE $0xd1                   // setp    cl
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xca08                               // or    dl, cl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x1cb60f41; BYTE $0x30               // movzx    ebx, byte [r8 + rsi]
	WORD $0xda30                               // xor    dl, bl
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3040; BYTE $0xdf                   // xor    dil, bl
	LONG $0x303c8841                           // mov    byte [r8 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB5_173
	LONG $0x24448348; WORD $0x0108             // add    qword [rsp + 8], 1

LBB5_175:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20ff8349             // cmp    r15, 32
	JL   LBB5_176
	LONG $0x04fa8349             // cmp    r10, 4
	JB   LBB5_178
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x07e0c148             // shl    rax, 7
	WORD $0x014c; BYTE $0xf0     // add    rax, r14
	LONG $0x24443948; BYTE $0x08 // cmp    qword [rsp + 8], rax
	JAE  LBB5_181
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x394c; BYTE $0xf0     // cmp    rax, r14
	JBE  LBB5_181

LBB5_178:
	WORD $0x3145; BYTE $0xc0     // xor    r8d, r8d
	WORD $0x894c; BYTE $0xf3     // mov    rbx, r14
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]

LBB5_184:
	LONG $0x2464894c; BYTE $0x10 // mov    qword [rsp + 16], r12
	QUAD $0x000000a024bc894c     // mov    qword [rsp + 160], r15
	QUAD $0x000000f02494894c     // mov    qword [rsp + 240], r10
	WORD $0x294d; BYTE $0xc2     // sub    r10, r8
	QUAD $0x000000d02494894c     // mov    qword [rsp + 208], r10

LBB5_185:
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd2                   // setne    dl
	WORD $0xc208                               // or    dl, al
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x18244c88                           // mov    byte [rsp + 24], cl
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x20244c88                           // mov    byte [rsp + 32], cl
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x40244c88                           // mov    byte [rsp + 64], cl
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x38244c88                           // mov    byte [rsp + 56], cl
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x30244c88                           // mov    byte [rsp + 48], cl
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x08244c88                           // mov    byte [rsp + 8], cl
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x28244c88                           // mov    byte [rsp + 40], cl
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x50244c88                           // mov    byte [rsp + 80], cl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x48244c88                           // mov    byte [rsp + 72], cl
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x68244c88                           // mov    byte [rsp + 104], cl
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x60244c88                           // mov    byte [rsp + 96], cl
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x80248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 128], cl
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x70244c88                           // mov    byte [rsp + 112], cl
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x78244c88                           // mov    byte [rsp + 120], cl
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x58244c88                           // mov    byte [rsp + 88], cl
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd4950f41                           // setne    r12b
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x88248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 136], cl
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x98248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 152], cl
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0x90248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 144], cl
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xc0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 192], cl
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f41                           // setne    r14b
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd0950f41                           // setne    r8b
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xb0248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 176], cl
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd3950f41                           // setne    r11b
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd2950f41                           // setne    r10b
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd1950f41                           // setne    r9b
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f41                           // setne    r15b
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	WORD $0x950f; BYTE $0xd1                   // setne    cl
	WORD $0xc108                               // or    cl, al
	LONG $0xa8248c88; WORD $0x0000; BYTE $0x00 // mov    byte [rsp + 168], cl
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd7950f40                           // setne    dil
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x9a0f; BYTE $0xd0                   // setp    al
	LONG $0xd6950f40                           // setne    sil
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0xd200                               // add    dl, dl
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd5                   // mov    r13d, edx
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xc900                               // add    cl, cl
	LONG $0x28244c02                           // add    cl, byte [rsp + 40]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd008                               // or    al, dl
	LONG $0x08244488                           // mov    byte [rsp + 8], al
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc5                   // mov    r13d, eax
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xca08                               // or    dl, cl
	QUAD $0x00008024acb60f44; BYTE $0x00       // movzx    r13d, byte [rsp + 128]
	LONG $0x05e5c041                           // shl    r13b, 5
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x6cb60f44; WORD $0x7824             // movzx    r13d, byte [rsp + 120]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x58               // add    r12b, byte [rsp + 88]
	WORD $0x8944; BYTE $0xe1                   // mov    ecx, r12d
	QUAD $0x00008824a4b60f44; BYTE $0x00       // movzx    r12d, byte [rsp + 136]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xcc                   // or    r12b, cl
	QUAD $0x00000098248cb60f                   // movzx    ecx, byte [rsp + 152]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	WORD $0x8941; BYTE $0xcc                   // mov    r12d, ecx
	QUAD $0x00000090248cb60f                   // movzx    ecx, byte [rsp + 144]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x64b60f44; WORD $0x0824             // movzx    r12d, byte [rsp + 8]
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	LONG $0x06e6c041                           // shl    r14b, 6
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	WORD $0x0841; BYTE $0xd5                   // or    r13b, dl
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0845; BYTE $0xf0                   // or    r8b, r14b
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000b0249c0244                   // add    r11b, byte [rsp + 176]
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xd1                   // or    r9b, r10b
	LONG $0x04e7c041                           // shl    r15b, 4
	WORD $0x0845; BYTE $0xcf                   // or    r15b, r9b
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	WORD $0x8844; BYTE $0x20                   // mov    byte [rax], r12b
	QUAD $0x000000a8248cb60f                   // movzx    ecx, byte [rsp + 168]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x01688844                           // mov    byte [rax + 1], r13b
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0844; BYTE $0xfe                   // or    sil, r15b
	LONG $0x02408844                           // mov    byte [rax + 2], r8b
	LONG $0x03708840                           // mov    byte [rax + 3], sil
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB5_185
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]
	JMP  LBB5_187

LBB5_9:
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x24448948; BYTE $0x50 // mov    qword [rsp + 80], rax

LBB5_92:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_95
	WORD $0xf631             // xor    esi, esi
	JMP  LBB5_98

LBB5_62:
	LONG $0x24448b48; BYTE $0x08 // mov    rax, qword [rsp + 8]
	LONG $0x24448948; BYTE $0x68 // mov    qword [rsp + 104], rax

LBB5_73:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_76
	WORD $0xf631             // xor    esi, esi
	JMP  LBB5_79

LBB5_105:
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]

LBB5_116:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JE   LBB5_118
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi

LBB5_122:
	LONG $0x1e3b4566             // cmp    r11w, word [r14]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x5e3b4566; BYTE $0x02 // cmp    r11w, word [r14 + 2]
	LONG $0x04768d4d             // lea    r14, [r14 + 4]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB5_122
	JMP  LBB5_119

LBB5_128:
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]

LBB5_139:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_141

LBB5_118:
	WORD $0xf631  // xor    esi, esi
	JMP  LBB5_119

LBB5_176:
	LONG $0x24648b4c; BYTE $0x08 // mov    r12, qword [rsp + 8]
	WORD $0x894c; BYTE $0xf3     // mov    rbx, r14

LBB5_187:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xfa // cmp    r10, r15
	JGE  LBB5_198
	WORD $0x894d; BYTE $0xf8 // mov    r8, r15
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xfa // add    r10, r15
	JNE  LBB5_192
	WORD $0xf631             // xor    esi, esi
	JMP  LBB5_190

LBB5_155:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xff31                 // xor    edi, edi
	LONG $0x247c8b4c; BYTE $0x08 // mov    r15, qword [rsp + 8]

LBB5_156:
	WORD $0x3b45; BYTE $0x1e     // cmp    r11d, dword [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc220                 // and    dl, al
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	LONG $0x37148841             // mov    byte [r15 + rsi], dl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x045e3b45             // cmp    r11d, dword [r14 + 4]
	LONG $0x08768d4d             // lea    r14, [r14 + 8]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd030                 // xor    al, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x3949; BYTE $0xf9     // cmp    r9, rdi
	JNE  LBB5_156

LBB5_24:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB5_198
	WORD $0x3b45; BYTE $0x1e // cmp    r11d, dword [r14]
	JMP  LBB5_26

LBB5_95:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0xf631                 // xor    esi, esi
	LONG $0x245c8b4c; BYTE $0x50 // mov    r11, qword [rsp + 80]

LBB5_96:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x2474b60f; BYTE $0x10 // movzx    esi, byte [rsp + 16]
	LONG $0x06343a41             // cmp    sil, byte [r14 + rax]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xc7     // mov    rdi, rax
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x06743a41; BYTE $0x01 // cmp    sil, byte [r14 + rax + 1]
	LONG $0x02708d48             // lea    rsi, [rax + 2]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x3949; BYTE $0xf2     // cmp    r10, rsi
	JNE  LBB5_96
	WORD $0x0149; BYTE $0xf6     // add    r14, rsi

LBB5_98:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB5_198
	LONG $0x1024448a             // mov    al, byte [rsp + 16]
	WORD $0x3a41; BYTE $0x06     // cmp    al, byte [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xf2     // mov    rdx, rsi
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x50 // mov    r8, qword [rsp + 80]
	JMP  LBB5_81

LBB5_76:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0xf631                 // xor    esi, esi
	LONG $0x245c8b4c; BYTE $0x68 // mov    r11, qword [rsp + 104]

LBB5_77:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x2474b60f; BYTE $0x40 // movzx    esi, byte [rsp + 64]
	LONG $0x06343a41             // cmp    sil, byte [r14 + rax]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xc7     // mov    rdi, rax
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x06743a41; BYTE $0x01 // cmp    sil, byte [r14 + rax + 1]
	LONG $0x02708d48             // lea    rsi, [rax + 2]
	WORD $0x950f; BYTE $0xd3     // setne    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x3949; BYTE $0xf2     // cmp    r10, rsi
	JNE  LBB5_77
	WORD $0x0149; BYTE $0xf6     // add    r14, rsi

LBB5_79:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB5_198
	LONG $0x4024448a             // mov    al, byte [rsp + 64]
	WORD $0x3a41; BYTE $0x06     // cmp    al, byte [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xf2     // mov    rdx, rsi
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x68 // mov    r8, qword [rsp + 104]

LBB5_81:
	LONG $0x103c8a41         // mov    dil, byte [r8 + rdx]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x101c8841         // mov    byte [r8 + rdx], bl
	JMP  LBB5_198

LBB5_194:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xff31                 // xor    edi, edi
	LONG $0x245c8b4c; BYTE $0x08 // mov    r11, qword [rsp + 8]

LBB5_195:
	LONG $0x2e0f4166; BYTE $0x06   // ucomisd    xmm0, qword [r14]
	WORD $0x9a0f; BYTE $0xd1       // setp    cl
	WORD $0x950f; BYTE $0xd0       // setne    al
	WORD $0xc808                   // or    al, cl
	WORD $0xd8f6                   // neg    al
	WORD $0x8948; BYTE $0xfe       // mov    rsi, rdi
	LONG $0x03eec148               // shr    rsi, 3
	LONG $0x14b60f41; BYTE $0x33   // movzx    edx, byte [r11 + rsi]
	WORD $0xf989                   // mov    ecx, edi
	WORD $0xe180; BYTE $0x06       // and    cl, 6
	WORD $0x01b3                   // mov    bl, 1
	WORD $0xe3d2                   // shl    bl, cl
	WORD $0xd030                   // xor    al, dl
	WORD $0xc320                   // and    bl, al
	WORD $0xd330                   // xor    bl, dl
	LONG $0x331c8841               // mov    byte [r11 + rsi], bl
	LONG $0x02c78348               // add    rdi, 2
	LONG $0x2e0f4166; WORD $0x0846 // ucomisd    xmm0, qword [r14 + 8]
	LONG $0x10768d4d               // lea    r14, [r14 + 16]
	WORD $0x9a0f; BYTE $0xd0       // setp    al
	WORD $0x950f; BYTE $0xd2       // setne    dl
	WORD $0xc208                   // or    dl, al
	WORD $0xdaf6                   // neg    dl
	WORD $0xda30                   // xor    dl, bl
	WORD $0xc980; BYTE $0x01       // or    cl, 1
	WORD $0x01b0                   // mov    al, 1
	WORD $0xe0d2                   // shl    al, cl
	WORD $0xd020                   // and    al, dl
	WORD $0xd830                   // xor    al, bl
	LONG $0x33048841               // mov    byte [r11 + rsi], al
	WORD $0x3949; BYTE $0xf9       // cmp    r9, rdi
	JNE  LBB5_195

LBB5_196:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB5_198
	LONG $0x2e0f4166; BYTE $0x06 // ucomisd    xmm0, qword [r14]
	WORD $0x9a0f; BYTE $0xd0     // setp    al
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xc208                 // or    dl, al
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf8     // mov    rax, rdi
	LONG $0x03e8c148             // shr    rax, 3
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]
	LONG $0x00348a41             // mov    sil, byte [r8 + rax]
	LONG $0x07e78040             // and    dil, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf2     // xor    dl, sil
	WORD $0xd320                 // and    bl, dl
	WORD $0x3040; BYTE $0xf3     // xor    bl, sil
	LONG $0x001c8841             // mov    byte [r8 + rax], bl
	JMP  LBB5_198

LBB5_169:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xff31                 // xor    edi, edi
	LONG $0x247c8b4c; BYTE $0x08 // mov    r15, qword [rsp + 8]

LBB5_170:
	WORD $0x3b4d; BYTE $0x1e     // cmp    r11, qword [r14]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	WORD $0xc220                 // and    dl, al
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	LONG $0x37148841             // mov    byte [r15 + rsi], dl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x085e3b4d             // cmp    r11, qword [r14 + 8]
	LONG $0x10768d4d             // lea    r14, [r14 + 16]
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd030                 // xor    al, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x3949; BYTE $0xf9     // cmp    r9, rdi
	JNE  LBB5_170

LBB5_41:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB5_198
	WORD $0x3b4d; BYTE $0x1e // cmp    r11, qword [r14]

LBB5_26:
	WORD $0x950f; BYTE $0xd0     // setne    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfa     // mov    rdx, rdi
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x08 // mov    r8, qword [rsp + 8]
	LONG $0x10348a41             // mov    sil, byte [r8 + rdx]
	LONG $0x07e78040             // and    dil, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf0     // xor    al, sil
	WORD $0xc320                 // and    bl, al
	WORD $0x3040; BYTE $0xf3     // xor    bl, sil
	LONG $0x101c8841             // mov    byte [r8 + rdx], bl
	JMP  LBB5_198

LBB5_141:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi

LBB5_142:
	LONG $0x1e3b4566             // cmp    r11w, word [r14]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x5e3b4566; BYTE $0x02 // cmp    r11w, word [r14 + 2]
	LONG $0x04768d4d             // lea    r14, [r14 + 4]
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB5_142

LBB5_119:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB5_198
	LONG $0x1e3b4566         // cmp    r11w, word [r14]
	WORD $0x950f; BYTE $0xd0 // setne    al
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x143c8a41         // mov    dil, byte [r12 + rdx]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x141c8841         // mov    byte [r12 + rdx], bl
	JMP  LBB5_198

LBB5_192:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi
	WORD $0x894d; BYTE $0xe6 // mov    r14, r12

LBB5_193:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd1     // setp    cl
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0xca08                 // or    dl, cl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0xb341; BYTE $0x01     // mov    r11b, 1
	WORD $0xd241; BYTE $0xe3     // shl    r11b, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0x2041; BYTE $0xd3     // and    r11b, dl
	WORD $0x3045; BYTE $0xd3     // xor    r11b, r10b
	LONG $0x3e1c8845             // mov    byte [r14 + rdi], r11b
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0x085b8d48             // lea    rbx, [rbx + 8]
	LONG $0xd29a0f41             // setp    r10b
	WORD $0x950f; BYTE $0xd2     // setne    dl
	WORD $0x0844; BYTE $0xd2     // or    dl, r10b
	WORD $0xdaf6                 // neg    dl
	WORD $0x3044; BYTE $0xda     // xor    dl, r11b
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xd8     // xor    al, r11b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB5_193

LBB5_190:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB5_198
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0x9a0f; BYTE $0xd0 // setp    al
	WORD $0x950f; BYTE $0xd2 // setne    dl
	WORD $0xc208             // or    dl, al
	WORD $0xdaf6             // neg    dl
	WORD $0x8948; BYTE $0xf0 // mov    rax, rsi
	LONG $0x03e8c148         // shr    rax, 3
	LONG $0x043c8a41         // mov    dil, byte [r12 + rax]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xfa // xor    dl, dil
	WORD $0xd320             // and    bl, dl
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x041c8841         // mov    byte [r12 + rax], bl

LBB5_198:
	MOVQ 288(SP), SP
	RET

LBB5_86:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x014c; BYTE $0xf0             // add    rax, r14
	QUAD $0x0000011024848948             // mov    qword [rsp + 272], rax
	QUAD $0x000000e82494894c             // mov    qword [rsp + 232], r10
	LONG $0x24448b48; BYTE $0x08         // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a                     // lea    rax, [rax + 4*r10]
	LONG $0x24448948; BYTE $0x50         // mov    qword [rsp + 80], rax
	LONG $0x2444b60f; BYTE $0x10         // movzx    eax, byte [rsp + 16]
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000b0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 176], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB5_87:
	QUAD $0x000000a824848948                   // mov    qword [rsp + 168], rax
	LONG $0x05e0c148                           // shl    rax, 5
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	LONG $0x24448948; BYTE $0x48               // mov    qword [rsp + 72], rax
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	LONG $0x0cb60f41; BYTE $0x06               // movzx    ecx, byte [r14 + rax]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x4cb60f41; WORD $0x0106             // movzx    ecx, byte [r14 + rax + 1]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x4cb60f41; WORD $0x0206             // movzx    ecx, byte [r14 + rax + 2]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x4cb60f41; WORD $0x0306             // movzx    ecx, byte [r14 + rax + 3]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x4cb60f41; WORD $0x0406             // movzx    ecx, byte [r14 + rax + 4]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x4cb60f41; WORD $0x0506             // movzx    ecx, byte [r14 + rax + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x4cb60f41; WORD $0x0606             // movzx    ecx, byte [r14 + rax + 6]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x4cb60f41; WORD $0x0706             // movzx    ecx, byte [r14 + rax + 7]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x4cb60f41; WORD $0x0806             // movzx    ecx, byte [r14 + rax + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x4cb60f41; WORD $0x0906             // movzx    ecx, byte [r14 + rax + 9]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x4cb60f41; WORD $0x0a06             // movzx    ecx, byte [r14 + rax + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x4cb60f41; WORD $0x0b06             // movzx    ecx, byte [r14 + rax + 11]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x4cb60f41; WORD $0x0c06             // movzx    ecx, byte [r14 + rax + 12]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000d024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm0
	LONG $0x4cb60f41; WORD $0x0d06             // movzx    ecx, byte [r14 + rax + 13]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x4cb60f41; WORD $0x0e06             // movzx    ecx, byte [r14 + rax + 14]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x4cb60f41; WORD $0x0f06             // movzx    ecx, byte [r14 + rax + 15]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	QUAD $0x0000008024848948                   // mov    qword [rsp + 128], rax
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0x20cf8348                           // or    rdi, 32
	LONG $0x40ca8348                           // or    rdx, 64
	LONG $0x24548948; BYTE $0x28               // mov    qword [rsp + 40], rdx
	LONG $0x60cc8349                           // or    r12, 96
	LONG $0x80c88149; WORD $0x0000; BYTE $0x00 // or    r8, 128
	LONG $0xa0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 160
	LONG $0xc0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 192
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 256
	LONG $0x20cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 288
	LONG $0x40ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 320
	LONG $0x24748948; BYTE $0x68               // mov    qword [rsp + 104], rsi
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	LONG $0x60ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 352
	LONG $0x24748948; BYTE $0x48               // mov    qword [rsp + 72], rsi
	LONG $0x80cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 384
	LONG $0x246c894c; BYTE $0x70               // mov    qword [rsp + 112], r13
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x40               // mov    qword [rsp + 64], rax
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	LONG $0xc0cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 448
	LONG $0x246c894c; BYTE $0x38               // mov    qword [rsp + 56], r13
	LONG $0xe0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 480
	LONG $0x244c8948; BYTE $0x20               // mov    qword [rsp + 32], rcx
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x013e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rdi], 1
	QUAD $0x021624203a0f4166                   // pinsrb    xmm4, byte [r14 + rdx], 2
	LONG $0x2464894c; BYTE $0x78               // mov    qword [rsp + 120], r12
	QUAD $0x032624203a0f4366                   // pinsrb    xmm4, byte [r14 + r12], 3
	QUAD $0x040624203a0f4366                   // pinsrb    xmm4, byte [r14 + r8], 4
	LONG $0x2454894c; BYTE $0x60               // mov    qword [rsp + 96], r10
	QUAD $0x051624203a0f4366                   // pinsrb    xmm4, byte [r14 + r10], 5
	QUAD $0x0000008824bc894c                   // mov    qword [rsp + 136], r15
	QUAD $0x063e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r15], 6
	QUAD $0x070e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r9], 7
	QUAD $0x081e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r11], 8
	LONG $0x245c8948; BYTE $0x58               // mov    qword [rsp + 88], rbx
	QUAD $0x091e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rbx], 9
	LONG $0x245c8b48; BYTE $0x68               // mov    rbx, qword [rsp + 104]
	QUAD $0x0a1e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rbx], 10
	QUAD $0x0b3624203a0f4166                   // pinsrb    xmm4, byte [r14 + rsi], 11
	LONG $0x247c8b48; BYTE $0x70               // mov    rdi, qword [rsp + 112]
	QUAD $0x0c3e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rdi], 12
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0d0624203a0f4166                   // pinsrb    xmm4, byte [r14 + rax], 13
	QUAD $0x0e2e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r13], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0f0624203a0f4166                   // pinsrb    xmm4, byte [r14 + rax], 15
	QUAD $0x010e5c203a0f4166; BYTE $0x01       // pinsrb    xmm3, byte [r14 + rcx + 1], 1
	QUAD $0x01165c203a0f4166; BYTE $0x02       // pinsrb    xmm3, byte [r14 + rdx + 1], 2
	QUAD $0x01265c203a0f4366; BYTE $0x03       // pinsrb    xmm3, byte [r14 + r12 + 1], 3
	QUAD $0x01065c203a0f4366; BYTE $0x04       // pinsrb    xmm3, byte [r14 + r8 + 1], 4
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x01165c203a0f4366; BYTE $0x05       // pinsrb    xmm3, byte [r14 + r10 + 1], 5
	QUAD $0x013e5c203a0f4366; BYTE $0x06       // pinsrb    xmm3, byte [r14 + r15 + 1], 6
	QUAD $0x010e5c203a0f4366; BYTE $0x07       // pinsrb    xmm3, byte [r14 + r9 + 1], 7
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	QUAD $0x011e5c203a0f4366; BYTE $0x08       // pinsrb    xmm3, byte [r14 + r11 + 1], 8
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x01265c203a0f4366; BYTE $0x09       // pinsrb    xmm3, byte [r14 + r12 + 1], 9
	QUAD $0x011e5c203a0f4166; BYTE $0x0a       // pinsrb    xmm3, byte [r14 + rbx + 1], 10
	QUAD $0x01365c203a0f4166; BYTE $0x0b       // pinsrb    xmm3, byte [r14 + rsi + 1], 11
	QUAD $0x013e5c203a0f4166; BYTE $0x0c       // pinsrb    xmm3, byte [r14 + rdi + 1], 12
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x01065c203a0f4166; BYTE $0x0d       // pinsrb    xmm3, byte [r14 + rax + 1], 13
	QUAD $0x012e5c203a0f4366; BYTE $0x0e       // pinsrb    xmm3, byte [r14 + r13 + 1], 14
	QUAD $0x0000b0248c6f0f66; BYTE $0x00       // movdqa    xmm1, oword [rsp + 176]
	LONG $0xe1740f66                           // pcmpeqb    xmm4, xmm1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x012e5c203a0f4366; BYTE $0x0f       // pinsrb    xmm3, byte [r14 + r13 + 1], 15
	LONG $0xd9740f66                           // pcmpeqb    xmm3, xmm1
	QUAD $0x00000100856f0f66                   // movdqa    xmm0, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xdcfc0f66                           // paddb    xmm3, xmm4
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	LONG $0x74b60f41; WORD $0x1006             // movzx    esi, byte [r14 + rax + 16]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	QUAD $0x020e6c203a0f4166; BYTE $0x01       // pinsrb    xmm5, byte [r14 + rcx + 2], 1
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	LONG $0x244c8948; BYTE $0x18               // mov    qword [rsp + 24], rcx
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x020e6c203a0f4166; BYTE $0x02       // pinsrb    xmm5, byte [r14 + rcx + 2], 2
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x023e6c203a0f4366; BYTE $0x03       // pinsrb    xmm5, byte [r14 + r15 + 2], 3
	WORD $0x8948; BYTE $0xd3                   // mov    rbx, rdx
	QUAD $0x02166c203a0f4166; BYTE $0x04       // pinsrb    xmm5, byte [r14 + rdx + 2], 4
	LONG $0x244c8b4c; BYTE $0x60               // mov    r9, qword [rsp + 96]
	QUAD $0x020e6c203a0f4366; BYTE $0x05       // pinsrb    xmm5, byte [r14 + r9 + 2], 5
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x021e6c203a0f4366; BYTE $0x06       // pinsrb    xmm5, byte [r14 + r11 + 2], 6
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	LONG $0x2444894c; BYTE $0x30               // mov    qword [rsp + 48], r8
	QUAD $0x02066c203a0f4366; BYTE $0x07       // pinsrb    xmm5, byte [r14 + r8 + 2], 7
	QUAD $0x02166c203a0f4366; BYTE $0x08       // pinsrb    xmm5, byte [r14 + r10 + 2], 8
	QUAD $0x02266c203a0f4366; BYTE $0x09       // pinsrb    xmm5, byte [r14 + r12 + 2], 9
	LONG $0x24448b4c; BYTE $0x68               // mov    r8, qword [rsp + 104]
	QUAD $0x02066c203a0f4366; BYTE $0x0a       // pinsrb    xmm5, byte [r14 + r8 + 2], 10
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x020e6c203a0f4166; BYTE $0x0b       // pinsrb    xmm5, byte [r14 + rcx + 2], 11
	QUAD $0x023e6c203a0f4166; BYTE $0x0c       // pinsrb    xmm5, byte [r14 + rdi + 2], 12
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x02366c203a0f4166; BYTE $0x0d       // pinsrb    xmm5, byte [r14 + rsi + 2], 13
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x02366c203a0f4166; BYTE $0x0e       // pinsrb    xmm5, byte [r14 + rsi + 2], 14
	QUAD $0x022e6c203a0f4366; BYTE $0x0f       // pinsrb    xmm5, byte [r14 + r13 + 2], 15
	QUAD $0x03067c203a0f4166; BYTE $0x01       // pinsrb    xmm7, byte [r14 + rax + 3], 1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x03067c203a0f4166; BYTE $0x02       // pinsrb    xmm7, byte [r14 + rax + 3], 2
	QUAD $0x033e7c203a0f4366; BYTE $0x03       // pinsrb    xmm7, byte [r14 + r15 + 3], 3
	QUAD $0x031e7c203a0f4166; BYTE $0x04       // pinsrb    xmm7, byte [r14 + rbx + 3], 4
	QUAD $0x030e7c203a0f4366; BYTE $0x05       // pinsrb    xmm7, byte [r14 + r9 + 3], 5
	QUAD $0x031e7c203a0f4366; BYTE $0x06       // pinsrb    xmm7, byte [r14 + r11 + 3], 6
	QUAD $0x03167c203a0f4166; BYTE $0x07       // pinsrb    xmm7, byte [r14 + rdx + 3], 7
	QUAD $0x03167c203a0f4366; BYTE $0x08       // pinsrb    xmm7, byte [r14 + r10 + 3], 8
	QUAD $0x03267c203a0f4366; BYTE $0x09       // pinsrb    xmm7, byte [r14 + r12 + 3], 9
	QUAD $0x03067c203a0f4366; BYTE $0x0a       // pinsrb    xmm7, byte [r14 + r8 + 3], 10
	QUAD $0x030e7c203a0f4166; BYTE $0x0b       // pinsrb    xmm7, byte [r14 + rcx + 3], 11
	QUAD $0x033e7c203a0f4166; BYTE $0x0c       // pinsrb    xmm7, byte [r14 + rdi + 3], 12
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x03067c203a0f4166; BYTE $0x0d       // pinsrb    xmm7, byte [r14 + rax + 3], 13
	QUAD $0x03367c203a0f4166; BYTE $0x0e       // pinsrb    xmm7, byte [r14 + rsi + 3], 14
	QUAD $0x032e7c203a0f4366; BYTE $0x0f       // pinsrb    xmm7, byte [r14 + r13 + 3], 15
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x04064c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rax + 4], 1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x04064c203a0f4566; BYTE $0x02       // pinsrb    xmm9, byte [r14 + rax + 4], 2
	QUAD $0x043e4c203a0f4766; BYTE $0x03       // pinsrb    xmm9, byte [r14 + r15 + 4], 3
	QUAD $0x041e4c203a0f4566; BYTE $0x04       // pinsrb    xmm9, byte [r14 + rbx + 4], 4
	QUAD $0x040e4c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r9 + 4], 5
	QUAD $0x041e4c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r11 + 4], 6
	QUAD $0x04164c203a0f4566; BYTE $0x07       // pinsrb    xmm9, byte [r14 + rdx + 4], 7
	QUAD $0x04164c203a0f4766; BYTE $0x08       // pinsrb    xmm9, byte [r14 + r10 + 4], 8
	QUAD $0x000000902494894c                   // mov    qword [rsp + 144], r10
	QUAD $0x04264c203a0f4766; BYTE $0x09       // pinsrb    xmm9, byte [r14 + r12 + 4], 9
	QUAD $0x04064c203a0f4766; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + r8 + 4], 10
	QUAD $0x040e4c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rcx + 4], 11
	QUAD $0x043e4c203a0f4566; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + rdi + 4], 12
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x04164c203a0f4566; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + rdx + 4], 13
	QUAD $0x04364c203a0f4566; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + rsi + 4], 14
	QUAD $0x042e4c203a0f4766; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + r13 + 4], 15
	LONG $0xe9740f66                           // pcmpeqb    xmm5, xmm1
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xf9740f66                           // pcmpeqb    xmm7, xmm1
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xf8df0f66                           // pandn    xmm7, xmm0
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0x00000080248c8b4c                   // mov    r9, qword [rsp + 128]
	LONG $0x74b60f43; WORD $0x110e             // movzx    esi, byte [r14 + r9 + 17]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x740f4466; BYTE $0xc9               // pcmpeqb    xmm9, xmm1
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xdf0f4466; BYTE $0xc8               // pandn    xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0x74b60f43; WORD $0x120e             // movzx    esi, byte [r14 + r9 + 18]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xd8f80f66                           // psubb    xmm3, xmm0
	LONG $0xeb0f4466; BYTE $0xcb               // por    xmm9, xmm3
	LONG $0x74b60f43; WORD $0x130e             // movzx    esi, byte [r14 + r9 + 19]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x050e54203a0f4366; BYTE $0x01       // pinsrb    xmm2, byte [r14 + r9 + 5], 1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x050654203a0f4166; BYTE $0x02       // pinsrb    xmm2, byte [r14 + rax + 5], 2
	QUAD $0x053e54203a0f4366; BYTE $0x03       // pinsrb    xmm2, byte [r14 + r15 + 5], 3
	QUAD $0x051e54203a0f4166; BYTE $0x04       // pinsrb    xmm2, byte [r14 + rbx + 5], 4
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x00000098249c8948                   // mov    qword [rsp + 152], rbx
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x052e54203a0f4366; BYTE $0x05       // pinsrb    xmm2, byte [r14 + r13 + 5], 5
	QUAD $0x051e54203a0f4366; BYTE $0x06       // pinsrb    xmm2, byte [r14 + r11 + 5], 6
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x053654203a0f4166; BYTE $0x07       // pinsrb    xmm2, byte [r14 + rsi + 5], 7
	QUAD $0x051654203a0f4366; BYTE $0x08       // pinsrb    xmm2, byte [r14 + r10 + 5], 8
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x053e54203a0f4366; BYTE $0x09       // pinsrb    xmm2, byte [r14 + r15 + 5], 9
	QUAD $0x050654203a0f4366; BYTE $0x0a       // pinsrb    xmm2, byte [r14 + r8 + 5], 10
	QUAD $0x050e54203a0f4166; BYTE $0x0b       // pinsrb    xmm2, byte [r14 + rcx + 5], 11
	QUAD $0x053e54203a0f4166; BYTE $0x0c       // pinsrb    xmm2, byte [r14 + rdi + 5], 12
	QUAD $0x051654203a0f4166; BYTE $0x0d       // pinsrb    xmm2, byte [r14 + rdx + 5], 13
	LONG $0x245c8b4c; BYTE $0x38               // mov    r11, qword [rsp + 56]
	QUAD $0x051e54203a0f4366; BYTE $0x0e       // pinsrb    xmm2, byte [r14 + r11 + 5], 14
	LONG $0x24548b4c; BYTE $0x20               // mov    r10, qword [rsp + 32]
	QUAD $0x051654203a0f4366; BYTE $0x0f       // pinsrb    xmm2, byte [r14 + r10 + 5], 15
	QUAD $0x060e44203a0f4766; BYTE $0x01       // pinsrb    xmm8, byte [r14 + r9 + 6], 1
	QUAD $0x060644203a0f4566; BYTE $0x02       // pinsrb    xmm8, byte [r14 + rax + 6], 2
	LONG $0x245c8b48; BYTE $0x78               // mov    rbx, qword [rsp + 120]
	QUAD $0x061e44203a0f4566; BYTE $0x03       // pinsrb    xmm8, byte [r14 + rbx + 6], 3
	QUAD $0x062644203a0f4766; BYTE $0x04       // pinsrb    xmm8, byte [r14 + r12 + 6], 4
	QUAD $0x062e44203a0f4766; BYTE $0x05       // pinsrb    xmm8, byte [r14 + r13 + 6], 5
	QUAD $0x0000008824a48b4c                   // mov    r12, qword [rsp + 136]
	QUAD $0x062644203a0f4766; BYTE $0x06       // pinsrb    xmm8, byte [r14 + r12 + 6], 6
	QUAD $0x063644203a0f4566; BYTE $0x07       // pinsrb    xmm8, byte [r14 + rsi + 6], 7
	QUAD $0x0000009024a48b4c                   // mov    r12, qword [rsp + 144]
	QUAD $0x062644203a0f4766; BYTE $0x08       // pinsrb    xmm8, byte [r14 + r12 + 6], 8
	QUAD $0x063e44203a0f4766; BYTE $0x09       // pinsrb    xmm8, byte [r14 + r15 + 6], 9
	QUAD $0x060644203a0f4766; BYTE $0x0a       // pinsrb    xmm8, byte [r14 + r8 + 6], 10
	QUAD $0x060e44203a0f4566; BYTE $0x0b       // pinsrb    xmm8, byte [r14 + rcx + 6], 11
	QUAD $0x063e44203a0f4566; BYTE $0x0c       // pinsrb    xmm8, byte [r14 + rdi + 6], 12
	QUAD $0x061644203a0f4566; BYTE $0x0d       // pinsrb    xmm8, byte [r14 + rdx + 6], 13
	QUAD $0x061e44203a0f4766; BYTE $0x0e       // pinsrb    xmm8, byte [r14 + r11 + 6], 14
	QUAD $0x061644203a0f4766; BYTE $0x0f       // pinsrb    xmm8, byte [r14 + r10 + 6], 15
	QUAD $0x070e74203a0f4766; BYTE $0x01       // pinsrb    xmm14, byte [r14 + r9 + 7], 1
	QUAD $0x070674203a0f4566; BYTE $0x02       // pinsrb    xmm14, byte [r14 + rax + 7], 2
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	QUAD $0x071e74203a0f4566; BYTE $0x03       // pinsrb    xmm14, byte [r14 + rbx + 7], 3
	QUAD $0x00000098249c8b4c                   // mov    r11, qword [rsp + 152]
	QUAD $0x071e74203a0f4766; BYTE $0x04       // pinsrb    xmm14, byte [r14 + r11 + 7], 4
	QUAD $0x072e74203a0f4766; BYTE $0x05       // pinsrb    xmm14, byte [r14 + r13 + 7], 5
	QUAD $0x0000008824848b48                   // mov    rax, qword [rsp + 136]
	QUAD $0x070674203a0f4566; BYTE $0x06       // pinsrb    xmm14, byte [r14 + rax + 7], 6
	QUAD $0x073674203a0f4566; BYTE $0x07       // pinsrb    xmm14, byte [r14 + rsi + 7], 7
	WORD $0x894d; BYTE $0xe1                   // mov    r9, r12
	QUAD $0x072674203a0f4766; BYTE $0x08       // pinsrb    xmm14, byte [r14 + r12 + 7], 8
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x072674203a0f4766; BYTE $0x09       // pinsrb    xmm14, byte [r14 + r12 + 7], 9
	QUAD $0x070674203a0f4766; BYTE $0x0a       // pinsrb    xmm14, byte [r14 + r8 + 7], 10
	QUAD $0x070e74203a0f4566; BYTE $0x0b       // pinsrb    xmm14, byte [r14 + rcx + 7], 11
	QUAD $0x073e74203a0f4566; BYTE $0x0c       // pinsrb    xmm14, byte [r14 + rdi + 7], 12
	QUAD $0x071674203a0f4566; BYTE $0x0d       // pinsrb    xmm14, byte [r14 + rdx + 7], 13
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	QUAD $0x073e74203a0f4566; BYTE $0x0e       // pinsrb    xmm14, byte [r14 + rdi + 7], 14
	LONG $0x6f0f4166; BYTE $0xce               // movdqa    xmm1, xmm14
	QUAD $0x00b024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0xd0df0f66                           // pandn    xmm2, xmm0
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xdf0f4466; BYTE $0xc0               // pandn    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	QUAD $0x0000008024948b4c                   // mov    r10, qword [rsp + 128]
	LONG $0x74b60f43; WORD $0x1416             // movzx    esi, byte [r14 + r10 + 20]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x07064c203a0f4166; BYTE $0x0f       // pinsrb    xmm1, byte [r14 + rax + 7], 15
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xc8df0f66                           // pandn    xmm1, xmm0
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	LONG $0x74b60f43; WORD $0x1516             // movzx    esi, byte [r14 + r10 + 21]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0000f024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 240]
	QUAD $0x081644203a0f4166; BYTE $0x01       // pinsrb    xmm0, byte [r14 + rdx + 8], 1
	QUAD $0x083e44203a0f4366; BYTE $0x02       // pinsrb    xmm0, byte [r14 + r15 + 8], 2
	QUAD $0x081e44203a0f4166; BYTE $0x03       // pinsrb    xmm0, byte [r14 + rbx + 8], 3
	WORD $0x8949; BYTE $0xdf                   // mov    r15, rbx
	WORD $0x894c; BYTE $0xdb                   // mov    rbx, r11
	QUAD $0x081e44203a0f4366; BYTE $0x04       // pinsrb    xmm0, byte [r14 + r11 + 8], 4
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x082e44203a0f4366; BYTE $0x05       // pinsrb    xmm0, byte [r14 + r13 + 8], 5
	QUAD $0x0000008824ac8b4c                   // mov    r13, qword [rsp + 136]
	QUAD $0x082e44203a0f4366; BYTE $0x06       // pinsrb    xmm0, byte [r14 + r13 + 8], 6
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x080e44203a0f4166; BYTE $0x07       // pinsrb    xmm0, byte [r14 + rcx + 8], 7
	QUAD $0x080e44203a0f4366; BYTE $0x08       // pinsrb    xmm0, byte [r14 + r9 + 8], 8
	QUAD $0x082644203a0f4366; BYTE $0x09       // pinsrb    xmm0, byte [r14 + r12 + 8], 9
	QUAD $0x080644203a0f4366; BYTE $0x0a       // pinsrb    xmm0, byte [r14 + r8 + 8], 10
	LONG $0x24448b4c; BYTE $0x48               // mov    r8, qword [rsp + 72]
	QUAD $0x080644203a0f4366; BYTE $0x0b       // pinsrb    xmm0, byte [r14 + r8 + 8], 11
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x080e44203a0f4366; BYTE $0x0c       // pinsrb    xmm0, byte [r14 + r9 + 8], 12
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x083644203a0f4166; BYTE $0x0d       // pinsrb    xmm0, byte [r14 + rsi + 8], 13
	QUAD $0x083e44203a0f4166; BYTE $0x0e       // pinsrb    xmm0, byte [r14 + rdi + 8], 14
	QUAD $0x080644203a0f4166; BYTE $0x0f       // pinsrb    xmm0, byte [r14 + rax + 8], 15
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	QUAD $0x0000f0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm1
	LONG $0x74b60f43; WORD $0x1616             // movzx    esi, byte [r14 + r10 + 22]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x09165c203a0f4566; BYTE $0x01       // pinsrb    xmm11, byte [r14 + rdx + 9], 1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x09065c203a0f4566; BYTE $0x02       // pinsrb    xmm11, byte [r14 + rax + 9], 2
	QUAD $0x093e5c203a0f4766; BYTE $0x03       // pinsrb    xmm11, byte [r14 + r15 + 9], 3
	QUAD $0x091e5c203a0f4566; BYTE $0x04       // pinsrb    xmm11, byte [r14 + rbx + 9], 4
	WORD $0x894c; BYTE $0xda                   // mov    rdx, r11
	QUAD $0x091e5c203a0f4766; BYTE $0x05       // pinsrb    xmm11, byte [r14 + r11 + 9], 5
	QUAD $0x092e5c203a0f4766; BYTE $0x06       // pinsrb    xmm11, byte [r14 + r13 + 9], 6
	QUAD $0x090e5c203a0f4566; BYTE $0x07       // pinsrb    xmm11, byte [r14 + rcx + 9], 7
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x09165c203a0f4766; BYTE $0x08       // pinsrb    xmm11, byte [r14 + r10 + 9], 8
	WORD $0x894c; BYTE $0xe1                   // mov    rcx, r12
	QUAD $0x09265c203a0f4766; BYTE $0x09       // pinsrb    xmm11, byte [r14 + r12 + 9], 9
	LONG $0x24748b48; BYTE $0x68               // mov    rsi, qword [rsp + 104]
	QUAD $0x09365c203a0f4566; BYTE $0x0a       // pinsrb    xmm11, byte [r14 + rsi + 9], 10
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x09065c203a0f4766; BYTE $0x0b       // pinsrb    xmm11, byte [r14 + r8 + 9], 11
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x090e5c203a0f4766; BYTE $0x0c       // pinsrb    xmm11, byte [r14 + r9 + 9], 12
	LONG $0x245c8b4c; BYTE $0x40               // mov    r11, qword [rsp + 64]
	QUAD $0x091e5c203a0f4766; BYTE $0x0d       // pinsrb    xmm11, byte [r14 + r11 + 9], 13
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	QUAD $0x09265c203a0f4766; BYTE $0x0e       // pinsrb    xmm11, byte [r14 + r12 + 9], 14
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x09065c203a0f4766; BYTE $0x0f       // pinsrb    xmm11, byte [r14 + r8 + 9], 15
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x0a0e64203a0f4766; BYTE $0x01       // pinsrb    xmm12, byte [r14 + r9 + 10], 1
	QUAD $0x0a0664203a0f4566; BYTE $0x02       // pinsrb    xmm12, byte [r14 + rax + 10], 2
	QUAD $0x0a3e64203a0f4766; BYTE $0x03       // pinsrb    xmm12, byte [r14 + r15 + 10], 3
	QUAD $0x0a1e64203a0f4566; BYTE $0x04       // pinsrb    xmm12, byte [r14 + rbx + 10], 4
	LONG $0x245c8b48; BYTE $0x60               // mov    rbx, qword [rsp + 96]
	QUAD $0x0a1e64203a0f4566; BYTE $0x05       // pinsrb    xmm12, byte [r14 + rbx + 10], 5
	QUAD $0x0a2e64203a0f4766; BYTE $0x06       // pinsrb    xmm12, byte [r14 + r13 + 10], 6
	LONG $0x247c8b4c; BYTE $0x30               // mov    r15, qword [rsp + 48]
	QUAD $0x0a3e64203a0f4766; BYTE $0x07       // pinsrb    xmm12, byte [r14 + r15 + 10], 7
	QUAD $0x0a1664203a0f4766; BYTE $0x08       // pinsrb    xmm12, byte [r14 + r10 + 10], 8
	QUAD $0x0a0e64203a0f4566; BYTE $0x09       // pinsrb    xmm12, byte [r14 + rcx + 10], 9
	QUAD $0x0a3664203a0f4566; BYTE $0x0a       // pinsrb    xmm12, byte [r14 + rsi + 10], 10
	QUAD $0x0a1664203a0f4566; BYTE $0x0b       // pinsrb    xmm12, byte [r14 + rdx + 10], 11
	QUAD $0x0a3e64203a0f4566; BYTE $0x0c       // pinsrb    xmm12, byte [r14 + rdi + 10], 12
	QUAD $0x0a1e64203a0f4766; BYTE $0x0d       // pinsrb    xmm12, byte [r14 + r11 + 10], 13
	QUAD $0x0a2664203a0f4766; BYTE $0x0e       // pinsrb    xmm12, byte [r14 + r12 + 10], 14
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	QUAD $0x0a0664203a0f4766; BYTE $0x0f       // pinsrb    xmm12, byte [r14 + r8 + 10], 15
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	QUAD $0x0b0e6c203a0f4766; BYTE $0x01       // pinsrb    xmm13, byte [r14 + r9 + 11], 1
	QUAD $0x0b066c203a0f4566; BYTE $0x02       // pinsrb    xmm13, byte [r14 + rax + 11], 2
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x0b3e6c203a0f4766; BYTE $0x03       // pinsrb    xmm13, byte [r14 + r15 + 11], 3
	QUAD $0x00000098248c8b4c                   // mov    r9, qword [rsp + 152]
	QUAD $0x0b0e6c203a0f4766; BYTE $0x04       // pinsrb    xmm13, byte [r14 + r9 + 11], 4
	QUAD $0x0b1e6c203a0f4566; BYTE $0x05       // pinsrb    xmm13, byte [r14 + rbx + 11], 5
	QUAD $0x0b2e6c203a0f4766; BYTE $0x06       // pinsrb    xmm13, byte [r14 + r13 + 11], 6
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0b066c203a0f4566; BYTE $0x07       // pinsrb    xmm13, byte [r14 + rax + 11], 7
	QUAD $0x0b166c203a0f4766; BYTE $0x08       // pinsrb    xmm13, byte [r14 + r10 + 11], 8
	QUAD $0x0b0e6c203a0f4566; BYTE $0x09       // pinsrb    xmm13, byte [r14 + rcx + 11], 9
	QUAD $0x0b366c203a0f4566; BYTE $0x0a       // pinsrb    xmm13, byte [r14 + rsi + 11], 10
	QUAD $0x0b166c203a0f4566; BYTE $0x0b       // pinsrb    xmm13, byte [r14 + rdx + 11], 11
	QUAD $0x0b3e6c203a0f4566; BYTE $0x0c       // pinsrb    xmm13, byte [r14 + rdi + 11], 12
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0b066c203a0f4566; BYTE $0x0d       // pinsrb    xmm13, byte [r14 + rax + 11], 13
	QUAD $0x0b1e6c203a0f4766; BYTE $0x0e       // pinsrb    xmm13, byte [r14 + r11 + 11], 14
	QUAD $0x0b266c203a0f4766; BYTE $0x0f       // pinsrb    xmm13, byte [r14 + r12 + 11], 15
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001009ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xfc0f4466; BYTE $0xd8               // paddb    xmm11, xmm0
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	LONG $0x74b60f41; WORD $0x1706             // movzx    esi, byte [r14 + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x000110a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x74b60f41; WORD $0x1806             // movzx    esi, byte [r14 + rax + 24]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x00d0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 208]
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0c064c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rax + 12], 1
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	QUAD $0x0c064c203a0f4766; BYTE $0x02       // pinsrb    xmm9, byte [r14 + r8 + 12], 2
	QUAD $0x0c3e4c203a0f4766; BYTE $0x03       // pinsrb    xmm9, byte [r14 + r15 + 12], 3
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	QUAD $0x0c0e4c203a0f4766; BYTE $0x04       // pinsrb    xmm9, byte [r14 + r9 + 12], 4
	LONG $0x244c8b4c; BYTE $0x60               // mov    r9, qword [rsp + 96]
	QUAD $0x0c0e4c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r9 + 12], 5
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x0c2e4c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r13 + 12], 6
	LONG $0x24448b4c; BYTE $0x30               // mov    r8, qword [rsp + 48]
	QUAD $0x0c064c203a0f4766; BYTE $0x07       // pinsrb    xmm9, byte [r14 + r8 + 12], 7
	WORD $0x894c; BYTE $0xd6                   // mov    rsi, r10
	QUAD $0x0c164c203a0f4766; BYTE $0x08       // pinsrb    xmm9, byte [r14 + r10 + 12], 8
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x0c0e4c203a0f4566; BYTE $0x09       // pinsrb    xmm9, byte [r14 + rcx + 12], 9
	LONG $0x24548b4c; BYTE $0x68               // mov    r10, qword [rsp + 104]
	QUAD $0x0c164c203a0f4766; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + r10 + 12], 10
	QUAD $0x0c164c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rdx + 12], 11
	QUAD $0x0c3e4c203a0f4566; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + rdi + 12], 12
	LONG $0x246c8b4c; BYTE $0x40               // mov    r13, qword [rsp + 64]
	QUAD $0x0c2e4c203a0f4766; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + r13 + 12], 13
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x0c064c203a0f4566; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + rax + 12], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0c064c203a0f4566; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + rax + 12], 15
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0d0674203a0f4166; BYTE $0x01       // pinsrb    xmm6, byte [r14 + rax + 13], 1
	QUAD $0x0d2674203a0f4366; BYTE $0x02       // pinsrb    xmm6, byte [r14 + r12 + 13], 2
	QUAD $0x0d3e74203a0f4366; BYTE $0x03       // pinsrb    xmm6, byte [r14 + r15 + 13], 3
	QUAD $0x0d1e74203a0f4166; BYTE $0x04       // pinsrb    xmm6, byte [r14 + rbx + 13], 4
	QUAD $0x0d0e74203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r9 + 13], 5
	QUAD $0x0d1e74203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r11 + 13], 6
	QUAD $0x0d0674203a0f4366; BYTE $0x07       // pinsrb    xmm6, byte [r14 + r8 + 13], 7
	QUAD $0x0d3674203a0f4166; BYTE $0x08       // pinsrb    xmm6, byte [r14 + rsi + 13], 8
	QUAD $0x0d0e74203a0f4166; BYTE $0x09       // pinsrb    xmm6, byte [r14 + rcx + 13], 9
	QUAD $0x0d1674203a0f4366; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + r10 + 13], 10
	QUAD $0x0d1674203a0f4166; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + rdx + 13], 11
	QUAD $0x0d3e74203a0f4166; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + rdi + 13], 12
	QUAD $0x0d2e74203a0f4366; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + r13 + 13], 13
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x0d0674203a0f4166; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + rax + 13], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0d0674203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rax + 13], 15
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e067c203a0f4566; BYTE $0x01       // pinsrb    xmm15, byte [r14 + rax + 14], 1
	QUAD $0x0e267c203a0f4766; BYTE $0x02       // pinsrb    xmm15, byte [r14 + r12 + 14], 2
	QUAD $0x0e3e7c203a0f4766; BYTE $0x03       // pinsrb    xmm15, byte [r14 + r15 + 14], 3
	QUAD $0x0e1e7c203a0f4566; BYTE $0x04       // pinsrb    xmm15, byte [r14 + rbx + 14], 4
	QUAD $0x0e0e7c203a0f4766; BYTE $0x05       // pinsrb    xmm15, byte [r14 + r9 + 14], 5
	QUAD $0x0e1e7c203a0f4766; BYTE $0x06       // pinsrb    xmm15, byte [r14 + r11 + 14], 6
	QUAD $0x0e067c203a0f4766; BYTE $0x07       // pinsrb    xmm15, byte [r14 + r8 + 14], 7
	QUAD $0x0e367c203a0f4566; BYTE $0x08       // pinsrb    xmm15, byte [r14 + rsi + 14], 8
	QUAD $0x0e0e7c203a0f4566; BYTE $0x09       // pinsrb    xmm15, byte [r14 + rcx + 14], 9
	QUAD $0x0e167c203a0f4766; BYTE $0x0a       // pinsrb    xmm15, byte [r14 + r10 + 14], 10
	QUAD $0x0e167c203a0f4566; BYTE $0x0b       // pinsrb    xmm15, byte [r14 + rdx + 14], 11
	QUAD $0x0e3e7c203a0f4566; BYTE $0x0c       // pinsrb    xmm15, byte [r14 + rdi + 14], 12
	QUAD $0x0e2e7c203a0f4766; BYTE $0x0d       // pinsrb    xmm15, byte [r14 + r13 + 14], 13
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	QUAD $0x0e267c203a0f4766; BYTE $0x0e       // pinsrb    xmm15, byte [r14 + r12 + 14], 14
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	QUAD $0x0001308ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xeb0f4566; BYTE $0xcd               // por    xmm9, xmm13
	QUAD $0x0000008024bc8b4c                   // mov    r15, qword [rsp + 128]
	LONG $0x74b60f43; WORD $0x193e             // movzx    esi, byte [r14 + r15 + 25]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	QUAD $0x0001609df80f4466; BYTE $0x00       // psubb    xmm11, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xeb0f4566; BYTE $0xcb               // por    xmm9, xmm11
	LONG $0x74b60f43; WORD $0x1a3e             // movzx    esi, byte [r14 + r15 + 26]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x245c8b48; BYTE $0x20               // mov    rbx, qword [rsp + 32]
	QUAD $0x0e1e7c203a0f4566; BYTE $0x0f       // pinsrb    xmm15, byte [r14 + rbx + 14], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	QUAD $0x00000140b5df0f66                   // pandn    xmm6, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000150bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xeb0f4466; BYTE $0xfe               // por    xmm15, xmm6
	LONG $0x74b60f43; WORD $0x1b3e             // movzx    esi, byte [r14 + r15 + 27]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000c024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 192]
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f0674203a0f4166; BYTE $0x01       // pinsrb    xmm6, byte [r14 + rax + 15], 1
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0f3e74203a0f4166; BYTE $0x02       // pinsrb    xmm6, byte [r14 + rdi + 15], 2
	LONG $0x24548b48; BYTE $0x78               // mov    rdx, qword [rsp + 120]
	QUAD $0x0f1674203a0f4166; BYTE $0x03       // pinsrb    xmm6, byte [r14 + rdx + 15], 3
	QUAD $0x00000098248c8b48                   // mov    rcx, qword [rsp + 152]
	QUAD $0x0f0e74203a0f4166; BYTE $0x04       // pinsrb    xmm6, byte [r14 + rcx + 15], 4
	QUAD $0x0f0e74203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r9 + 15], 5
	QUAD $0x0f1e74203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r11 + 15], 6
	QUAD $0x0f0674203a0f4366; BYTE $0x07       // pinsrb    xmm6, byte [r14 + r8 + 15], 7
	QUAD $0x0000009024848b4c                   // mov    r8, qword [rsp + 144]
	QUAD $0x0f0674203a0f4366; BYTE $0x08       // pinsrb    xmm6, byte [r14 + r8 + 15], 8
	LONG $0x244c8b4c; BYTE $0x58               // mov    r9, qword [rsp + 88]
	QUAD $0x0f0e74203a0f4366; BYTE $0x09       // pinsrb    xmm6, byte [r14 + r9 + 15], 9
	QUAD $0x0f1674203a0f4366; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + r10 + 15], 10
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x0f1674203a0f4366; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + r10 + 15], 11
	LONG $0x24748b48; BYTE $0x70               // mov    rsi, qword [rsp + 112]
	QUAD $0x0f3674203a0f4166; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + rsi + 15], 12
	QUAD $0x0f2e74203a0f4366; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + r13 + 15], 13
	QUAD $0x0f2674203a0f4366; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + r12 + 15], 14
	QUAD $0x0f1e74203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rbx + 15], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0x75df0f66; BYTE $0x60               // pandn    xmm6, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x74b60f43; WORD $0x1c3e             // movzx    esi, byte [r14 + r15 + 28]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	LONG $0xeb0f4166; BYTE $0xf1               // por    xmm6, xmm9
	QUAD $0x0000c024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm6
	LONG $0x74b60f43; WORD $0x1d3e             // movzx    esi, byte [r14 + r15 + 29]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	QUAD $0x100654203a0f4566; BYTE $0x01       // pinsrb    xmm10, byte [r14 + rax + 16], 1
	QUAD $0x103e54203a0f4566; BYTE $0x02       // pinsrb    xmm10, byte [r14 + rdi + 16], 2
	QUAD $0x101654203a0f4566; BYTE $0x03       // pinsrb    xmm10, byte [r14 + rdx + 16], 3
	QUAD $0x100e54203a0f4566; BYTE $0x04       // pinsrb    xmm10, byte [r14 + rcx + 16], 4
	LONG $0x24748b48; BYTE $0x60               // mov    rsi, qword [rsp + 96]
	QUAD $0x103654203a0f4566; BYTE $0x05       // pinsrb    xmm10, byte [r14 + rsi + 16], 5
	QUAD $0x101e54203a0f4766; BYTE $0x06       // pinsrb    xmm10, byte [r14 + r11 + 16], 6
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x103654203a0f4566; BYTE $0x07       // pinsrb    xmm10, byte [r14 + rsi + 16], 7
	QUAD $0x100654203a0f4766; BYTE $0x08       // pinsrb    xmm10, byte [r14 + r8 + 16], 8
	QUAD $0x100e54203a0f4766; BYTE $0x09       // pinsrb    xmm10, byte [r14 + r9 + 16], 9
	LONG $0x24748b48; BYTE $0x68               // mov    rsi, qword [rsp + 104]
	QUAD $0x103654203a0f4566; BYTE $0x0a       // pinsrb    xmm10, byte [r14 + rsi + 16], 10
	QUAD $0x101654203a0f4766; BYTE $0x0b       // pinsrb    xmm10, byte [r14 + r10 + 16], 11
	LONG $0x24748b48; BYTE $0x70               // mov    rsi, qword [rsp + 112]
	QUAD $0x103654203a0f4566; BYTE $0x0c       // pinsrb    xmm10, byte [r14 + rsi + 16], 12
	QUAD $0x102e54203a0f4766; BYTE $0x0d       // pinsrb    xmm10, byte [r14 + r13 + 16], 13
	QUAD $0x102654203a0f4766; BYTE $0x0e       // pinsrb    xmm10, byte [r14 + r12 + 16], 14
	QUAD $0x101e54203a0f4566; BYTE $0x0f       // pinsrb    xmm10, byte [r14 + rbx + 16], 15
	QUAD $0x110664203a0f4166; BYTE $0x01       // pinsrb    xmm4, byte [r14 + rax + 17], 1
	QUAD $0x113e64203a0f4166; BYTE $0x02       // pinsrb    xmm4, byte [r14 + rdi + 17], 2
	QUAD $0x111664203a0f4166; BYTE $0x03       // pinsrb    xmm4, byte [r14 + rdx + 17], 3
	QUAD $0x110e64203a0f4166; BYTE $0x04       // pinsrb    xmm4, byte [r14 + rcx + 17], 4
	LONG $0x244c8b4c; BYTE $0x60               // mov    r9, qword [rsp + 96]
	QUAD $0x110e64203a0f4366; BYTE $0x05       // pinsrb    xmm4, byte [r14 + r9 + 17], 5
	QUAD $0x111e64203a0f4366; BYTE $0x06       // pinsrb    xmm4, byte [r14 + r11 + 17], 6
	LONG $0x24448b4c; BYTE $0x30               // mov    r8, qword [rsp + 48]
	QUAD $0x110664203a0f4366; BYTE $0x07       // pinsrb    xmm4, byte [r14 + r8 + 17], 7
	QUAD $0x0000009024bc8b48                   // mov    rdi, qword [rsp + 144]
	QUAD $0x113e64203a0f4166; BYTE $0x08       // pinsrb    xmm4, byte [r14 + rdi + 17], 8
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x110e64203a0f4166; BYTE $0x09       // pinsrb    xmm4, byte [r14 + rcx + 17], 9
	LONG $0x24548b4c; BYTE $0x68               // mov    r10, qword [rsp + 104]
	QUAD $0x111664203a0f4366; BYTE $0x0a       // pinsrb    xmm4, byte [r14 + r10 + 17], 10
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x111664203a0f4166; BYTE $0x0b       // pinsrb    xmm4, byte [r14 + rdx + 17], 11
	QUAD $0x113664203a0f4166; BYTE $0x0c       // pinsrb    xmm4, byte [r14 + rsi + 17], 12
	QUAD $0x112e64203a0f4366; BYTE $0x0d       // pinsrb    xmm4, byte [r14 + r13 + 17], 13
	QUAD $0x112664203a0f4366; BYTE $0x0e       // pinsrb    xmm4, byte [r14 + r12 + 17], 14
	QUAD $0x111e64203a0f4166; BYTE $0x0f       // pinsrb    xmm4, byte [r14 + rbx + 17], 15
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0x740f4166; BYTE $0xe6               // pcmpeqb    xmm4, xmm14
	QUAD $0x00000100b56f0f66                   // movdqa    xmm6, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xe6df0f66                           // pandn    xmm4, xmm6
	LONG $0xfc0f4166; BYTE $0xe2               // paddb    xmm4, xmm10
	LONG $0x74b60f43; WORD $0x1e3e             // movzx    esi, byte [r14 + r15 + 30]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	QUAD $0x12067c203a0f4166; BYTE $0x01       // pinsrb    xmm7, byte [r14 + rax + 18], 1
	QUAD $0x13066c203a0f4166; BYTE $0x01       // pinsrb    xmm5, byte [r14 + rax + 19], 1
	QUAD $0x14065c203a0f4166; BYTE $0x01       // pinsrb    xmm3, byte [r14 + rax + 20], 1
	QUAD $0x150654203a0f4166; BYTE $0x01       // pinsrb    xmm2, byte [r14 + rax + 21], 1
	QUAD $0x16064c203a0f4166; BYTE $0x01       // pinsrb    xmm1, byte [r14 + rax + 22], 1
	QUAD $0x170644203a0f4566; BYTE $0x01       // pinsrb    xmm8, byte [r14 + rax + 23], 1
	QUAD $0x180664203a0f4566; BYTE $0x01       // pinsrb    xmm12, byte [r14 + rax + 24], 1
	QUAD $0x19066c203a0f4566; BYTE $0x01       // pinsrb    xmm13, byte [r14 + rax + 25], 1
	QUAD $0x1a0644203a0f4166; BYTE $0x01       // pinsrb    xmm0, byte [r14 + rax + 26], 1
	QUAD $0x1b065c203a0f4566; BYTE $0x01       // pinsrb    xmm11, byte [r14 + rax + 27], 1
	QUAD $0x1c067c203a0f4566; BYTE $0x01       // pinsrb    xmm15, byte [r14 + rax + 28], 1
	QUAD $0x1d064c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rax + 29], 1
	QUAD $0x1e0654203a0f4566; BYTE $0x01       // pinsrb    xmm10, byte [r14 + rax + 30], 1
	LONG $0x44b60f43; WORD $0x1f3e             // movzx    eax, byte [r14 + r15 + 31]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x1f3674203a0f4166; BYTE $0x01       // pinsrb    xmm6, byte [r14 + rsi + 31], 1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x12067c203a0f4166; BYTE $0x02       // pinsrb    xmm7, byte [r14 + rax + 18], 2
	QUAD $0x13066c203a0f4166; BYTE $0x02       // pinsrb    xmm5, byte [r14 + rax + 19], 2
	QUAD $0x14065c203a0f4166; BYTE $0x02       // pinsrb    xmm3, byte [r14 + rax + 20], 2
	QUAD $0x150654203a0f4166; BYTE $0x02       // pinsrb    xmm2, byte [r14 + rax + 21], 2
	QUAD $0x16064c203a0f4166; BYTE $0x02       // pinsrb    xmm1, byte [r14 + rax + 22], 2
	QUAD $0x170644203a0f4566; BYTE $0x02       // pinsrb    xmm8, byte [r14 + rax + 23], 2
	QUAD $0x180664203a0f4566; BYTE $0x02       // pinsrb    xmm12, byte [r14 + rax + 24], 2
	QUAD $0x19066c203a0f4566; BYTE $0x02       // pinsrb    xmm13, byte [r14 + rax + 25], 2
	QUAD $0x1a0644203a0f4166; BYTE $0x02       // pinsrb    xmm0, byte [r14 + rax + 26], 2
	QUAD $0x1b065c203a0f4566; BYTE $0x02       // pinsrb    xmm11, byte [r14 + rax + 27], 2
	QUAD $0x1c067c203a0f4566; BYTE $0x02       // pinsrb    xmm15, byte [r14 + rax + 28], 2
	QUAD $0x1d064c203a0f4566; BYTE $0x02       // pinsrb    xmm9, byte [r14 + rax + 29], 2
	QUAD $0x1e0654203a0f4566; BYTE $0x02       // pinsrb    xmm10, byte [r14 + rax + 30], 2
	QUAD $0x1f0674203a0f4166; BYTE $0x02       // pinsrb    xmm6, byte [r14 + rax + 31], 2
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x123e7c203a0f4366; BYTE $0x03       // pinsrb    xmm7, byte [r14 + r15 + 18], 3
	QUAD $0x0000009824848b48                   // mov    rax, qword [rsp + 152]
	QUAD $0x12067c203a0f4166; BYTE $0x04       // pinsrb    xmm7, byte [r14 + rax + 18], 4
	QUAD $0x120e7c203a0f4366; BYTE $0x05       // pinsrb    xmm7, byte [r14 + r9 + 18], 5
	QUAD $0x121e7c203a0f4366; BYTE $0x06       // pinsrb    xmm7, byte [r14 + r11 + 18], 6
	QUAD $0x12067c203a0f4366; BYTE $0x07       // pinsrb    xmm7, byte [r14 + r8 + 18], 7
	WORD $0x8948; BYTE $0xfe                   // mov    rsi, rdi
	QUAD $0x123e7c203a0f4166; BYTE $0x08       // pinsrb    xmm7, byte [r14 + rdi + 18], 8
	QUAD $0x120e7c203a0f4166; BYTE $0x09       // pinsrb    xmm7, byte [r14 + rcx + 18], 9
	QUAD $0x12167c203a0f4366; BYTE $0x0a       // pinsrb    xmm7, byte [r14 + r10 + 18], 10
	QUAD $0x12167c203a0f4166; BYTE $0x0b       // pinsrb    xmm7, byte [r14 + rdx + 18], 11
	LONG $0x247c8b48; BYTE $0x70               // mov    rdi, qword [rsp + 112]
	QUAD $0x123e7c203a0f4166; BYTE $0x0c       // pinsrb    xmm7, byte [r14 + rdi + 18], 12
	QUAD $0x122e7c203a0f4366; BYTE $0x0d       // pinsrb    xmm7, byte [r14 + r13 + 18], 13
	QUAD $0x12267c203a0f4366; BYTE $0x0e       // pinsrb    xmm7, byte [r14 + r12 + 18], 14
	QUAD $0x121e7c203a0f4166; BYTE $0x0f       // pinsrb    xmm7, byte [r14 + rbx + 18], 15
	QUAD $0x133e6c203a0f4366; BYTE $0x03       // pinsrb    xmm5, byte [r14 + r15 + 19], 3
	QUAD $0x13066c203a0f4166; BYTE $0x04       // pinsrb    xmm5, byte [r14 + rax + 19], 4
	QUAD $0x130e6c203a0f4366; BYTE $0x05       // pinsrb    xmm5, byte [r14 + r9 + 19], 5
	QUAD $0x131e6c203a0f4366; BYTE $0x06       // pinsrb    xmm5, byte [r14 + r11 + 19], 6
	QUAD $0x13066c203a0f4366; BYTE $0x07       // pinsrb    xmm5, byte [r14 + r8 + 19], 7
	QUAD $0x13366c203a0f4166; BYTE $0x08       // pinsrb    xmm5, byte [r14 + rsi + 19], 8
	QUAD $0x130e6c203a0f4166; BYTE $0x09       // pinsrb    xmm5, byte [r14 + rcx + 19], 9
	QUAD $0x13166c203a0f4366; BYTE $0x0a       // pinsrb    xmm5, byte [r14 + r10 + 19], 10
	QUAD $0x13166c203a0f4166; BYTE $0x0b       // pinsrb    xmm5, byte [r14 + rdx + 19], 11
	QUAD $0x133e6c203a0f4166; BYTE $0x0c       // pinsrb    xmm5, byte [r14 + rdi + 19], 12
	QUAD $0x132e6c203a0f4366; BYTE $0x0d       // pinsrb    xmm5, byte [r14 + r13 + 19], 13
	QUAD $0x13266c203a0f4366; BYTE $0x0e       // pinsrb    xmm5, byte [r14 + r12 + 19], 14
	QUAD $0x131e6c203a0f4166; BYTE $0x0f       // pinsrb    xmm5, byte [r14 + rbx + 19], 15
	QUAD $0x143e5c203a0f4366; BYTE $0x03       // pinsrb    xmm3, byte [r14 + r15 + 20], 3
	QUAD $0x14065c203a0f4166; BYTE $0x04       // pinsrb    xmm3, byte [r14 + rax + 20], 4
	QUAD $0x140e5c203a0f4366; BYTE $0x05       // pinsrb    xmm3, byte [r14 + r9 + 20], 5
	QUAD $0x141e5c203a0f4366; BYTE $0x06       // pinsrb    xmm3, byte [r14 + r11 + 20], 6
	QUAD $0x14065c203a0f4366; BYTE $0x07       // pinsrb    xmm3, byte [r14 + r8 + 20], 7
	QUAD $0x14365c203a0f4166; BYTE $0x08       // pinsrb    xmm3, byte [r14 + rsi + 20], 8
	QUAD $0x140e5c203a0f4166; BYTE $0x09       // pinsrb    xmm3, byte [r14 + rcx + 20], 9
	QUAD $0x14165c203a0f4366; BYTE $0x0a       // pinsrb    xmm3, byte [r14 + r10 + 20], 10
	QUAD $0x14165c203a0f4166; BYTE $0x0b       // pinsrb    xmm3, byte [r14 + rdx + 20], 11
	QUAD $0x143e5c203a0f4166; BYTE $0x0c       // pinsrb    xmm3, byte [r14 + rdi + 20], 12
	QUAD $0x142e5c203a0f4366; BYTE $0x0d       // pinsrb    xmm3, byte [r14 + r13 + 20], 13
	QUAD $0x14265c203a0f4366; BYTE $0x0e       // pinsrb    xmm3, byte [r14 + r12 + 20], 14
	LONG $0x740f4166; BYTE $0xfe               // pcmpeqb    xmm7, xmm14
	QUAD $0x000110b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0xdf0f4166; BYTE $0xfe               // pandn    xmm7, xmm14
	QUAD $0x0000b024ac740f66; BYTE $0x00       // pcmpeqb    xmm5, oword [rsp + 176]
	QUAD $0x000120b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xdf0f4166; BYTE $0xee               // pandn    xmm5, xmm14
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0x141e5c203a0f4166; BYTE $0x0f       // pinsrb    xmm3, byte [r14 + rbx + 20], 15
	QUAD $0x00b024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xde               // pcmpeqb    xmm3, xmm14
	QUAD $0x00000130bd6f0f66                   // movdqa    xmm7, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xdfdf0f66                           // pandn    xmm3, xmm7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0xe5f80f66                           // psubb    xmm4, xmm5
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x153e54203a0f4366; BYTE $0x03       // pinsrb    xmm2, byte [r14 + r15 + 21], 3
	QUAD $0x150654203a0f4166; BYTE $0x04       // pinsrb    xmm2, byte [r14 + rax + 21], 4
	QUAD $0x150e54203a0f4366; BYTE $0x05       // pinsrb    xmm2, byte [r14 + r9 + 21], 5
	QUAD $0x151e54203a0f4366; BYTE $0x06       // pinsrb    xmm2, byte [r14 + r11 + 21], 6
	QUAD $0x150654203a0f4366; BYTE $0x07       // pinsrb    xmm2, byte [r14 + r8 + 21], 7
	QUAD $0x153654203a0f4166; BYTE $0x08       // pinsrb    xmm2, byte [r14 + rsi + 21], 8
	QUAD $0x150e54203a0f4166; BYTE $0x09       // pinsrb    xmm2, byte [r14 + rcx + 21], 9
	QUAD $0x151654203a0f4366; BYTE $0x0a       // pinsrb    xmm2, byte [r14 + r10 + 21], 10
	QUAD $0x151654203a0f4166; BYTE $0x0b       // pinsrb    xmm2, byte [r14 + rdx + 21], 11
	QUAD $0x153e54203a0f4166; BYTE $0x0c       // pinsrb    xmm2, byte [r14 + rdi + 21], 12
	QUAD $0x152e54203a0f4366; BYTE $0x0d       // pinsrb    xmm2, byte [r14 + r13 + 21], 13
	QUAD $0x152654203a0f4366; BYTE $0x0e       // pinsrb    xmm2, byte [r14 + r12 + 21], 14
	QUAD $0x151e54203a0f4166; BYTE $0x0f       // pinsrb    xmm2, byte [r14 + rbx + 21], 15
	QUAD $0x163e4c203a0f4366; BYTE $0x03       // pinsrb    xmm1, byte [r14 + r15 + 22], 3
	QUAD $0x16064c203a0f4166; BYTE $0x04       // pinsrb    xmm1, byte [r14 + rax + 22], 4
	QUAD $0x160e4c203a0f4366; BYTE $0x05       // pinsrb    xmm1, byte [r14 + r9 + 22], 5
	QUAD $0x161e4c203a0f4366; BYTE $0x06       // pinsrb    xmm1, byte [r14 + r11 + 22], 6
	QUAD $0x16064c203a0f4366; BYTE $0x07       // pinsrb    xmm1, byte [r14 + r8 + 22], 7
	QUAD $0x16364c203a0f4166; BYTE $0x08       // pinsrb    xmm1, byte [r14 + rsi + 22], 8
	QUAD $0x160e4c203a0f4166; BYTE $0x09       // pinsrb    xmm1, byte [r14 + rcx + 22], 9
	QUAD $0x16164c203a0f4366; BYTE $0x0a       // pinsrb    xmm1, byte [r14 + r10 + 22], 10
	QUAD $0x16164c203a0f4166; BYTE $0x0b       // pinsrb    xmm1, byte [r14 + rdx + 22], 11
	QUAD $0x163e4c203a0f4166; BYTE $0x0c       // pinsrb    xmm1, byte [r14 + rdi + 22], 12
	QUAD $0x162e4c203a0f4366; BYTE $0x0d       // pinsrb    xmm1, byte [r14 + r13 + 22], 13
	QUAD $0x16264c203a0f4366; BYTE $0x0e       // pinsrb    xmm1, byte [r14 + r12 + 22], 14
	QUAD $0x161e4c203a0f4166; BYTE $0x0f       // pinsrb    xmm1, byte [r14 + rbx + 22], 15
	QUAD $0x173e44203a0f4766; BYTE $0x03       // pinsrb    xmm8, byte [r14 + r15 + 23], 3
	QUAD $0x170644203a0f4566; BYTE $0x04       // pinsrb    xmm8, byte [r14 + rax + 23], 4
	QUAD $0x170e44203a0f4766; BYTE $0x05       // pinsrb    xmm8, byte [r14 + r9 + 23], 5
	QUAD $0x171e44203a0f4766; BYTE $0x06       // pinsrb    xmm8, byte [r14 + r11 + 23], 6
	QUAD $0x170644203a0f4766; BYTE $0x07       // pinsrb    xmm8, byte [r14 + r8 + 23], 7
	QUAD $0x173644203a0f4566; BYTE $0x08       // pinsrb    xmm8, byte [r14 + rsi + 23], 8
	QUAD $0x170e44203a0f4566; BYTE $0x09       // pinsrb    xmm8, byte [r14 + rcx + 23], 9
	QUAD $0x171644203a0f4766; BYTE $0x0a       // pinsrb    xmm8, byte [r14 + r10 + 23], 10
	QUAD $0x171644203a0f4566; BYTE $0x0b       // pinsrb    xmm8, byte [r14 + rdx + 23], 11
	QUAD $0x173e44203a0f4566; BYTE $0x0c       // pinsrb    xmm8, byte [r14 + rdi + 23], 12
	QUAD $0x172e44203a0f4766; BYTE $0x0d       // pinsrb    xmm8, byte [r14 + r13 + 23], 13
	QUAD $0x172644203a0f4766; BYTE $0x0e       // pinsrb    xmm8, byte [r14 + r12 + 23], 14
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140ad6f0f66                   // movdqa    xmm5, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0xd5df0f66                           // pandn    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xcfdf0f66                           // pandn    xmm1, xmm7
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x171e44203a0f4566; BYTE $0x0f       // pinsrb    xmm8, byte [r14 + rbx + 23], 15
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	LONG $0x656f0f66; BYTE $0x60               // movdqa    xmm4, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	QUAD $0x183e64203a0f4766; BYTE $0x03       // pinsrb    xmm12, byte [r14 + r15 + 24], 3
	QUAD $0x180664203a0f4566; BYTE $0x04       // pinsrb    xmm12, byte [r14 + rax + 24], 4
	QUAD $0x180e64203a0f4766; BYTE $0x05       // pinsrb    xmm12, byte [r14 + r9 + 24], 5
	QUAD $0x181e64203a0f4766; BYTE $0x06       // pinsrb    xmm12, byte [r14 + r11 + 24], 6
	QUAD $0x180664203a0f4766; BYTE $0x07       // pinsrb    xmm12, byte [r14 + r8 + 24], 7
	QUAD $0x183664203a0f4566; BYTE $0x08       // pinsrb    xmm12, byte [r14 + rsi + 24], 8
	QUAD $0x180e64203a0f4566; BYTE $0x09       // pinsrb    xmm12, byte [r14 + rcx + 24], 9
	QUAD $0x181664203a0f4766; BYTE $0x0a       // pinsrb    xmm12, byte [r14 + r10 + 24], 10
	QUAD $0x181664203a0f4566; BYTE $0x0b       // pinsrb    xmm12, byte [r14 + rdx + 24], 11
	QUAD $0x183e64203a0f4566; BYTE $0x0c       // pinsrb    xmm12, byte [r14 + rdi + 24], 12
	QUAD $0x182e64203a0f4766; BYTE $0x0d       // pinsrb    xmm12, byte [r14 + r13 + 24], 13
	QUAD $0x182664203a0f4766; BYTE $0x0e       // pinsrb    xmm12, byte [r14 + r12 + 24], 14
	QUAD $0x181e64203a0f4566; BYTE $0x0f       // pinsrb    xmm12, byte [r14 + rbx + 24], 15
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x193e6c203a0f4766; BYTE $0x03       // pinsrb    xmm13, byte [r14 + r15 + 25], 3
	QUAD $0x19066c203a0f4566; BYTE $0x04       // pinsrb    xmm13, byte [r14 + rax + 25], 4
	QUAD $0x190e6c203a0f4766; BYTE $0x05       // pinsrb    xmm13, byte [r14 + r9 + 25], 5
	QUAD $0x191e6c203a0f4766; BYTE $0x06       // pinsrb    xmm13, byte [r14 + r11 + 25], 6
	QUAD $0x19066c203a0f4766; BYTE $0x07       // pinsrb    xmm13, byte [r14 + r8 + 25], 7
	QUAD $0x19366c203a0f4566; BYTE $0x08       // pinsrb    xmm13, byte [r14 + rsi + 25], 8
	QUAD $0x190e6c203a0f4566; BYTE $0x09       // pinsrb    xmm13, byte [r14 + rcx + 25], 9
	QUAD $0x19166c203a0f4766; BYTE $0x0a       // pinsrb    xmm13, byte [r14 + r10 + 25], 10
	QUAD $0x19166c203a0f4566; BYTE $0x0b       // pinsrb    xmm13, byte [r14 + rdx + 25], 11
	QUAD $0x193e6c203a0f4566; BYTE $0x0c       // pinsrb    xmm13, byte [r14 + rdi + 25], 12
	QUAD $0x192e6c203a0f4766; BYTE $0x0d       // pinsrb    xmm13, byte [r14 + r13 + 25], 13
	QUAD $0x19266c203a0f4766; BYTE $0x0e       // pinsrb    xmm13, byte [r14 + r12 + 25], 14
	QUAD $0x191e6c203a0f4566; BYTE $0x0f       // pinsrb    xmm13, byte [r14 + rbx + 25], 15
	QUAD $0x1a3e44203a0f4366; BYTE $0x03       // pinsrb    xmm0, byte [r14 + r15 + 26], 3
	QUAD $0x1a0644203a0f4166; BYTE $0x04       // pinsrb    xmm0, byte [r14 + rax + 26], 4
	QUAD $0x1a0e44203a0f4366; BYTE $0x05       // pinsrb    xmm0, byte [r14 + r9 + 26], 5
	QUAD $0x1a1e44203a0f4366; BYTE $0x06       // pinsrb    xmm0, byte [r14 + r11 + 26], 6
	QUAD $0x1a0644203a0f4366; BYTE $0x07       // pinsrb    xmm0, byte [r14 + r8 + 26], 7
	QUAD $0x1a3644203a0f4166; BYTE $0x08       // pinsrb    xmm0, byte [r14 + rsi + 26], 8
	QUAD $0x1a0e44203a0f4166; BYTE $0x09       // pinsrb    xmm0, byte [r14 + rcx + 26], 9
	QUAD $0x1a1644203a0f4366; BYTE $0x0a       // pinsrb    xmm0, byte [r14 + r10 + 26], 10
	QUAD $0x1a1644203a0f4166; BYTE $0x0b       // pinsrb    xmm0, byte [r14 + rdx + 26], 11
	QUAD $0x1a3e44203a0f4166; BYTE $0x0c       // pinsrb    xmm0, byte [r14 + rdi + 26], 12
	QUAD $0x1a2e44203a0f4366; BYTE $0x0d       // pinsrb    xmm0, byte [r14 + r13 + 26], 13
	QUAD $0x1a2644203a0f4366; BYTE $0x0e       // pinsrb    xmm0, byte [r14 + r12 + 26], 14
	QUAD $0x1a1e44203a0f4166; BYTE $0x0f       // pinsrb    xmm0, byte [r14 + rbx + 26], 15
	QUAD $0x1b3e5c203a0f4766; BYTE $0x03       // pinsrb    xmm11, byte [r14 + r15 + 27], 3
	QUAD $0x1b065c203a0f4566; BYTE $0x04       // pinsrb    xmm11, byte [r14 + rax + 27], 4
	QUAD $0x1b0e5c203a0f4766; BYTE $0x05       // pinsrb    xmm11, byte [r14 + r9 + 27], 5
	QUAD $0x1b1e5c203a0f4766; BYTE $0x06       // pinsrb    xmm11, byte [r14 + r11 + 27], 6
	QUAD $0x1b065c203a0f4766; BYTE $0x07       // pinsrb    xmm11, byte [r14 + r8 + 27], 7
	QUAD $0x1b365c203a0f4566; BYTE $0x08       // pinsrb    xmm11, byte [r14 + rsi + 27], 8
	QUAD $0x1b0e5c203a0f4566; BYTE $0x09       // pinsrb    xmm11, byte [r14 + rcx + 27], 9
	QUAD $0x1b165c203a0f4766; BYTE $0x0a       // pinsrb    xmm11, byte [r14 + r10 + 27], 10
	QUAD $0x1b165c203a0f4566; BYTE $0x0b       // pinsrb    xmm11, byte [r14 + rdx + 27], 11
	QUAD $0x1b3e5c203a0f4566; BYTE $0x0c       // pinsrb    xmm11, byte [r14 + rdi + 27], 12
	QUAD $0x1b2e5c203a0f4766; BYTE $0x0d       // pinsrb    xmm11, byte [r14 + r13 + 27], 13
	QUAD $0x1b265c203a0f4766; BYTE $0x0e       // pinsrb    xmm11, byte [r14 + r12 + 27], 14
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xfc0f4566; BYTE $0xec               // paddb    xmm13, xmm12
	QUAD $0x1b1e5c203a0f4566; BYTE $0x0f       // pinsrb    xmm11, byte [r14 + rbx + 27], 15
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x0000011085df0f66                   // pandn    xmm0, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001209ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xeb0f4466; BYTE $0xd8               // por    xmm11, xmm0
	QUAD $0x1c3e7c203a0f4766; BYTE $0x03       // pinsrb    xmm15, byte [r14 + r15 + 28], 3
	QUAD $0x1d3e4c203a0f4766; BYTE $0x03       // pinsrb    xmm9, byte [r14 + r15 + 29], 3
	QUAD $0x1e3e54203a0f4766; BYTE $0x03       // pinsrb    xmm10, byte [r14 + r15 + 30], 3
	QUAD $0x1f3e74203a0f4366; BYTE $0x03       // pinsrb    xmm6, byte [r14 + r15 + 31], 3
	QUAD $0x1c067c203a0f4566; BYTE $0x04       // pinsrb    xmm15, byte [r14 + rax + 28], 4
	QUAD $0x1d064c203a0f4566; BYTE $0x04       // pinsrb    xmm9, byte [r14 + rax + 29], 4
	QUAD $0x1e0654203a0f4566; BYTE $0x04       // pinsrb    xmm10, byte [r14 + rax + 30], 4
	QUAD $0x1f0674203a0f4166; BYTE $0x04       // pinsrb    xmm6, byte [r14 + rax + 31], 4
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	QUAD $0x1c0e7c203a0f4766; BYTE $0x05       // pinsrb    xmm15, byte [r14 + r9 + 28], 5
	QUAD $0x1d0e4c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r9 + 29], 5
	QUAD $0x1e0e54203a0f4766; BYTE $0x05       // pinsrb    xmm10, byte [r14 + r9 + 30], 5
	QUAD $0x1f0e74203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r9 + 31], 5
	QUAD $0x1c1e7c203a0f4766; BYTE $0x06       // pinsrb    xmm15, byte [r14 + r11 + 28], 6
	QUAD $0x1d1e4c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r11 + 29], 6
	QUAD $0x1e1e54203a0f4766; BYTE $0x06       // pinsrb    xmm10, byte [r14 + r11 + 30], 6
	QUAD $0x1f1e74203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r11 + 31], 6
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x1c067c203a0f4766; BYTE $0x07       // pinsrb    xmm15, byte [r14 + r8 + 28], 7
	QUAD $0x1d064c203a0f4766; BYTE $0x07       // pinsrb    xmm9, byte [r14 + r8 + 29], 7
	QUAD $0x1e0654203a0f4766; BYTE $0x07       // pinsrb    xmm10, byte [r14 + r8 + 30], 7
	QUAD $0x1f0674203a0f4366; BYTE $0x07       // pinsrb    xmm6, byte [r14 + r8 + 31], 7
	WORD $0x8948; BYTE $0xf0                   // mov    rax, rsi
	QUAD $0x1c367c203a0f4566; BYTE $0x08       // pinsrb    xmm15, byte [r14 + rsi + 28], 8
	QUAD $0x1d364c203a0f4566; BYTE $0x08       // pinsrb    xmm9, byte [r14 + rsi + 29], 8
	QUAD $0x1e3654203a0f4566; BYTE $0x08       // pinsrb    xmm10, byte [r14 + rsi + 30], 8
	QUAD $0x1f3674203a0f4166; BYTE $0x08       // pinsrb    xmm6, byte [r14 + rsi + 31], 8
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x1c0e7c203a0f4566; BYTE $0x09       // pinsrb    xmm15, byte [r14 + rcx + 28], 9
	QUAD $0x1d0e4c203a0f4566; BYTE $0x09       // pinsrb    xmm9, byte [r14 + rcx + 29], 9
	QUAD $0x1e0e54203a0f4566; BYTE $0x09       // pinsrb    xmm10, byte [r14 + rcx + 30], 9
	QUAD $0x1f0e74203a0f4166; BYTE $0x09       // pinsrb    xmm6, byte [r14 + rcx + 31], 9
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x1c167c203a0f4766; BYTE $0x0a       // pinsrb    xmm15, byte [r14 + r10 + 28], 10
	QUAD $0x1d164c203a0f4766; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + r10 + 29], 10
	QUAD $0x1e1654203a0f4766; BYTE $0x0a       // pinsrb    xmm10, byte [r14 + r10 + 30], 10
	QUAD $0x1f1674203a0f4366; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + r10 + 31], 10
	WORD $0x8948; BYTE $0xd0                   // mov    rax, rdx
	QUAD $0x1c167c203a0f4566; BYTE $0x0b       // pinsrb    xmm15, byte [r14 + rdx + 28], 11
	QUAD $0x1d164c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rdx + 29], 11
	QUAD $0x1e1654203a0f4566; BYTE $0x0b       // pinsrb    xmm10, byte [r14 + rdx + 30], 11
	QUAD $0x1f1674203a0f4166; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + rdx + 31], 11
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	QUAD $0x1c3e7c203a0f4566; BYTE $0x0c       // pinsrb    xmm15, byte [r14 + rdi + 28], 12
	QUAD $0x1d3e4c203a0f4566; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + rdi + 29], 12
	QUAD $0x1e3e54203a0f4566; BYTE $0x0c       // pinsrb    xmm10, byte [r14 + rdi + 30], 12
	QUAD $0x1f3e74203a0f4166; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + rdi + 31], 12
	QUAD $0x1c2e7c203a0f4766; BYTE $0x0d       // pinsrb    xmm15, byte [r14 + r13 + 28], 13
	QUAD $0x1d2e4c203a0f4766; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + r13 + 29], 13
	QUAD $0x1e2e54203a0f4766; BYTE $0x0d       // pinsrb    xmm10, byte [r14 + r13 + 30], 13
	QUAD $0x1f2e74203a0f4366; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + r13 + 31], 13
	QUAD $0x1c267c203a0f4766; BYTE $0x0e       // pinsrb    xmm15, byte [r14 + r12 + 28], 14
	QUAD $0x1d264c203a0f4766; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + r12 + 29], 14
	QUAD $0x1e2654203a0f4766; BYTE $0x0e       // pinsrb    xmm10, byte [r14 + r12 + 30], 14
	QUAD $0x1f2674203a0f4366; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + r12 + 31], 14
	QUAD $0x1c1e7c203a0f4566; BYTE $0x0f       // pinsrb    xmm15, byte [r14 + rbx + 28], 15
	QUAD $0x1d1e4c203a0f4566; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + rbx + 29], 15
	QUAD $0x1e1e54203a0f4566; BYTE $0x0f       // pinsrb    xmm10, byte [r14 + rbx + 30], 15
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000130bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	QUAD $0x1f1e74203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rbx + 31], 15
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	LONG $0xdf0f4466; BYTE $0xcd               // pandn    xmm9, xmm5
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0xdf0f4466; BYTE $0xd7               // pandn    xmm10, xmm7
	LONG $0xeb0f4566; BYTE $0xd1               // por    xmm10, xmm9
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0xf4df0f66                           // pandn    xmm6, xmm4
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc6600f66                           // punpcklbw    xmm0, xmm6
	QUAD $0x0000f0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 240]
	LONG $0xcb6f0f66                           // movdqa    xmm1, xmm3
	QUAD $0x0000c024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 192]
	LONG $0xcc600f66                           // punpcklbw    xmm1, xmm4
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	LONG $0xd0610f66                           // punpcklwd    xmm2, xmm0
	LONG $0xc8690f66                           // punpckhwd    xmm1, xmm0
	LONG $0x680f4466; BYTE $0xc6               // punpckhbw    xmm8, xmm6
	LONG $0xdc680f66                           // punpckhbw    xmm3, xmm4
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xd8               // punpckhwd    xmm3, xmm8
	QUAD $0x000000a8248c8b48                   // mov    rcx, qword [rsp + 168]
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	LONG $0x5c7f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm3
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x4c7f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm1
	LONG $0x147f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm2
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB5_87
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	QUAD $0x000000e824943b4c                   // cmp    r10, qword [rsp + 232]
	QUAD $0x0000011024b48b4c                   // mov    r14, qword [rsp + 272]
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	JNE  LBB5_89
	JMP  LBB5_92

LBB5_67:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x014c; BYTE $0xf0             // add    rax, r14
	QUAD $0x0000011024848948             // mov    qword [rsp + 272], rax
	QUAD $0x000000e82494894c             // mov    qword [rsp + 232], r10
	LONG $0x24448b48; BYTE $0x08         // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a                     // lea    rax, [rax + 4*r10]
	LONG $0x24448948; BYTE $0x68         // mov    qword [rsp + 104], rax
	LONG $0x2444b60f; BYTE $0x40         // movzx    eax, byte [rsp + 64]
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x0000b0248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 176], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB5_68:
	QUAD $0x000000a824848948                   // mov    qword [rsp + 168], rax
	LONG $0x05e0c148                           // shl    rax, 5
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	LONG $0x24448948; BYTE $0x60               // mov    qword [rsp + 96], rax
	LONG $0x0cb60f41; BYTE $0x06               // movzx    ecx, byte [r14 + rax]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x4cb60f41; WORD $0x0106             // movzx    ecx, byte [r14 + rax + 1]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x4cb60f41; WORD $0x0206             // movzx    ecx, byte [r14 + rax + 2]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x4cb60f41; WORD $0x0306             // movzx    ecx, byte [r14 + rax + 3]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x4cb60f41; WORD $0x0406             // movzx    ecx, byte [r14 + rax + 4]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x4cb60f41; WORD $0x0506             // movzx    ecx, byte [r14 + rax + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x4cb60f41; WORD $0x0606             // movzx    ecx, byte [r14 + rax + 6]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x4cb60f41; WORD $0x0706             // movzx    ecx, byte [r14 + rax + 7]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x4cb60f41; WORD $0x0806             // movzx    ecx, byte [r14 + rax + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000f024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm0
	LONG $0x4cb60f41; WORD $0x0906             // movzx    ecx, byte [r14 + rax + 9]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x4cb60f41; WORD $0x0a06             // movzx    ecx, byte [r14 + rax + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x4cb60f41; WORD $0x0b06             // movzx    ecx, byte [r14 + rax + 11]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x4cb60f41; WORD $0x0c06             // movzx    ecx, byte [r14 + rax + 12]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000d024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm0
	LONG $0x4cb60f41; WORD $0x0d06             // movzx    ecx, byte [r14 + rax + 13]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x4cb60f41; WORD $0x0e06             // movzx    ecx, byte [r14 + rax + 14]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x4cb60f41; WORD $0x0f06             // movzx    ecx, byte [r14 + rax + 15]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x24448948; BYTE $0x38               // mov    qword [rsp + 56], rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	LONG $0x20cb8349                           // or    r11, 32
	LONG $0x245c894c; BYTE $0x10               // mov    qword [rsp + 16], r11
	LONG $0x40cd8349                           // or    r13, 64
	LONG $0x60cf8348                           // or    rdi, 96
	LONG $0x80cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 128
	LONG $0xa0cb8148; WORD $0x0000; BYTE $0x00 // or    rbx, 160
	LONG $0xc0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 192
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00c88149; WORD $0x0001; BYTE $0x00 // or    r8, 256
	LONG $0x20cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 288
	LONG $0x40ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 320
	LONG $0x24548948; BYTE $0x70               // mov    qword [rsp + 112], rdx
	LONG $0x60ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 352
	QUAD $0x0000009824b48948                   // mov    qword [rsp + 152], rsi
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	LONG $0x80c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 384
	LONG $0x244c8948; BYTE $0x60               // mov    qword [rsp + 96], rcx
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	LONG $0xa0ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 416
	LONG $0x24548948; BYTE $0x18               // mov    qword [rsp + 24], rdx
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	LONG $0xc0ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 448
	LONG $0x24548948; BYTE $0x20               // mov    qword [rsp + 32], rdx
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	LONG $0xe0ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 480
	LONG $0x24548948; BYTE $0x50               // mov    qword [rsp + 80], rdx
	QUAD $0x011e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r11], 1
	LONG $0x246c894c; BYTE $0x30               // mov    qword [rsp + 48], r13
	QUAD $0x022e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r13], 2
	LONG $0x247c8948; BYTE $0x28               // mov    qword [rsp + 40], rdi
	QUAD $0x033e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rdi], 3
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	QUAD $0x043e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r15], 4
	QUAD $0x00000080249c8948                   // mov    qword [rsp + 128], rbx
	QUAD $0x051e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rbx], 5
	QUAD $0x000000902494894c                   // mov    qword [rsp + 144], r10
	QUAD $0x061624203a0f4366                   // pinsrb    xmm4, byte [r14 + r10], 6
	LONG $0x244c894c; BYTE $0x58               // mov    qword [rsp + 88], r9
	QUAD $0x070e24203a0f4366                   // pinsrb    xmm4, byte [r14 + r9], 7
	LONG $0x2444894c; BYTE $0x48               // mov    qword [rsp + 72], r8
	QUAD $0x080624203a0f4366                   // pinsrb    xmm4, byte [r14 + r8], 8
	WORD $0x894d; BYTE $0xe0                   // mov    r8, r12
	QUAD $0x092624203a0f4366                   // pinsrb    xmm4, byte [r14 + r12], 9
	LONG $0x24648b4c; BYTE $0x70               // mov    r12, qword [rsp + 112]
	QUAD $0x0a2624203a0f4366                   // pinsrb    xmm4, byte [r14 + r12], 10
	QUAD $0x0b3624203a0f4166                   // pinsrb    xmm4, byte [r14 + rsi], 11
	QUAD $0x0c0e24203a0f4166                   // pinsrb    xmm4, byte [r14 + rcx], 12
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0d0624203a0f4166                   // pinsrb    xmm4, byte [r14 + rax], 13
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0e0624203a0f4166                   // pinsrb    xmm4, byte [r14 + rax], 14
	QUAD $0x0f1624203a0f4166                   // pinsrb    xmm4, byte [r14 + rdx], 15
	QUAD $0x011e5c203a0f4366; BYTE $0x01       // pinsrb    xmm3, byte [r14 + r11 + 1], 1
	QUAD $0x012e5c203a0f4366; BYTE $0x02       // pinsrb    xmm3, byte [r14 + r13 + 1], 2
	QUAD $0x013e5c203a0f4166; BYTE $0x03       // pinsrb    xmm3, byte [r14 + rdi + 1], 3
	QUAD $0x013e5c203a0f4366; BYTE $0x04       // pinsrb    xmm3, byte [r14 + r15 + 1], 4
	QUAD $0x011e5c203a0f4166; BYTE $0x05       // pinsrb    xmm3, byte [r14 + rbx + 1], 5
	QUAD $0x01165c203a0f4366; BYTE $0x06       // pinsrb    xmm3, byte [r14 + r10 + 1], 6
	QUAD $0x010e5c203a0f4366; BYTE $0x07       // pinsrb    xmm3, byte [r14 + r9 + 1], 7
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x012e5c203a0f4366; BYTE $0x08       // pinsrb    xmm3, byte [r14 + r13 + 1], 8
	QUAD $0x01065c203a0f4366; BYTE $0x09       // pinsrb    xmm3, byte [r14 + r8 + 1], 9
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x01265c203a0f4366; BYTE $0x0a       // pinsrb    xmm3, byte [r14 + r12 + 1], 10
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x01365c203a0f4166; BYTE $0x0b       // pinsrb    xmm3, byte [r14 + rsi + 1], 11
	QUAD $0x010e5c203a0f4166; BYTE $0x0c       // pinsrb    xmm3, byte [r14 + rcx + 1], 12
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x011e5c203a0f4366; BYTE $0x0d       // pinsrb    xmm3, byte [r14 + r11 + 1], 13
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x01065c203a0f4166; BYTE $0x0e       // pinsrb    xmm3, byte [r14 + rax + 1], 14
	QUAD $0x0000b0248c6f0f66; BYTE $0x00       // movdqa    xmm1, oword [rsp + 176]
	LONG $0xe1740f66                           // pcmpeqb    xmm4, xmm1
	QUAD $0x01165c203a0f4166; BYTE $0x0f       // pinsrb    xmm3, byte [r14 + rdx + 1], 15
	LONG $0xd9740f66                           // pcmpeqb    xmm3, xmm1
	QUAD $0x00000100856f0f66                   // movdqa    xmm0, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xdcfc0f66                           // paddb    xmm3, xmm4
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x74b60f41; WORD $0x1006             // movzx    esi, byte [r14 + rax + 16]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x02066c203a0f4166; BYTE $0x01       // pinsrb    xmm5, byte [r14 + rax + 2], 1
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x02266c203a0f4366; BYTE $0x02       // pinsrb    xmm5, byte [r14 + r12 + 2], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x02066c203a0f4166; BYTE $0x03       // pinsrb    xmm5, byte [r14 + rax + 2], 3
	LONG $0x245c8b48; BYTE $0x78               // mov    rbx, qword [rsp + 120]
	QUAD $0x021e6c203a0f4166; BYTE $0x04       // pinsrb    xmm5, byte [r14 + rbx + 2], 4
	QUAD $0x0000008024948b4c                   // mov    r10, qword [rsp + 128]
	QUAD $0x02166c203a0f4366; BYTE $0x05       // pinsrb    xmm5, byte [r14 + r10 + 2], 5
	QUAD $0x00000090248c8b4c                   // mov    r9, qword [rsp + 144]
	QUAD $0x020e6c203a0f4366; BYTE $0x06       // pinsrb    xmm5, byte [r14 + r9 + 2], 6
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x02066c203a0f4366; BYTE $0x07       // pinsrb    xmm5, byte [r14 + r8 + 2], 7
	QUAD $0x022e6c203a0f4366; BYTE $0x08       // pinsrb    xmm5, byte [r14 + r13 + 2], 8
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x023e6c203a0f4166; BYTE $0x09       // pinsrb    xmm5, byte [r14 + rdi + 2], 9
	QUAD $0x023e6c203a0f4366; BYTE $0x0a       // pinsrb    xmm5, byte [r14 + r15 + 2], 10
	QUAD $0x0000009824948b48                   // mov    rdx, qword [rsp + 152]
	QUAD $0x02166c203a0f4166; BYTE $0x0b       // pinsrb    xmm5, byte [r14 + rdx + 2], 11
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x023e6c203a0f4166; BYTE $0x0c       // pinsrb    xmm5, byte [r14 + rdi + 2], 12
	QUAD $0x021e6c203a0f4366; BYTE $0x0d       // pinsrb    xmm5, byte [r14 + r11 + 2], 13
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x02366c203a0f4166; BYTE $0x0e       // pinsrb    xmm5, byte [r14 + rsi + 2], 14
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x021e6c203a0f4366; BYTE $0x0f       // pinsrb    xmm5, byte [r14 + r11 + 2], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x03067c203a0f4166; BYTE $0x01       // pinsrb    xmm7, byte [r14 + rax + 3], 1
	QUAD $0x03267c203a0f4366; BYTE $0x02       // pinsrb    xmm7, byte [r14 + r12 + 3], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x03067c203a0f4166; BYTE $0x03       // pinsrb    xmm7, byte [r14 + rax + 3], 3
	QUAD $0x031e7c203a0f4166; BYTE $0x04       // pinsrb    xmm7, byte [r14 + rbx + 3], 4
	QUAD $0x03167c203a0f4366; BYTE $0x05       // pinsrb    xmm7, byte [r14 + r10 + 3], 5
	QUAD $0x030e7c203a0f4366; BYTE $0x06       // pinsrb    xmm7, byte [r14 + r9 + 3], 6
	QUAD $0x03067c203a0f4366; BYTE $0x07       // pinsrb    xmm7, byte [r14 + r8 + 3], 7
	QUAD $0x032e7c203a0f4366; BYTE $0x08       // pinsrb    xmm7, byte [r14 + r13 + 3], 8
	QUAD $0x030e7c203a0f4166; BYTE $0x09       // pinsrb    xmm7, byte [r14 + rcx + 3], 9
	QUAD $0x033e7c203a0f4366; BYTE $0x0a       // pinsrb    xmm7, byte [r14 + r15 + 3], 10
	QUAD $0x03167c203a0f4166; BYTE $0x0b       // pinsrb    xmm7, byte [r14 + rdx + 3], 11
	QUAD $0x033e7c203a0f4166; BYTE $0x0c       // pinsrb    xmm7, byte [r14 + rdi + 3], 12
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x03067c203a0f4166; BYTE $0x0d       // pinsrb    xmm7, byte [r14 + rax + 3], 13
	QUAD $0x03367c203a0f4166; BYTE $0x0e       // pinsrb    xmm7, byte [r14 + rsi + 3], 14
	QUAD $0x031e7c203a0f4366; BYTE $0x0f       // pinsrb    xmm7, byte [r14 + r11 + 3], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x04064c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rax + 4], 1
	QUAD $0x04264c203a0f4766; BYTE $0x02       // pinsrb    xmm9, byte [r14 + r12 + 4], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x04064c203a0f4566; BYTE $0x03       // pinsrb    xmm9, byte [r14 + rax + 4], 3
	QUAD $0x041e4c203a0f4566; BYTE $0x04       // pinsrb    xmm9, byte [r14 + rbx + 4], 4
	QUAD $0x04164c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r10 + 4], 5
	QUAD $0x040e4c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r9 + 4], 6
	QUAD $0x04064c203a0f4766; BYTE $0x07       // pinsrb    xmm9, byte [r14 + r8 + 4], 7
	QUAD $0x042e4c203a0f4766; BYTE $0x08       // pinsrb    xmm9, byte [r14 + r13 + 4], 8
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x040e4c203a0f4566; BYTE $0x09       // pinsrb    xmm9, byte [r14 + rcx + 4], 9
	QUAD $0x043e4c203a0f4766; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + r15 + 4], 10
	QUAD $0x04164c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rdx + 4], 11
	QUAD $0x043e4c203a0f4566; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + rdi + 4], 12
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x042e4c203a0f4766; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + r13 + 4], 13
	QUAD $0x04364c203a0f4566; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + rsi + 4], 14
	QUAD $0x041e4c203a0f4766; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + r11 + 4], 15
	LONG $0xe9740f66                           // pcmpeqb    xmm5, xmm1
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xf9740f66                           // pcmpeqb    xmm7, xmm1
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xf8df0f66                           // pandn    xmm7, xmm0
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x245c8b4c; BYTE $0x38               // mov    r11, qword [rsp + 56]
	LONG $0x74b60f43; WORD $0x111e             // movzx    esi, byte [r14 + r11 + 17]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x740f4466; BYTE $0xc9               // pcmpeqb    xmm9, xmm1
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xdf0f4466; BYTE $0xc8               // pandn    xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0x74b60f43; WORD $0x121e             // movzx    esi, byte [r14 + r11 + 18]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xd8f80f66                           // psubb    xmm3, xmm0
	LONG $0xeb0f4466; BYTE $0xcb               // por    xmm9, xmm3
	LONG $0x74b60f43; WORD $0x131e             // movzx    esi, byte [r14 + r11 + 19]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x053654203a0f4166; BYTE $0x01       // pinsrb    xmm2, byte [r14 + rsi + 5], 1
	QUAD $0x052654203a0f4366; BYTE $0x02       // pinsrb    xmm2, byte [r14 + r12 + 5], 2
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x053e54203a0f4366; BYTE $0x03       // pinsrb    xmm2, byte [r14 + r15 + 5], 3
	QUAD $0x051e54203a0f4166; BYTE $0x04       // pinsrb    xmm2, byte [r14 + rbx + 5], 4
	QUAD $0x051654203a0f4366; BYTE $0x05       // pinsrb    xmm2, byte [r14 + r10 + 5], 5
	QUAD $0x050e54203a0f4366; BYTE $0x06       // pinsrb    xmm2, byte [r14 + r9 + 5], 6
	QUAD $0x050654203a0f4366; BYTE $0x07       // pinsrb    xmm2, byte [r14 + r8 + 5], 7
	QUAD $0x050654203a0f4166; BYTE $0x08       // pinsrb    xmm2, byte [r14 + rax + 5], 8
	QUAD $0x00000088248c8948                   // mov    qword [rsp + 136], rcx
	QUAD $0x050e54203a0f4166; BYTE $0x09       // pinsrb    xmm2, byte [r14 + rcx + 5], 9
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x050654203a0f4166; BYTE $0x0a       // pinsrb    xmm2, byte [r14 + rax + 5], 10
	QUAD $0x051654203a0f4166; BYTE $0x0b       // pinsrb    xmm2, byte [r14 + rdx + 5], 11
	QUAD $0x053e54203a0f4166; BYTE $0x0c       // pinsrb    xmm2, byte [r14 + rdi + 5], 12
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x052e54203a0f4366; BYTE $0x0d       // pinsrb    xmm2, byte [r14 + r13 + 5], 13
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x050654203a0f4166; BYTE $0x0e       // pinsrb    xmm2, byte [r14 + rax + 5], 14
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x052e54203a0f4366; BYTE $0x0f       // pinsrb    xmm2, byte [r14 + r13 + 5], 15
	QUAD $0x063644203a0f4566; BYTE $0x01       // pinsrb    xmm8, byte [r14 + rsi + 6], 1
	QUAD $0x062644203a0f4766; BYTE $0x02       // pinsrb    xmm8, byte [r14 + r12 + 6], 2
	QUAD $0x063e44203a0f4766; BYTE $0x03       // pinsrb    xmm8, byte [r14 + r15 + 6], 3
	QUAD $0x061e44203a0f4566; BYTE $0x04       // pinsrb    xmm8, byte [r14 + rbx + 6], 4
	QUAD $0x061644203a0f4766; BYTE $0x05       // pinsrb    xmm8, byte [r14 + r10 + 6], 5
	QUAD $0x060e44203a0f4766; BYTE $0x06       // pinsrb    xmm8, byte [r14 + r9 + 6], 6
	QUAD $0x060644203a0f4766; BYTE $0x07       // pinsrb    xmm8, byte [r14 + r8 + 6], 7
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x060644203a0f4566; BYTE $0x08       // pinsrb    xmm8, byte [r14 + rax + 6], 8
	QUAD $0x060e44203a0f4566; BYTE $0x09       // pinsrb    xmm8, byte [r14 + rcx + 6], 9
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x060644203a0f4566; BYTE $0x0a       // pinsrb    xmm8, byte [r14 + rax + 6], 10
	QUAD $0x061644203a0f4566; BYTE $0x0b       // pinsrb    xmm8, byte [r14 + rdx + 6], 11
	QUAD $0x063e44203a0f4566; BYTE $0x0c       // pinsrb    xmm8, byte [r14 + rdi + 6], 12
	QUAD $0x061e44203a0f4766; BYTE $0x0d       // pinsrb    xmm8, byte [r14 + r11 + 6], 13
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x060644203a0f4566; BYTE $0x0e       // pinsrb    xmm8, byte [r14 + rax + 6], 14
	QUAD $0x062e44203a0f4766; BYTE $0x0f       // pinsrb    xmm8, byte [r14 + r13 + 6], 15
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x073674203a0f4566; BYTE $0x01       // pinsrb    xmm14, byte [r14 + rsi + 7], 1
	QUAD $0x072674203a0f4766; BYTE $0x02       // pinsrb    xmm14, byte [r14 + r12 + 7], 2
	QUAD $0x073e74203a0f4766; BYTE $0x03       // pinsrb    xmm14, byte [r14 + r15 + 7], 3
	QUAD $0x071e74203a0f4566; BYTE $0x04       // pinsrb    xmm14, byte [r14 + rbx + 7], 4
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x071674203a0f4766; BYTE $0x05       // pinsrb    xmm14, byte [r14 + r10 + 7], 5
	QUAD $0x070e74203a0f4766; BYTE $0x06       // pinsrb    xmm14, byte [r14 + r9 + 7], 6
	QUAD $0x070674203a0f4766; BYTE $0x07       // pinsrb    xmm14, byte [r14 + r8 + 7], 7
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x072e74203a0f4766; BYTE $0x08       // pinsrb    xmm14, byte [r14 + r13 + 7], 8
	QUAD $0x070e74203a0f4566; BYTE $0x09       // pinsrb    xmm14, byte [r14 + rcx + 7], 9
	LONG $0x247c8b4c; BYTE $0x70               // mov    r15, qword [rsp + 112]
	QUAD $0x073e74203a0f4766; BYTE $0x0a       // pinsrb    xmm14, byte [r14 + r15 + 7], 10
	QUAD $0x071674203a0f4566; BYTE $0x0b       // pinsrb    xmm14, byte [r14 + rdx + 7], 11
	QUAD $0x073e74203a0f4566; BYTE $0x0c       // pinsrb    xmm14, byte [r14 + rdi + 7], 12
	QUAD $0x071e74203a0f4766; BYTE $0x0d       // pinsrb    xmm14, byte [r14 + r11 + 7], 13
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x070e74203a0f4566; BYTE $0x0e       // pinsrb    xmm14, byte [r14 + rcx + 7], 14
	LONG $0x6f0f4166; BYTE $0xce               // movdqa    xmm1, xmm14
	QUAD $0x00b024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0xd0df0f66                           // pandn    xmm2, xmm0
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xdf0f4466; BYTE $0xc0               // pandn    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	LONG $0x74b60f43; WORD $0x1406             // movzx    esi, byte [r14 + r8 + 20]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	QUAD $0x07064c203a0f4166; BYTE $0x0f       // pinsrb    xmm1, byte [r14 + rax + 7], 15
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xc8df0f66                           // pandn    xmm1, xmm0
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	LONG $0x74b60f43; WORD $0x1506             // movzx    esi, byte [r14 + r8 + 21]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	QUAD $0x0000f024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 240]
	LONG $0x245c8b4c; BYTE $0x10               // mov    r11, qword [rsp + 16]
	QUAD $0x081e44203a0f4366; BYTE $0x01       // pinsrb    xmm0, byte [r14 + r11 + 8], 1
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x081e44203a0f4166; BYTE $0x02       // pinsrb    xmm0, byte [r14 + rbx + 8], 2
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x083e44203a0f4166; BYTE $0x03       // pinsrb    xmm0, byte [r14 + rdi + 8], 3
	QUAD $0x082644203a0f4366; BYTE $0x04       // pinsrb    xmm0, byte [r14 + r12 + 8], 4
	WORD $0x894c; BYTE $0xe2                   // mov    rdx, r12
	QUAD $0x081644203a0f4366; BYTE $0x05       // pinsrb    xmm0, byte [r14 + r10 + 8], 5
	QUAD $0x0000009024b48b48                   // mov    rsi, qword [rsp + 144]
	QUAD $0x083644203a0f4166; BYTE $0x06       // pinsrb    xmm0, byte [r14 + rsi + 8], 6
	QUAD $0x080e44203a0f4366; BYTE $0x07       // pinsrb    xmm0, byte [r14 + r9 + 8], 7
	QUAD $0x082e44203a0f4366; BYTE $0x08       // pinsrb    xmm0, byte [r14 + r13 + 8], 8
	QUAD $0x0000008824b48b48                   // mov    rsi, qword [rsp + 136]
	QUAD $0x083644203a0f4166; BYTE $0x09       // pinsrb    xmm0, byte [r14 + rsi + 8], 9
	QUAD $0x083e44203a0f4366; BYTE $0x0a       // pinsrb    xmm0, byte [r14 + r15 + 8], 10
	QUAD $0x00000098248c8b4c                   // mov    r9, qword [rsp + 152]
	QUAD $0x080e44203a0f4366; BYTE $0x0b       // pinsrb    xmm0, byte [r14 + r9 + 8], 11
	LONG $0x24648b4c; BYTE $0x60               // mov    r12, qword [rsp + 96]
	QUAD $0x082644203a0f4366; BYTE $0x0c       // pinsrb    xmm0, byte [r14 + r12 + 8], 12
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x083644203a0f4166; BYTE $0x0d       // pinsrb    xmm0, byte [r14 + rsi + 8], 13
	QUAD $0x080e44203a0f4166; BYTE $0x0e       // pinsrb    xmm0, byte [r14 + rcx + 8], 14
	QUAD $0x080644203a0f4166; BYTE $0x0f       // pinsrb    xmm0, byte [r14 + rax + 8], 15
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	QUAD $0x0000f0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm1
	LONG $0x74b60f43; WORD $0x1606             // movzx    esi, byte [r14 + r8 + 22]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x091e5c203a0f4766; BYTE $0x01       // pinsrb    xmm11, byte [r14 + r11 + 9], 1
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x091e5c203a0f4566; BYTE $0x02       // pinsrb    xmm11, byte [r14 + rbx + 9], 2
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	QUAD $0x093e5c203a0f4566; BYTE $0x03       // pinsrb    xmm11, byte [r14 + rdi + 9], 3
	QUAD $0x09165c203a0f4566; BYTE $0x04       // pinsrb    xmm11, byte [r14 + rdx + 9], 4
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x090e5c203a0f4566; BYTE $0x05       // pinsrb    xmm11, byte [r14 + rcx + 9], 5
	QUAD $0x00000090249c8b4c                   // mov    r11, qword [rsp + 144]
	QUAD $0x091e5c203a0f4766; BYTE $0x06       // pinsrb    xmm11, byte [r14 + r11 + 9], 6
	LONG $0x24748b48; BYTE $0x58               // mov    rsi, qword [rsp + 88]
	QUAD $0x09365c203a0f4566; BYTE $0x07       // pinsrb    xmm11, byte [r14 + rsi + 9], 7
	QUAD $0x092e5c203a0f4766; BYTE $0x08       // pinsrb    xmm11, byte [r14 + r13 + 9], 8
	QUAD $0x00000088248c8b48                   // mov    rcx, qword [rsp + 136]
	QUAD $0x090e5c203a0f4566; BYTE $0x09       // pinsrb    xmm11, byte [r14 + rcx + 9], 9
	QUAD $0x093e5c203a0f4766; BYTE $0x0a       // pinsrb    xmm11, byte [r14 + r15 + 9], 10
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	QUAD $0x090e5c203a0f4766; BYTE $0x0b       // pinsrb    xmm11, byte [r14 + r9 + 9], 11
	WORD $0x894c; BYTE $0xe7                   // mov    rdi, r12
	QUAD $0x09265c203a0f4766; BYTE $0x0c       // pinsrb    xmm11, byte [r14 + r12 + 9], 12
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x091e5c203a0f4566; BYTE $0x0d       // pinsrb    xmm11, byte [r14 + rbx + 9], 13
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x09065c203a0f4766; BYTE $0x0e       // pinsrb    xmm11, byte [r14 + r8 + 9], 14
	LONG $0x244c8b4c; BYTE $0x50               // mov    r9, qword [rsp + 80]
	QUAD $0x090e5c203a0f4766; BYTE $0x0f       // pinsrb    xmm11, byte [r14 + r9 + 9], 15
	QUAD $0x0a1664203a0f4766; BYTE $0x01       // pinsrb    xmm12, byte [r14 + r10 + 10], 1
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x0a1664203a0f4766; BYTE $0x02       // pinsrb    xmm12, byte [r14 + r10 + 10], 2
	QUAD $0x0a0664203a0f4566; BYTE $0x03       // pinsrb    xmm12, byte [r14 + rax + 10], 3
	LONG $0x24648b4c; BYTE $0x78               // mov    r12, qword [rsp + 120]
	QUAD $0x0a2664203a0f4766; BYTE $0x04       // pinsrb    xmm12, byte [r14 + r12 + 10], 4
	QUAD $0x00000080249c8b48                   // mov    rbx, qword [rsp + 128]
	QUAD $0x0a1e64203a0f4566; BYTE $0x05       // pinsrb    xmm12, byte [r14 + rbx + 10], 5
	QUAD $0x0a1e64203a0f4766; BYTE $0x06       // pinsrb    xmm12, byte [r14 + r11 + 10], 6
	QUAD $0x0a3664203a0f4566; BYTE $0x07       // pinsrb    xmm12, byte [r14 + rsi + 10], 7
	QUAD $0x0a2e64203a0f4766; BYTE $0x08       // pinsrb    xmm12, byte [r14 + r13 + 10], 8
	QUAD $0x0a0e64203a0f4566; BYTE $0x09       // pinsrb    xmm12, byte [r14 + rcx + 10], 9
	QUAD $0x0a3e64203a0f4766; BYTE $0x0a       // pinsrb    xmm12, byte [r14 + r15 + 10], 10
	QUAD $0x0a1664203a0f4566; BYTE $0x0b       // pinsrb    xmm12, byte [r14 + rdx + 10], 11
	QUAD $0x0a3e64203a0f4566; BYTE $0x0c       // pinsrb    xmm12, byte [r14 + rdi + 10], 12
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0a1e64203a0f4566; BYTE $0x0d       // pinsrb    xmm12, byte [r14 + rbx + 10], 13
	QUAD $0x0a0664203a0f4766; BYTE $0x0e       // pinsrb    xmm12, byte [r14 + r8 + 10], 14
	QUAD $0x0a0e64203a0f4766; BYTE $0x0f       // pinsrb    xmm12, byte [r14 + r9 + 10], 15
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0b1e6c203a0f4566; BYTE $0x01       // pinsrb    xmm13, byte [r14 + rbx + 11], 1
	QUAD $0x0b166c203a0f4766; BYTE $0x02       // pinsrb    xmm13, byte [r14 + r10 + 11], 2
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	QUAD $0x0b066c203a0f4566; BYTE $0x03       // pinsrb    xmm13, byte [r14 + rax + 11], 3
	LONG $0x24548b4c; BYTE $0x78               // mov    r10, qword [rsp + 120]
	QUAD $0x0b166c203a0f4766; BYTE $0x04       // pinsrb    xmm13, byte [r14 + r10 + 11], 4
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x0b066c203a0f4566; BYTE $0x05       // pinsrb    xmm13, byte [r14 + rax + 11], 5
	QUAD $0x0b1e6c203a0f4766; BYTE $0x06       // pinsrb    xmm13, byte [r14 + r11 + 11], 6
	QUAD $0x0b366c203a0f4566; BYTE $0x07       // pinsrb    xmm13, byte [r14 + rsi + 11], 7
	QUAD $0x0b2e6c203a0f4766; BYTE $0x08       // pinsrb    xmm13, byte [r14 + r13 + 11], 8
	QUAD $0x0b0e6c203a0f4566; BYTE $0x09       // pinsrb    xmm13, byte [r14 + rcx + 11], 9
	QUAD $0x0b3e6c203a0f4766; BYTE $0x0a       // pinsrb    xmm13, byte [r14 + r15 + 11], 10
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	QUAD $0x0b166c203a0f4566; BYTE $0x0b       // pinsrb    xmm13, byte [r14 + rdx + 11], 11
	QUAD $0x0b3e6c203a0f4566; BYTE $0x0c       // pinsrb    xmm13, byte [r14 + rdi + 11], 12
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0b2e6c203a0f4766; BYTE $0x0d       // pinsrb    xmm13, byte [r14 + r13 + 11], 13
	QUAD $0x0b066c203a0f4766; BYTE $0x0e       // pinsrb    xmm13, byte [r14 + r8 + 11], 14
	QUAD $0x0b0e6c203a0f4766; BYTE $0x0f       // pinsrb    xmm13, byte [r14 + r9 + 11], 15
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001009ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xfc0f4466; BYTE $0xd8               // paddb    xmm11, xmm0
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x74b60f41; WORD $0x1706             // movzx    esi, byte [r14 + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x000110a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x74b60f41; WORD $0x1806             // movzx    esi, byte [r14 + rax + 24]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x00d0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 208]
	QUAD $0x0c1e4c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rbx + 12], 1
	QUAD $0x0c264c203a0f4766; BYTE $0x02       // pinsrb    xmm9, byte [r14 + r12 + 12], 2
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x0c3e4c203a0f4766; BYTE $0x03       // pinsrb    xmm9, byte [r14 + r15 + 12], 3
	WORD $0x894c; BYTE $0xd3                   // mov    rbx, r10
	QUAD $0x0c164c203a0f4766; BYTE $0x04       // pinsrb    xmm9, byte [r14 + r10 + 12], 4
	QUAD $0x0000008024948b4c                   // mov    r10, qword [rsp + 128]
	QUAD $0x0c164c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r10 + 12], 5
	WORD $0x894d; BYTE $0xd9                   // mov    r9, r11
	QUAD $0x0c1e4c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r11 + 12], 6
	LONG $0x245c8b4c; BYTE $0x58               // mov    r11, qword [rsp + 88]
	QUAD $0x0c1e4c203a0f4766; BYTE $0x07       // pinsrb    xmm9, byte [r14 + r11 + 12], 7
	LONG $0x24448b4c; BYTE $0x48               // mov    r8, qword [rsp + 72]
	QUAD $0x0c064c203a0f4766; BYTE $0x08       // pinsrb    xmm9, byte [r14 + r8 + 12], 8
	QUAD $0x0000008824b48b48                   // mov    rsi, qword [rsp + 136]
	QUAD $0x0c364c203a0f4566; BYTE $0x09       // pinsrb    xmm9, byte [r14 + rsi + 12], 9
	QUAD $0x0c0e4c203a0f4566; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + rcx + 12], 10
	QUAD $0x0c164c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rdx + 12], 11
	QUAD $0x0c3e4c203a0f4566; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + rdi + 12], 12
	QUAD $0x0c2e4c203a0f4766; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + r13 + 12], 13
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0c064c203a0f4566; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + rax + 12], 14
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0c064c203a0f4566; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + rax + 12], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d0674203a0f4166; BYTE $0x01       // pinsrb    xmm6, byte [r14 + rax + 13], 1
	QUAD $0x0d2674203a0f4366; BYTE $0x02       // pinsrb    xmm6, byte [r14 + r12 + 13], 2
	QUAD $0x0d3e74203a0f4366; BYTE $0x03       // pinsrb    xmm6, byte [r14 + r15 + 13], 3
	QUAD $0x0d1e74203a0f4166; BYTE $0x04       // pinsrb    xmm6, byte [r14 + rbx + 13], 4
	QUAD $0x0d1674203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r10 + 13], 5
	QUAD $0x0d0e74203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r9 + 13], 6
	QUAD $0x0d1e74203a0f4366; BYTE $0x07       // pinsrb    xmm6, byte [r14 + r11 + 13], 7
	QUAD $0x0d0674203a0f4366; BYTE $0x08       // pinsrb    xmm6, byte [r14 + r8 + 13], 8
	QUAD $0x0d3674203a0f4166; BYTE $0x09       // pinsrb    xmm6, byte [r14 + rsi + 13], 9
	QUAD $0x0d0e74203a0f4166; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + rcx + 13], 10
	QUAD $0x0d1674203a0f4166; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + rdx + 13], 11
	QUAD $0x0d3e74203a0f4166; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + rdi + 13], 12
	QUAD $0x0d2e74203a0f4366; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + r13 + 13], 13
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0d2e74203a0f4366; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + r13 + 13], 14
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0d0674203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rax + 13], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e067c203a0f4566; BYTE $0x01       // pinsrb    xmm15, byte [r14 + rax + 14], 1
	QUAD $0x0e267c203a0f4766; BYTE $0x02       // pinsrb    xmm15, byte [r14 + r12 + 14], 2
	QUAD $0x0e3e7c203a0f4766; BYTE $0x03       // pinsrb    xmm15, byte [r14 + r15 + 14], 3
	QUAD $0x0e1e7c203a0f4566; BYTE $0x04       // pinsrb    xmm15, byte [r14 + rbx + 14], 4
	QUAD $0x0e167c203a0f4766; BYTE $0x05       // pinsrb    xmm15, byte [r14 + r10 + 14], 5
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	QUAD $0x0e0e7c203a0f4766; BYTE $0x06       // pinsrb    xmm15, byte [r14 + r9 + 14], 6
	WORD $0x894d; BYTE $0xca                   // mov    r10, r9
	QUAD $0x0e1e7c203a0f4766; BYTE $0x07       // pinsrb    xmm15, byte [r14 + r11 + 14], 7
	WORD $0x894d; BYTE $0xd9                   // mov    r9, r11
	QUAD $0x0e067c203a0f4766; BYTE $0x08       // pinsrb    xmm15, byte [r14 + r8 + 14], 8
	QUAD $0x0e367c203a0f4566; BYTE $0x09       // pinsrb    xmm15, byte [r14 + rsi + 14], 9
	QUAD $0x0e0e7c203a0f4566; BYTE $0x0a       // pinsrb    xmm15, byte [r14 + rcx + 14], 10
	WORD $0x8949; BYTE $0xcb                   // mov    r11, rcx
	QUAD $0x0e167c203a0f4566; BYTE $0x0b       // pinsrb    xmm15, byte [r14 + rdx + 14], 11
	QUAD $0x0e3e7c203a0f4566; BYTE $0x0c       // pinsrb    xmm15, byte [r14 + rdi + 14], 12
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0e1e7c203a0f4566; BYTE $0x0d       // pinsrb    xmm15, byte [r14 + rbx + 14], 13
	QUAD $0x0e2e7c203a0f4766; BYTE $0x0e       // pinsrb    xmm15, byte [r14 + r13 + 14], 14
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	QUAD $0x0001308ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xeb0f4566; BYTE $0xcd               // por    xmm9, xmm13
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	LONG $0x74b60f41; WORD $0x190e             // movzx    esi, byte [r14 + rcx + 25]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	QUAD $0x0001609df80f4466; BYTE $0x00       // psubb    xmm11, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xeb0f4566; BYTE $0xcb               // por    xmm9, xmm11
	LONG $0x74b60f41; WORD $0x1a0e             // movzx    esi, byte [r14 + rcx + 26]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0e067c203a0f4566; BYTE $0x0f       // pinsrb    xmm15, byte [r14 + rax + 14], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	QUAD $0x00000140b5df0f66                   // pandn    xmm6, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000150bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xeb0f4466; BYTE $0xfe               // por    xmm15, xmm6
	LONG $0x74b60f41; WORD $0x1b0e             // movzx    esi, byte [r14 + rcx + 27]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000c024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 192]
	LONG $0x247c8b4c; BYTE $0x10               // mov    r15, qword [rsp + 16]
	QUAD $0x0f3e74203a0f4366; BYTE $0x01       // pinsrb    xmm6, byte [r14 + r15 + 15], 1
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x0f0e74203a0f4166; BYTE $0x02       // pinsrb    xmm6, byte [r14 + rcx + 15], 2
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0f3e74203a0f4166; BYTE $0x03       // pinsrb    xmm6, byte [r14 + rdi + 15], 3
	LONG $0x24448b4c; BYTE $0x78               // mov    r8, qword [rsp + 120]
	QUAD $0x0f0674203a0f4366; BYTE $0x04       // pinsrb    xmm6, byte [r14 + r8 + 15], 4
	QUAD $0x0f2674203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r12 + 15], 5
	WORD $0x894c; BYTE $0xd1                   // mov    rcx, r10
	QUAD $0x0f1674203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r10 + 15], 6
	QUAD $0x0f0e74203a0f4366; BYTE $0x07       // pinsrb    xmm6, byte [r14 + r9 + 15], 7
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x0f3674203a0f4166; BYTE $0x08       // pinsrb    xmm6, byte [r14 + rsi + 15], 8
	QUAD $0x00000088248c8b4c                   // mov    r9, qword [rsp + 136]
	QUAD $0x0f0e74203a0f4366; BYTE $0x09       // pinsrb    xmm6, byte [r14 + r9 + 15], 9
	QUAD $0x0f1e74203a0f4366; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + r11 + 15], 10
	QUAD $0x0000009824948b4c                   // mov    r10, qword [rsp + 152]
	QUAD $0x0f1674203a0f4366; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + r10 + 15], 11
	QUAD $0x0f1674203a0f4166; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + rdx + 15], 12
	QUAD $0x0f1e74203a0f4166; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + rbx + 15], 13
	QUAD $0x0f2e74203a0f4366; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + r13 + 15], 14
	QUAD $0x0f0674203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rax + 15], 15
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0x75df0f66; BYTE $0x60               // pandn    xmm6, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x74b60f41; WORD $0x1c06             // movzx    esi, byte [r14 + rax + 28]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	LONG $0xeb0f4166; BYTE $0xf1               // por    xmm6, xmm9
	QUAD $0x0000c024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm6
	LONG $0x74b60f41; WORD $0x1d06             // movzx    esi, byte [r14 + rax + 29]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	WORD $0x894c; BYTE $0xfe                   // mov    rsi, r15
	QUAD $0x103e54203a0f4766; BYTE $0x01       // pinsrb    xmm10, byte [r14 + r15 + 16], 1
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x100654203a0f4566; BYTE $0x02       // pinsrb    xmm10, byte [r14 + rax + 16], 2
	QUAD $0x103e54203a0f4566; BYTE $0x03       // pinsrb    xmm10, byte [r14 + rdi + 16], 3
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	QUAD $0x100654203a0f4766; BYTE $0x04       // pinsrb    xmm10, byte [r14 + r8 + 16], 4
	QUAD $0x102654203a0f4766; BYTE $0x05       // pinsrb    xmm10, byte [r14 + r12 + 16], 5
	QUAD $0x100e54203a0f4566; BYTE $0x06       // pinsrb    xmm10, byte [r14 + rcx + 16], 6
	LONG $0x24548b48; BYTE $0x58               // mov    rdx, qword [rsp + 88]
	QUAD $0x101654203a0f4566; BYTE $0x07       // pinsrb    xmm10, byte [r14 + rdx + 16], 7
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x100e54203a0f4566; BYTE $0x08       // pinsrb    xmm10, byte [r14 + rcx + 16], 8
	QUAD $0x100e54203a0f4766; BYTE $0x09       // pinsrb    xmm10, byte [r14 + r9 + 16], 9
	LONG $0x247c8b4c; BYTE $0x70               // mov    r15, qword [rsp + 112]
	QUAD $0x103e54203a0f4766; BYTE $0x0a       // pinsrb    xmm10, byte [r14 + r15 + 16], 10
	QUAD $0x101654203a0f4766; BYTE $0x0b       // pinsrb    xmm10, byte [r14 + r10 + 16], 11
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x103e54203a0f4566; BYTE $0x0c       // pinsrb    xmm10, byte [r14 + rdi + 16], 12
	QUAD $0x101e54203a0f4566; BYTE $0x0d       // pinsrb    xmm10, byte [r14 + rbx + 16], 13
	QUAD $0x102e54203a0f4766; BYTE $0x0e       // pinsrb    xmm10, byte [r14 + r13 + 16], 14
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x100654203a0f4566; BYTE $0x0f       // pinsrb    xmm10, byte [r14 + rax + 16], 15
	QUAD $0x113664203a0f4166; BYTE $0x01       // pinsrb    xmm4, byte [r14 + rsi + 17], 1
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x113664203a0f4166; BYTE $0x02       // pinsrb    xmm4, byte [r14 + rsi + 17], 2
	QUAD $0x111e64203a0f4366; BYTE $0x03       // pinsrb    xmm4, byte [r14 + r11 + 17], 3
	QUAD $0x110664203a0f4366; BYTE $0x04       // pinsrb    xmm4, byte [r14 + r8 + 17], 4
	QUAD $0x112664203a0f4366; BYTE $0x05       // pinsrb    xmm4, byte [r14 + r12 + 17], 5
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	QUAD $0x111664203a0f4366; BYTE $0x06       // pinsrb    xmm4, byte [r14 + r10 + 17], 6
	QUAD $0x111664203a0f4166; BYTE $0x07       // pinsrb    xmm4, byte [r14 + rdx + 17], 7
	QUAD $0x110e64203a0f4166; BYTE $0x08       // pinsrb    xmm4, byte [r14 + rcx + 17], 8
	QUAD $0x110e64203a0f4366; BYTE $0x09       // pinsrb    xmm4, byte [r14 + r9 + 17], 9
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	QUAD $0x113e64203a0f4366; BYTE $0x0a       // pinsrb    xmm4, byte [r14 + r15 + 17], 10
	QUAD $0x0000009824948b48                   // mov    rdx, qword [rsp + 152]
	QUAD $0x111664203a0f4166; BYTE $0x0b       // pinsrb    xmm4, byte [r14 + rdx + 17], 11
	QUAD $0x113e64203a0f4166; BYTE $0x0c       // pinsrb    xmm4, byte [r14 + rdi + 17], 12
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	QUAD $0x111e64203a0f4166; BYTE $0x0d       // pinsrb    xmm4, byte [r14 + rbx + 17], 13
	QUAD $0x112e64203a0f4366; BYTE $0x0e       // pinsrb    xmm4, byte [r14 + r13 + 17], 14
	QUAD $0x110664203a0f4166; BYTE $0x0f       // pinsrb    xmm4, byte [r14 + rax + 17], 15
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0x740f4166; BYTE $0xe6               // pcmpeqb    xmm4, xmm14
	QUAD $0x00000100b56f0f66                   // movdqa    xmm6, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xe6df0f66                           // pandn    xmm4, xmm6
	LONG $0xfc0f4166; BYTE $0xe2               // paddb    xmm4, xmm10
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x74b60f41; WORD $0x1e06             // movzx    esi, byte [r14 + rax + 30]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x12367c203a0f4166; BYTE $0x01       // pinsrb    xmm7, byte [r14 + rsi + 18], 1
	QUAD $0x13366c203a0f4166; BYTE $0x01       // pinsrb    xmm5, byte [r14 + rsi + 19], 1
	QUAD $0x14365c203a0f4166; BYTE $0x01       // pinsrb    xmm3, byte [r14 + rsi + 20], 1
	QUAD $0x153654203a0f4166; BYTE $0x01       // pinsrb    xmm2, byte [r14 + rsi + 21], 1
	QUAD $0x16364c203a0f4166; BYTE $0x01       // pinsrb    xmm1, byte [r14 + rsi + 22], 1
	QUAD $0x173644203a0f4566; BYTE $0x01       // pinsrb    xmm8, byte [r14 + rsi + 23], 1
	QUAD $0x183664203a0f4566; BYTE $0x01       // pinsrb    xmm12, byte [r14 + rsi + 24], 1
	QUAD $0x19366c203a0f4566; BYTE $0x01       // pinsrb    xmm13, byte [r14 + rsi + 25], 1
	QUAD $0x1a3644203a0f4166; BYTE $0x01       // pinsrb    xmm0, byte [r14 + rsi + 26], 1
	QUAD $0x1b365c203a0f4566; BYTE $0x01       // pinsrb    xmm11, byte [r14 + rsi + 27], 1
	QUAD $0x1c367c203a0f4566; BYTE $0x01       // pinsrb    xmm15, byte [r14 + rsi + 28], 1
	QUAD $0x1d364c203a0f4566; BYTE $0x01       // pinsrb    xmm9, byte [r14 + rsi + 29], 1
	QUAD $0x1e3654203a0f4566; BYTE $0x01       // pinsrb    xmm10, byte [r14 + rsi + 30], 1
	LONG $0x44b60f41; WORD $0x1f06             // movzx    eax, byte [r14 + rax + 31]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x1f3674203a0f4166; BYTE $0x01       // pinsrb    xmm6, byte [r14 + rsi + 31], 1
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x12067c203a0f4166; BYTE $0x02       // pinsrb    xmm7, byte [r14 + rax + 18], 2
	QUAD $0x13066c203a0f4166; BYTE $0x02       // pinsrb    xmm5, byte [r14 + rax + 19], 2
	QUAD $0x14065c203a0f4166; BYTE $0x02       // pinsrb    xmm3, byte [r14 + rax + 20], 2
	QUAD $0x150654203a0f4166; BYTE $0x02       // pinsrb    xmm2, byte [r14 + rax + 21], 2
	QUAD $0x16064c203a0f4166; BYTE $0x02       // pinsrb    xmm1, byte [r14 + rax + 22], 2
	QUAD $0x170644203a0f4566; BYTE $0x02       // pinsrb    xmm8, byte [r14 + rax + 23], 2
	QUAD $0x180664203a0f4566; BYTE $0x02       // pinsrb    xmm12, byte [r14 + rax + 24], 2
	QUAD $0x19066c203a0f4566; BYTE $0x02       // pinsrb    xmm13, byte [r14 + rax + 25], 2
	QUAD $0x1a0644203a0f4166; BYTE $0x02       // pinsrb    xmm0, byte [r14 + rax + 26], 2
	QUAD $0x1b065c203a0f4566; BYTE $0x02       // pinsrb    xmm11, byte [r14 + rax + 27], 2
	QUAD $0x1c067c203a0f4566; BYTE $0x02       // pinsrb    xmm15, byte [r14 + rax + 28], 2
	QUAD $0x1d064c203a0f4566; BYTE $0x02       // pinsrb    xmm9, byte [r14 + rax + 29], 2
	QUAD $0x1e0654203a0f4566; BYTE $0x02       // pinsrb    xmm10, byte [r14 + rax + 30], 2
	QUAD $0x1f0674203a0f4166; BYTE $0x02       // pinsrb    xmm6, byte [r14 + rax + 31], 2
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x123e7c203a0f4366; BYTE $0x03       // pinsrb    xmm7, byte [r14 + r15 + 18], 3
	LONG $0x24448b48; BYTE $0x78               // mov    rax, qword [rsp + 120]
	QUAD $0x12067c203a0f4166; BYTE $0x04       // pinsrb    xmm7, byte [r14 + rax + 18], 4
	QUAD $0x12267c203a0f4366; BYTE $0x05       // pinsrb    xmm7, byte [r14 + r12 + 18], 5
	QUAD $0x12167c203a0f4366; BYTE $0x06       // pinsrb    xmm7, byte [r14 + r10 + 18], 6
	LONG $0x247c8b48; BYTE $0x58               // mov    rdi, qword [rsp + 88]
	QUAD $0x123e7c203a0f4166; BYTE $0x07       // pinsrb    xmm7, byte [r14 + rdi + 18], 7
	LONG $0x244c8b4c; BYTE $0x48               // mov    r9, qword [rsp + 72]
	QUAD $0x120e7c203a0f4366; BYTE $0x08       // pinsrb    xmm7, byte [r14 + r9 + 18], 8
	QUAD $0x0000008824b48b48                   // mov    rsi, qword [rsp + 136]
	QUAD $0x12367c203a0f4166; BYTE $0x09       // pinsrb    xmm7, byte [r14 + rsi + 18], 9
	QUAD $0x12067c203a0f4366; BYTE $0x0a       // pinsrb    xmm7, byte [r14 + r8 + 18], 10
	QUAD $0x12167c203a0f4166; BYTE $0x0b       // pinsrb    xmm7, byte [r14 + rdx + 18], 11
	QUAD $0x121e7c203a0f4366; BYTE $0x0c       // pinsrb    xmm7, byte [r14 + r11 + 18], 12
	QUAD $0x121e7c203a0f4166; BYTE $0x0d       // pinsrb    xmm7, byte [r14 + rbx + 18], 13
	QUAD $0x122e7c203a0f4366; BYTE $0x0e       // pinsrb    xmm7, byte [r14 + r13 + 18], 14
	QUAD $0x120e7c203a0f4166; BYTE $0x0f       // pinsrb    xmm7, byte [r14 + rcx + 18], 15
	QUAD $0x133e6c203a0f4366; BYTE $0x03       // pinsrb    xmm5, byte [r14 + r15 + 19], 3
	QUAD $0x13066c203a0f4166; BYTE $0x04       // pinsrb    xmm5, byte [r14 + rax + 19], 4
	QUAD $0x13266c203a0f4366; BYTE $0x05       // pinsrb    xmm5, byte [r14 + r12 + 19], 5
	QUAD $0x13166c203a0f4366; BYTE $0x06       // pinsrb    xmm5, byte [r14 + r10 + 19], 6
	QUAD $0x133e6c203a0f4166; BYTE $0x07       // pinsrb    xmm5, byte [r14 + rdi + 19], 7
	QUAD $0x130e6c203a0f4366; BYTE $0x08       // pinsrb    xmm5, byte [r14 + r9 + 19], 8
	QUAD $0x13366c203a0f4166; BYTE $0x09       // pinsrb    xmm5, byte [r14 + rsi + 19], 9
	QUAD $0x13066c203a0f4366; BYTE $0x0a       // pinsrb    xmm5, byte [r14 + r8 + 19], 10
	QUAD $0x13166c203a0f4166; BYTE $0x0b       // pinsrb    xmm5, byte [r14 + rdx + 19], 11
	QUAD $0x131e6c203a0f4366; BYTE $0x0c       // pinsrb    xmm5, byte [r14 + r11 + 19], 12
	QUAD $0x131e6c203a0f4166; BYTE $0x0d       // pinsrb    xmm5, byte [r14 + rbx + 19], 13
	QUAD $0x132e6c203a0f4366; BYTE $0x0e       // pinsrb    xmm5, byte [r14 + r13 + 19], 14
	QUAD $0x130e6c203a0f4166; BYTE $0x0f       // pinsrb    xmm5, byte [r14 + rcx + 19], 15
	QUAD $0x143e5c203a0f4366; BYTE $0x03       // pinsrb    xmm3, byte [r14 + r15 + 20], 3
	QUAD $0x14065c203a0f4166; BYTE $0x04       // pinsrb    xmm3, byte [r14 + rax + 20], 4
	QUAD $0x14265c203a0f4366; BYTE $0x05       // pinsrb    xmm3, byte [r14 + r12 + 20], 5
	QUAD $0x14165c203a0f4366; BYTE $0x06       // pinsrb    xmm3, byte [r14 + r10 + 20], 6
	QUAD $0x143e5c203a0f4166; BYTE $0x07       // pinsrb    xmm3, byte [r14 + rdi + 20], 7
	QUAD $0x140e5c203a0f4366; BYTE $0x08       // pinsrb    xmm3, byte [r14 + r9 + 20], 8
	QUAD $0x14365c203a0f4166; BYTE $0x09       // pinsrb    xmm3, byte [r14 + rsi + 20], 9
	QUAD $0x14065c203a0f4366; BYTE $0x0a       // pinsrb    xmm3, byte [r14 + r8 + 20], 10
	QUAD $0x14165c203a0f4166; BYTE $0x0b       // pinsrb    xmm3, byte [r14 + rdx + 20], 11
	QUAD $0x141e5c203a0f4366; BYTE $0x0c       // pinsrb    xmm3, byte [r14 + r11 + 20], 12
	QUAD $0x141e5c203a0f4166; BYTE $0x0d       // pinsrb    xmm3, byte [r14 + rbx + 20], 13
	QUAD $0x142e5c203a0f4366; BYTE $0x0e       // pinsrb    xmm3, byte [r14 + r13 + 20], 14
	LONG $0x740f4166; BYTE $0xfe               // pcmpeqb    xmm7, xmm14
	QUAD $0x000110b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0xdf0f4166; BYTE $0xfe               // pandn    xmm7, xmm14
	QUAD $0x0000b024ac740f66; BYTE $0x00       // pcmpeqb    xmm5, oword [rsp + 176]
	QUAD $0x000120b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xdf0f4166; BYTE $0xee               // pandn    xmm5, xmm14
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0x140e5c203a0f4166; BYTE $0x0f       // pinsrb    xmm3, byte [r14 + rcx + 20], 15
	QUAD $0x00b024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 176]
	LONG $0x740f4166; BYTE $0xde               // pcmpeqb    xmm3, xmm14
	QUAD $0x00000130bd6f0f66                   // movdqa    xmm7, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xdfdf0f66                           // pandn    xmm3, xmm7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0xe5f80f66                           // psubb    xmm4, xmm5
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x153e54203a0f4366; BYTE $0x03       // pinsrb    xmm2, byte [r14 + r15 + 21], 3
	QUAD $0x150654203a0f4166; BYTE $0x04       // pinsrb    xmm2, byte [r14 + rax + 21], 4
	QUAD $0x152654203a0f4366; BYTE $0x05       // pinsrb    xmm2, byte [r14 + r12 + 21], 5
	QUAD $0x151654203a0f4366; BYTE $0x06       // pinsrb    xmm2, byte [r14 + r10 + 21], 6
	QUAD $0x153e54203a0f4166; BYTE $0x07       // pinsrb    xmm2, byte [r14 + rdi + 21], 7
	QUAD $0x150e54203a0f4366; BYTE $0x08       // pinsrb    xmm2, byte [r14 + r9 + 21], 8
	QUAD $0x153654203a0f4166; BYTE $0x09       // pinsrb    xmm2, byte [r14 + rsi + 21], 9
	QUAD $0x150654203a0f4366; BYTE $0x0a       // pinsrb    xmm2, byte [r14 + r8 + 21], 10
	QUAD $0x151654203a0f4166; BYTE $0x0b       // pinsrb    xmm2, byte [r14 + rdx + 21], 11
	QUAD $0x151e54203a0f4366; BYTE $0x0c       // pinsrb    xmm2, byte [r14 + r11 + 21], 12
	QUAD $0x151e54203a0f4166; BYTE $0x0d       // pinsrb    xmm2, byte [r14 + rbx + 21], 13
	QUAD $0x152e54203a0f4366; BYTE $0x0e       // pinsrb    xmm2, byte [r14 + r13 + 21], 14
	QUAD $0x150e54203a0f4166; BYTE $0x0f       // pinsrb    xmm2, byte [r14 + rcx + 21], 15
	QUAD $0x163e4c203a0f4366; BYTE $0x03       // pinsrb    xmm1, byte [r14 + r15 + 22], 3
	QUAD $0x16064c203a0f4166; BYTE $0x04       // pinsrb    xmm1, byte [r14 + rax + 22], 4
	QUAD $0x16264c203a0f4366; BYTE $0x05       // pinsrb    xmm1, byte [r14 + r12 + 22], 5
	QUAD $0x16164c203a0f4366; BYTE $0x06       // pinsrb    xmm1, byte [r14 + r10 + 22], 6
	QUAD $0x163e4c203a0f4166; BYTE $0x07       // pinsrb    xmm1, byte [r14 + rdi + 22], 7
	QUAD $0x160e4c203a0f4366; BYTE $0x08       // pinsrb    xmm1, byte [r14 + r9 + 22], 8
	QUAD $0x16364c203a0f4166; BYTE $0x09       // pinsrb    xmm1, byte [r14 + rsi + 22], 9
	QUAD $0x16064c203a0f4366; BYTE $0x0a       // pinsrb    xmm1, byte [r14 + r8 + 22], 10
	QUAD $0x16164c203a0f4166; BYTE $0x0b       // pinsrb    xmm1, byte [r14 + rdx + 22], 11
	QUAD $0x161e4c203a0f4366; BYTE $0x0c       // pinsrb    xmm1, byte [r14 + r11 + 22], 12
	QUAD $0x161e4c203a0f4166; BYTE $0x0d       // pinsrb    xmm1, byte [r14 + rbx + 22], 13
	QUAD $0x162e4c203a0f4366; BYTE $0x0e       // pinsrb    xmm1, byte [r14 + r13 + 22], 14
	QUAD $0x160e4c203a0f4166; BYTE $0x0f       // pinsrb    xmm1, byte [r14 + rcx + 22], 15
	QUAD $0x173e44203a0f4766; BYTE $0x03       // pinsrb    xmm8, byte [r14 + r15 + 23], 3
	QUAD $0x170644203a0f4566; BYTE $0x04       // pinsrb    xmm8, byte [r14 + rax + 23], 4
	QUAD $0x172644203a0f4766; BYTE $0x05       // pinsrb    xmm8, byte [r14 + r12 + 23], 5
	QUAD $0x171644203a0f4766; BYTE $0x06       // pinsrb    xmm8, byte [r14 + r10 + 23], 6
	QUAD $0x173e44203a0f4566; BYTE $0x07       // pinsrb    xmm8, byte [r14 + rdi + 23], 7
	QUAD $0x170e44203a0f4766; BYTE $0x08       // pinsrb    xmm8, byte [r14 + r9 + 23], 8
	QUAD $0x173644203a0f4566; BYTE $0x09       // pinsrb    xmm8, byte [r14 + rsi + 23], 9
	QUAD $0x170644203a0f4766; BYTE $0x0a       // pinsrb    xmm8, byte [r14 + r8 + 23], 10
	QUAD $0x171644203a0f4566; BYTE $0x0b       // pinsrb    xmm8, byte [r14 + rdx + 23], 11
	QUAD $0x171e44203a0f4766; BYTE $0x0c       // pinsrb    xmm8, byte [r14 + r11 + 23], 12
	QUAD $0x171e44203a0f4566; BYTE $0x0d       // pinsrb    xmm8, byte [r14 + rbx + 23], 13
	QUAD $0x172e44203a0f4766; BYTE $0x0e       // pinsrb    xmm8, byte [r14 + r13 + 23], 14
	LONG $0x740f4166; BYTE $0xd6               // pcmpeqb    xmm2, xmm14
	QUAD $0x00000140ad6f0f66                   // movdqa    xmm5, oword 320[rbp] /* [rip + .LCPI5_20] */
	LONG $0xd5df0f66                           // pandn    xmm2, xmm5
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI5_21] */
	LONG $0xcfdf0f66                           // pandn    xmm1, xmm7
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x170e44203a0f4566; BYTE $0x0f       // pinsrb    xmm8, byte [r14 + rcx + 23], 15
	LONG $0x740f4566; BYTE $0xc6               // pcmpeqb    xmm8, xmm14
	LONG $0x656f0f66; BYTE $0x60               // movdqa    xmm4, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	QUAD $0x183e64203a0f4766; BYTE $0x03       // pinsrb    xmm12, byte [r14 + r15 + 24], 3
	QUAD $0x180664203a0f4566; BYTE $0x04       // pinsrb    xmm12, byte [r14 + rax + 24], 4
	QUAD $0x182664203a0f4766; BYTE $0x05       // pinsrb    xmm12, byte [r14 + r12 + 24], 5
	QUAD $0x181664203a0f4766; BYTE $0x06       // pinsrb    xmm12, byte [r14 + r10 + 24], 6
	QUAD $0x183e64203a0f4566; BYTE $0x07       // pinsrb    xmm12, byte [r14 + rdi + 24], 7
	QUAD $0x180e64203a0f4766; BYTE $0x08       // pinsrb    xmm12, byte [r14 + r9 + 24], 8
	QUAD $0x183664203a0f4566; BYTE $0x09       // pinsrb    xmm12, byte [r14 + rsi + 24], 9
	QUAD $0x180664203a0f4766; BYTE $0x0a       // pinsrb    xmm12, byte [r14 + r8 + 24], 10
	QUAD $0x181664203a0f4566; BYTE $0x0b       // pinsrb    xmm12, byte [r14 + rdx + 24], 11
	QUAD $0x181e64203a0f4766; BYTE $0x0c       // pinsrb    xmm12, byte [r14 + r11 + 24], 12
	QUAD $0x181e64203a0f4566; BYTE $0x0d       // pinsrb    xmm12, byte [r14 + rbx + 24], 13
	QUAD $0x182e64203a0f4766; BYTE $0x0e       // pinsrb    xmm12, byte [r14 + r13 + 24], 14
	QUAD $0x180e64203a0f4566; BYTE $0x0f       // pinsrb    xmm12, byte [r14 + rcx + 24], 15
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	LONG $0x740f4566; BYTE $0xe6               // pcmpeqb    xmm12, xmm14
	QUAD $0x193e6c203a0f4766; BYTE $0x03       // pinsrb    xmm13, byte [r14 + r15 + 25], 3
	QUAD $0x19066c203a0f4566; BYTE $0x04       // pinsrb    xmm13, byte [r14 + rax + 25], 4
	QUAD $0x19266c203a0f4766; BYTE $0x05       // pinsrb    xmm13, byte [r14 + r12 + 25], 5
	QUAD $0x19166c203a0f4766; BYTE $0x06       // pinsrb    xmm13, byte [r14 + r10 + 25], 6
	QUAD $0x193e6c203a0f4566; BYTE $0x07       // pinsrb    xmm13, byte [r14 + rdi + 25], 7
	QUAD $0x190e6c203a0f4766; BYTE $0x08       // pinsrb    xmm13, byte [r14 + r9 + 25], 8
	QUAD $0x19366c203a0f4566; BYTE $0x09       // pinsrb    xmm13, byte [r14 + rsi + 25], 9
	QUAD $0x19066c203a0f4766; BYTE $0x0a       // pinsrb    xmm13, byte [r14 + r8 + 25], 10
	QUAD $0x19166c203a0f4566; BYTE $0x0b       // pinsrb    xmm13, byte [r14 + rdx + 25], 11
	QUAD $0x191e6c203a0f4766; BYTE $0x0c       // pinsrb    xmm13, byte [r14 + r11 + 25], 12
	QUAD $0x191e6c203a0f4566; BYTE $0x0d       // pinsrb    xmm13, byte [r14 + rbx + 25], 13
	QUAD $0x192e6c203a0f4766; BYTE $0x0e       // pinsrb    xmm13, byte [r14 + r13 + 25], 14
	QUAD $0x190e6c203a0f4566; BYTE $0x0f       // pinsrb    xmm13, byte [r14 + rcx + 25], 15
	QUAD $0x1a3e44203a0f4366; BYTE $0x03       // pinsrb    xmm0, byte [r14 + r15 + 26], 3
	QUAD $0x1a0644203a0f4166; BYTE $0x04       // pinsrb    xmm0, byte [r14 + rax + 26], 4
	QUAD $0x1a2644203a0f4366; BYTE $0x05       // pinsrb    xmm0, byte [r14 + r12 + 26], 5
	QUAD $0x1a1644203a0f4366; BYTE $0x06       // pinsrb    xmm0, byte [r14 + r10 + 26], 6
	QUAD $0x1a3e44203a0f4166; BYTE $0x07       // pinsrb    xmm0, byte [r14 + rdi + 26], 7
	QUAD $0x1a0e44203a0f4366; BYTE $0x08       // pinsrb    xmm0, byte [r14 + r9 + 26], 8
	QUAD $0x1a3644203a0f4166; BYTE $0x09       // pinsrb    xmm0, byte [r14 + rsi + 26], 9
	QUAD $0x1a0644203a0f4366; BYTE $0x0a       // pinsrb    xmm0, byte [r14 + r8 + 26], 10
	QUAD $0x1a1644203a0f4166; BYTE $0x0b       // pinsrb    xmm0, byte [r14 + rdx + 26], 11
	QUAD $0x1a1e44203a0f4366; BYTE $0x0c       // pinsrb    xmm0, byte [r14 + r11 + 26], 12
	QUAD $0x1a1e44203a0f4166; BYTE $0x0d       // pinsrb    xmm0, byte [r14 + rbx + 26], 13
	QUAD $0x1a2e44203a0f4366; BYTE $0x0e       // pinsrb    xmm0, byte [r14 + r13 + 26], 14
	QUAD $0x1a0e44203a0f4166; BYTE $0x0f       // pinsrb    xmm0, byte [r14 + rcx + 26], 15
	QUAD $0x1b3e5c203a0f4766; BYTE $0x03       // pinsrb    xmm11, byte [r14 + r15 + 27], 3
	QUAD $0x1b065c203a0f4566; BYTE $0x04       // pinsrb    xmm11, byte [r14 + rax + 27], 4
	QUAD $0x1b265c203a0f4766; BYTE $0x05       // pinsrb    xmm11, byte [r14 + r12 + 27], 5
	QUAD $0x1b165c203a0f4766; BYTE $0x06       // pinsrb    xmm11, byte [r14 + r10 + 27], 6
	QUAD $0x1b3e5c203a0f4566; BYTE $0x07       // pinsrb    xmm11, byte [r14 + rdi + 27], 7
	QUAD $0x1b0e5c203a0f4766; BYTE $0x08       // pinsrb    xmm11, byte [r14 + r9 + 27], 8
	QUAD $0x1b365c203a0f4566; BYTE $0x09       // pinsrb    xmm11, byte [r14 + rsi + 27], 9
	QUAD $0x1b065c203a0f4766; BYTE $0x0a       // pinsrb    xmm11, byte [r14 + r8 + 27], 10
	QUAD $0x1b165c203a0f4566; BYTE $0x0b       // pinsrb    xmm11, byte [r14 + rdx + 27], 11
	QUAD $0x1b1e5c203a0f4766; BYTE $0x0c       // pinsrb    xmm11, byte [r14 + r11 + 27], 12
	QUAD $0x1b1e5c203a0f4566; BYTE $0x0d       // pinsrb    xmm11, byte [r14 + rbx + 27], 13
	QUAD $0x1b2e5c203a0f4766; BYTE $0x0e       // pinsrb    xmm11, byte [r14 + r13 + 27], 14
	LONG $0x740f4566; BYTE $0xee               // pcmpeqb    xmm13, xmm14
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI5_16] */
	LONG $0xfc0f4566; BYTE $0xec               // paddb    xmm13, xmm12
	QUAD $0x1b0e5c203a0f4566; BYTE $0x0f       // pinsrb    xmm11, byte [r14 + rcx + 27], 15
	LONG $0x740f4166; BYTE $0xc6               // pcmpeqb    xmm0, xmm14
	QUAD $0x0000011085df0f66                   // pandn    xmm0, oword 272[rbp] /* [rip + .LCPI5_17] */
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	QUAD $0x0001209ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 288[rbp] /* [rip + .LCPI5_18] */
	LONG $0xeb0f4466; BYTE $0xd8               // por    xmm11, xmm0
	QUAD $0x1c3e7c203a0f4766; BYTE $0x03       // pinsrb    xmm15, byte [r14 + r15 + 28], 3
	QUAD $0x1d3e4c203a0f4766; BYTE $0x03       // pinsrb    xmm9, byte [r14 + r15 + 29], 3
	QUAD $0x1e3e54203a0f4766; BYTE $0x03       // pinsrb    xmm10, byte [r14 + r15 + 30], 3
	QUAD $0x1f3e74203a0f4366; BYTE $0x03       // pinsrb    xmm6, byte [r14 + r15 + 31], 3
	QUAD $0x1c067c203a0f4566; BYTE $0x04       // pinsrb    xmm15, byte [r14 + rax + 28], 4
	QUAD $0x1d064c203a0f4566; BYTE $0x04       // pinsrb    xmm9, byte [r14 + rax + 29], 4
	QUAD $0x1e0654203a0f4566; BYTE $0x04       // pinsrb    xmm10, byte [r14 + rax + 30], 4
	QUAD $0x1f0674203a0f4166; BYTE $0x04       // pinsrb    xmm6, byte [r14 + rax + 31], 4
	QUAD $0x1c267c203a0f4766; BYTE $0x05       // pinsrb    xmm15, byte [r14 + r12 + 28], 5
	QUAD $0x1d264c203a0f4766; BYTE $0x05       // pinsrb    xmm9, byte [r14 + r12 + 29], 5
	QUAD $0x1e2654203a0f4766; BYTE $0x05       // pinsrb    xmm10, byte [r14 + r12 + 30], 5
	QUAD $0x1f2674203a0f4366; BYTE $0x05       // pinsrb    xmm6, byte [r14 + r12 + 31], 5
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x1c167c203a0f4766; BYTE $0x06       // pinsrb    xmm15, byte [r14 + r10 + 28], 6
	QUAD $0x1d164c203a0f4766; BYTE $0x06       // pinsrb    xmm9, byte [r14 + r10 + 29], 6
	QUAD $0x1e1654203a0f4766; BYTE $0x06       // pinsrb    xmm10, byte [r14 + r10 + 30], 6
	QUAD $0x1f1674203a0f4366; BYTE $0x06       // pinsrb    xmm6, byte [r14 + r10 + 31], 6
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	QUAD $0x1c3e7c203a0f4566; BYTE $0x07       // pinsrb    xmm15, byte [r14 + rdi + 28], 7
	QUAD $0x1d3e4c203a0f4566; BYTE $0x07       // pinsrb    xmm9, byte [r14 + rdi + 29], 7
	QUAD $0x1e3e54203a0f4566; BYTE $0x07       // pinsrb    xmm10, byte [r14 + rdi + 30], 7
	QUAD $0x1f3e74203a0f4166; BYTE $0x07       // pinsrb    xmm6, byte [r14 + rdi + 31], 7
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	QUAD $0x1c0e7c203a0f4766; BYTE $0x08       // pinsrb    xmm15, byte [r14 + r9 + 28], 8
	QUAD $0x1d0e4c203a0f4766; BYTE $0x08       // pinsrb    xmm9, byte [r14 + r9 + 29], 8
	QUAD $0x1e0e54203a0f4766; BYTE $0x08       // pinsrb    xmm10, byte [r14 + r9 + 30], 8
	QUAD $0x1f0e74203a0f4366; BYTE $0x08       // pinsrb    xmm6, byte [r14 + r9 + 31], 8
	WORD $0x8948; BYTE $0xf0                   // mov    rax, rsi
	QUAD $0x1c367c203a0f4566; BYTE $0x09       // pinsrb    xmm15, byte [r14 + rsi + 28], 9
	QUAD $0x1d364c203a0f4566; BYTE $0x09       // pinsrb    xmm9, byte [r14 + rsi + 29], 9
	QUAD $0x1e3654203a0f4566; BYTE $0x09       // pinsrb    xmm10, byte [r14 + rsi + 30], 9
	QUAD $0x1f3674203a0f4166; BYTE $0x09       // pinsrb    xmm6, byte [r14 + rsi + 31], 9
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x1c067c203a0f4766; BYTE $0x0a       // pinsrb    xmm15, byte [r14 + r8 + 28], 10
	QUAD $0x1d064c203a0f4766; BYTE $0x0a       // pinsrb    xmm9, byte [r14 + r8 + 29], 10
	QUAD $0x1e0654203a0f4766; BYTE $0x0a       // pinsrb    xmm10, byte [r14 + r8 + 30], 10
	QUAD $0x1f0674203a0f4366; BYTE $0x0a       // pinsrb    xmm6, byte [r14 + r8 + 31], 10
	WORD $0x8948; BYTE $0xd0                   // mov    rax, rdx
	QUAD $0x1c167c203a0f4566; BYTE $0x0b       // pinsrb    xmm15, byte [r14 + rdx + 28], 11
	QUAD $0x1d164c203a0f4566; BYTE $0x0b       // pinsrb    xmm9, byte [r14 + rdx + 29], 11
	QUAD $0x1e1654203a0f4566; BYTE $0x0b       // pinsrb    xmm10, byte [r14 + rdx + 30], 11
	QUAD $0x1f1674203a0f4166; BYTE $0x0b       // pinsrb    xmm6, byte [r14 + rdx + 31], 11
	WORD $0x894c; BYTE $0xd8                   // mov    rax, r11
	QUAD $0x1c1e7c203a0f4766; BYTE $0x0c       // pinsrb    xmm15, byte [r14 + r11 + 28], 12
	QUAD $0x1d1e4c203a0f4766; BYTE $0x0c       // pinsrb    xmm9, byte [r14 + r11 + 29], 12
	QUAD $0x1e1e54203a0f4766; BYTE $0x0c       // pinsrb    xmm10, byte [r14 + r11 + 30], 12
	QUAD $0x1f1e74203a0f4366; BYTE $0x0c       // pinsrb    xmm6, byte [r14 + r11 + 31], 12
	QUAD $0x1c1e7c203a0f4566; BYTE $0x0d       // pinsrb    xmm15, byte [r14 + rbx + 28], 13
	QUAD $0x1d1e4c203a0f4566; BYTE $0x0d       // pinsrb    xmm9, byte [r14 + rbx + 29], 13
	QUAD $0x1e1e54203a0f4566; BYTE $0x0d       // pinsrb    xmm10, byte [r14 + rbx + 30], 13
	QUAD $0x1f1e74203a0f4166; BYTE $0x0d       // pinsrb    xmm6, byte [r14 + rbx + 31], 13
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x1c2e7c203a0f4766; BYTE $0x0e       // pinsrb    xmm15, byte [r14 + r13 + 28], 14
	QUAD $0x1d2e4c203a0f4766; BYTE $0x0e       // pinsrb    xmm9, byte [r14 + r13 + 29], 14
	QUAD $0x1e2e54203a0f4766; BYTE $0x0e       // pinsrb    xmm10, byte [r14 + r13 + 30], 14
	QUAD $0x1f2e74203a0f4366; BYTE $0x0e       // pinsrb    xmm6, byte [r14 + r13 + 31], 14
	QUAD $0x1c0e7c203a0f4566; BYTE $0x0f       // pinsrb    xmm15, byte [r14 + rcx + 28], 15
	QUAD $0x1d0e4c203a0f4566; BYTE $0x0f       // pinsrb    xmm9, byte [r14 + rcx + 29], 15
	QUAD $0x1e0e54203a0f4566; BYTE $0x0f       // pinsrb    xmm10, byte [r14 + rcx + 30], 15
	LONG $0x740f4566; BYTE $0xfe               // pcmpeqb    xmm15, xmm14
	QUAD $0x000130bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 304[rbp] /* [rip + .LCPI5_19] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	QUAD $0x1f0e74203a0f4166; BYTE $0x0f       // pinsrb    xmm6, byte [r14 + rcx + 31], 15
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x740f4566; BYTE $0xce               // pcmpeqb    xmm9, xmm14
	LONG $0xdf0f4466; BYTE $0xcd               // pandn    xmm9, xmm5
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	LONG $0xdf0f4466; BYTE $0xd7               // pandn    xmm10, xmm7
	LONG $0xeb0f4566; BYTE $0xd1               // por    xmm10, xmm9
	LONG $0x740f4166; BYTE $0xf6               // pcmpeqb    xmm6, xmm14
	LONG $0xf4df0f66                           // pandn    xmm6, xmm4
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc6600f66                           // punpcklbw    xmm0, xmm6
	QUAD $0x0000f0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 240]
	LONG $0xcb6f0f66                           // movdqa    xmm1, xmm3
	QUAD $0x0000c024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 192]
	LONG $0xcc600f66                           // punpcklbw    xmm1, xmm4
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	LONG $0xd0610f66                           // punpcklwd    xmm2, xmm0
	LONG $0xc8690f66                           // punpckhwd    xmm1, xmm0
	LONG $0x680f4466; BYTE $0xc6               // punpckhbw    xmm8, xmm6
	LONG $0xdc680f66                           // punpckhbw    xmm3, xmm4
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xd8               // punpckhwd    xmm3, xmm8
	QUAD $0x000000a8248c8b48                   // mov    rcx, qword [rsp + 168]
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	LONG $0x5c7f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm3
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x4c7f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm1
	LONG $0x147f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm2
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB5_68
	QUAD $0x0000010824948b4c                   // mov    r10, qword [rsp + 264]
	QUAD $0x000000e824943b4c                   // cmp    r10, qword [rsp + 232]
	QUAD $0x0000011024b48b4c                   // mov    r14, qword [rsp + 272]
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	JNE  LBB5_70
	JMP  LBB5_73

LBB5_110:
	LONG $0xf8e28349               // and    r10, -8
	WORD $0x894c; BYTE $0xd0       // mov    rax, r10
	LONG $0x06e0c148               // shl    rax, 6
	WORD $0x014c; BYTE $0xf0       // add    rax, r14
	LONG $0x24448948; BYTE $0x30   // mov    qword [rsp + 48], rax
	LONG $0x2454894c; BYTE $0x28   // mov    qword [rsp + 40], r10
	LONG $0x24448b48; BYTE $0x08   // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a               // lea    rax, [rax + 4*r10]
	LONG $0x24448948; BYTE $0x38   // mov    qword [rsp + 56], rax
	LONG $0x6e0f4166; BYTE $0xc3   // movd    xmm0, r11d
	LONG $0xc0700ff2; BYTE $0xe0   // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00d8 // pshufd    xmm11, xmm0, 0
	WORD $0xff31                   // xor    edi, edi
	LONG $0xef0f4566; BYTE $0xc9   // pxor    xmm9, xmm9

LBB5_111:
	LONG $0x247c8948; BYTE $0x40               // mov    qword [rsp + 64], rdi
	LONG $0x06e7c148                           // shl    rdi, 6
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	WORD $0x8948; BYTE $0xfe                   // mov    rsi, rdi
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	WORD $0x8949; BYTE $0xf9                   // mov    r9, rdi
	LONG $0x04b70f41; BYTE $0x3e               // movzx    eax, word [r14 + rdi]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f41; WORD $0x023e             // movzx    eax, word [r14 + rdi + 2]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44b70f41; WORD $0x043e             // movzx    eax, word [r14 + rdi + 4]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f41; WORD $0x063e             // movzx    eax, word [r14 + rdi + 6]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b70f41; WORD $0x083e             // movzx    eax, word [r14 + rdi + 8]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b70f41; WORD $0x0a3e             // movzx    eax, word [r14 + rdi + 10]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b70f41; WORD $0x0c3e             // movzx    eax, word [r14 + rdi + 12]
	LONG $0x44b70f45; WORD $0x0e3e             // movzx    r8d, word [r14 + rdi + 14]
	LONG $0x54b70f45; WORD $0x103e             // movzx    r10d, word [r14 + rdi + 16]
	LONG $0x6cb70f45; WORD $0x123e             // movzx    r13d, word [r14 + rdi + 18]
	LONG $0x4cb70f41; WORD $0x143e             // movzx    ecx, word [r14 + rdi + 20]
	LONG $0x20244c89                           // mov    dword [rsp + 32], ecx
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 128
	LONG $0xc0ce8148; WORD $0x0000; BYTE $0x00 // or    rsi, 192
	LONG $0x00cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 256
	LONG $0x40ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 320
	LONG $0x80cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 384
	LONG $0xc40f4166; WORD $0x0e2c; BYTE $0x01 // pinsrw    xmm5, word [r14 + rcx], 1
	LONG $0xc40f4366; WORD $0x3e2c; BYTE $0x02 // pinsrw    xmm5, word [r14 + r15], 2
	LONG $0xc40f4166; WORD $0x362c; BYTE $0x03 // pinsrw    xmm5, word [r14 + rsi], 3
	LONG $0xc40f4366; WORD $0x262c; BYTE $0x04 // pinsrw    xmm5, word [r14 + r12], 4
	LONG $0xc40f4166; WORD $0x162c; BYTE $0x05 // pinsrw    xmm5, word [r14 + rdx], 5
	LONG $0xc40f4166; WORD $0x1e2c; BYTE $0x06 // pinsrw    xmm5, word [r14 + rbx], 6
	QUAD $0x01020e44c40f4166                   // pinsrw    xmm0, word [r14 + rcx + 2], 1
	QUAD $0x02023e44c40f4366                   // pinsrw    xmm0, word [r14 + r15 + 2], 2
	QUAD $0x03023644c40f4166                   // pinsrw    xmm0, word [r14 + rsi + 2], 3
	QUAD $0x04022644c40f4366                   // pinsrw    xmm0, word [r14 + r12 + 2], 4
	QUAD $0x05021644c40f4166                   // pinsrw    xmm0, word [r14 + rdx + 2], 5
	QUAD $0x06021e44c40f4166                   // pinsrw    xmm0, word [r14 + rbx + 2], 6
	LONG $0xc0c98149; WORD $0x0001; BYTE $0x00 // or    r9, 448
	QUAD $0x07020e44c40f4366                   // pinsrw    xmm0, word [r14 + r9 + 2], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f41; WORD $0x163e             // movzx    eax, word [r14 + rdi + 22]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	QUAD $0x01040e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 4], 1
	QUAD $0x02043e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 4], 2
	QUAD $0x0304364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 4], 3
	QUAD $0x0404264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 4], 4
	QUAD $0x0504164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 4], 5
	QUAD $0x06041e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 4], 6
	QUAD $0x07040e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 4], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x000080b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0x6f0f4166; BYTE $0xde               // movdqa    xmm3, xmm14
	LONG $0x380f4166; WORD $0xd910             // pblendvb    xmm3, xmm9, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x000090bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xc8               // movd    xmm1, r8d
	LONG $0x5cb70f45; WORD $0x183e             // movzx    r11d, word [r14 + rdi + 24]
	LONG $0xc40f4366; WORD $0x0e2c; BYTE $0x07 // pinsrw    xmm5, word [r14 + r9], 7
	LONG $0x750f4166; BYTE $0xeb               // pcmpeqw    xmm5, xmm11
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8ef0f66                           // pxor    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	QUAD $0x01060e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 6], 1
	QUAD $0x02063e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 6], 2
	QUAD $0x0306367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 6], 3
	QUAD $0x0406267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 6], 4
	QUAD $0x0506167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 6], 5
	QUAD $0x06061e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 6], 6
	QUAD $0x07060e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 6], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01080e44c40f4566                   // pinsrw    xmm8, word [r14 + rcx + 8], 1
	QUAD $0x02083e44c40f4766                   // pinsrw    xmm8, word [r14 + r15 + 8], 2
	QUAD $0x03083644c40f4566                   // pinsrw    xmm8, word [r14 + rsi + 8], 3
	QUAD $0x04082644c40f4766                   // pinsrw    xmm8, word [r14 + r12 + 8], 4
	QUAD $0x05081644c40f4566                   // pinsrw    xmm8, word [r14 + rdx + 8], 5
	QUAD $0x06081e44c40f4566                   // pinsrw    xmm8, word [r14 + rbx + 8], 6
	QUAD $0x07080e44c40f4766                   // pinsrw    xmm8, word [r14 + r9 + 8], 7
	LONG $0xddf80f66                           // psubb    xmm3, xmm5
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x380f4566; WORD $0xe110             // pblendvb    xmm12, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x44b70f45; WORD $0x1a3e             // movzx    r8d, word [r14 + rdi + 26]
	LONG $0x750f4566; BYTE $0xc3               // pcmpeqw    xmm8, xmm11
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xf5               // movd    xmm6, r13d
	LONG $0x6cb70f45; WORD $0x1c3e             // movzx    r13d, word [r14 + rdi + 28]
	QUAD $0x010a0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 10], 1
	QUAD $0x020a3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 10], 2
	QUAD $0x030a3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 10], 3
	QUAD $0x040a2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 10], 4
	QUAD $0x050a1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 10], 5
	QUAD $0x060a1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 10], 6
	QUAD $0x070a0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 10], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	QUAD $0x010c0e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 12], 1
	QUAD $0x020c3e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 12], 2
	QUAD $0x030c3654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 12], 3
	QUAD $0x040c2654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 12], 4
	QUAD $0x050c1654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 12], 5
	QUAD $0x060c1e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 12], 6
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x646e0f66; WORD $0x2024             // movd    xmm4, dword [rsp + 32]
	LONG $0x54b70f45; WORD $0x1e3e             // movzx    r10d, word [r14 + rdi + 30]
	QUAD $0x070c0e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 12], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x5c6e0f66; WORD $0x1824             // movd    xmm3, dword [rsp + 24]
	LONG $0x44b70f41; WORD $0x203e             // movzx    eax, word [r14 + rdi + 32]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x010e0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 14], 1
	QUAD $0x020e3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 14], 2
	QUAD $0x030e364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 14], 3
	QUAD $0x040e264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 14], 4
	QUAD $0x050e164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 14], 5
	QUAD $0x060e1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 14], 6
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x44b70f41; WORD $0x223e             // movzx    eax, word [r14 + rdi + 34]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x070e0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 14], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x01120e74c40f4166                   // pinsrw    xmm6, word [r14 + rcx + 18], 1
	QUAD $0x02123e74c40f4366                   // pinsrw    xmm6, word [r14 + r15 + 18], 2
	QUAD $0x03123674c40f4166                   // pinsrw    xmm6, word [r14 + rsi + 18], 3
	QUAD $0x04122674c40f4366                   // pinsrw    xmm6, word [r14 + r12 + 18], 4
	QUAD $0x05121674c40f4166                   // pinsrw    xmm6, word [r14 + rdx + 18], 5
	QUAD $0x06121e74c40f4166                   // pinsrw    xmm6, word [r14 + rbx + 18], 6
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x07120e74c40f4366                   // pinsrw    xmm6, word [r14 + r9 + 18], 7
	LONG $0x750f4166; BYTE $0xf3               // pcmpeqw    xmm6, xmm11
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	QUAD $0x0000e0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 224[rbp] /* [rip + .LCPI5_14] */
	LONG $0x6f0f4566; BYTE $0xe2               // movdqa    xmm12, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4566; WORD $0xe110             // pblendvb    xmm12, xmm9, xmm0
	LONG $0x6f0f4566; BYTE $0xc6               // movdqa    xmm8, xmm14
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xc8               // movd    xmm1, r8d
	LONG $0x5cb70f45; WORD $0x243e             // movzx    r11d, word [r14 + rdi + 36]
	QUAD $0x01100e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 16], 1
	QUAD $0x02103e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 16], 2
	QUAD $0x0310367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 16], 3
	QUAD $0x0410267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 16], 4
	QUAD $0x0510167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 16], 5
	QUAD $0x06101e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 16], 6
	QUAD $0x01140e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 20], 1
	QUAD $0x02143e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 20], 2
	QUAD $0x03143664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 20], 3
	QUAD $0x04142664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 20], 4
	QUAD $0x05141664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 20], 5
	QUAD $0x06141e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 20], 6
	QUAD $0x07140e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 20], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xf910             // pblendvb    xmm15, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe5               // movd    xmm4, r13d
	LONG $0x6cb70f45; WORD $0x263e             // movzx    r13d, word [r14 + rdi + 38]
	QUAD $0x07100e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 16], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01160e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 22], 1
	QUAD $0x02163e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 22], 2
	QUAD $0x0316365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 22], 3
	QUAD $0x0416265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 22], 4
	QUAD $0x0516165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 22], 5
	QUAD $0x06161e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 22], 6
	QUAD $0x07160e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 22], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x01180e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 24], 1
	QUAD $0x02183e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 24], 2
	QUAD $0x03183654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 24], 3
	QUAD $0x04182654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 24], 4
	QUAD $0x05181654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 24], 5
	QUAD $0x06181e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 24], 6
	QUAD $0x07180e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 24], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x0000a0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xf110             // pblendvb    xmm14, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x44b70f45; WORD $0x283e             // movzx    r8d, word [r14 + rdi + 40]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4566; BYTE $0xf7               // por    xmm14, xmm15
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x54b70f45; WORD $0x2a3e             // movzx    r10d, word [r14 + rdi + 42]
	QUAD $0x011a0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 26], 1
	QUAD $0x021a3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 26], 2
	QUAD $0x031a364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 26], 3
	QUAD $0x041a264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 26], 4
	QUAD $0x051a164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 26], 5
	QUAD $0x061a1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 26], 6
	QUAD $0x071a0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 26], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x011c0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 28], 1
	QUAD $0x021c3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 28], 2
	QUAD $0x031c3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 28], 3
	QUAD $0x041c2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 28], 4
	QUAD $0x051c1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 28], 5
	QUAD $0x061c1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 28], 6
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	QUAD $0x0000c0bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x546e0f66; WORD $0x2024             // movd    xmm2, dword [rsp + 32]
	LONG $0x44b70f41; WORD $0x2c3e             // movzx    eax, word [r14 + rdi + 44]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x071c0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 28], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f45; WORD $0x2e3e             // movzx    r11d, word [r14 + rdi + 46]
	QUAD $0x011e0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 30], 1
	QUAD $0x021e3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 30], 2
	QUAD $0x031e365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 30], 3
	QUAD $0x041e265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 30], 4
	QUAD $0x051e165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 30], 5
	QUAD $0x061e1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 30], 6
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xcd               // movd    xmm1, r13d
	LONG $0x44b70f41; WORD $0x303e             // movzx    eax, word [r14 + rdi + 48]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x071e0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 30], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	QUAD $0x01220e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 34], 1
	QUAD $0x02223e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 34], 2
	QUAD $0x03223654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 34], 3
	QUAD $0x04222654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 34], 4
	QUAD $0x05221654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 34], 5
	QUAD $0x06221e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 34], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07220e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 34], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xf6               // por    xmm6, xmm14
	LONG $0x6f0f4566; BYTE $0xea               // movdqa    xmm13, xmm10
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	QUAD $0x000080856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd0               // movd    xmm2, r8d
	LONG $0x6cb70f45; WORD $0x323e             // movzx    r13d, word [r14 + rdi + 50]
	QUAD $0x01200e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 32], 1
	QUAD $0x02203e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 32], 2
	QUAD $0x0320367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 32], 3
	QUAD $0x0420267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 32], 4
	QUAD $0x0520167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 32], 5
	QUAD $0x06201e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 32], 6
	QUAD $0x01240e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 36], 1
	QUAD $0x02243e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 36], 2
	QUAD $0x03243664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 36], 3
	QUAD $0x04242664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 36], 4
	QUAD $0x05241664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 36], 5
	QUAD $0x06241e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 36], 6
	QUAD $0x07240e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 36], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4466; BYTE $0xee               // por    xmm13, xmm6
	QUAD $0x00000090b56f0f66                   // movdqa    xmm6, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x54b70f45; WORD $0x343e             // movzx    r10d, word [r14 + rdi + 52]
	QUAD $0x07200e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 32], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0x760f4566; BYTE $0xf6               // pcmpeqd    xmm14, xmm14
	LONG $0xef0f4166; BYTE $0xfe               // pxor    xmm7, xmm14
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01260e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 38], 1
	QUAD $0x02263e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 38], 2
	QUAD $0x0326364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 38], 3
	QUAD $0x0426264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 38], 4
	QUAD $0x0526164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 38], 5
	QUAD $0x06261e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 38], 6
	QUAD $0x07260e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 38], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x01280e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 40], 1
	QUAD $0x02283e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 40], 2
	QUAD $0x03283654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 40], 3
	QUAD $0x04282654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 40], 4
	QUAD $0x05281654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 40], 5
	QUAD $0x06281e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 40], 6
	QUAD $0x07280e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 40], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x000000a0ad6f0f66                   // movdqa    xmm5, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	LONG $0x44b70f45; WORD $0x363e             // movzx    r8d, word [r14 + rdi + 54]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	QUAD $0x000000b0b56f0f66                   // movdqa    xmm6, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x44b70f41; WORD $0x383e             // movzx    eax, word [r14 + rdi + 56]
	QUAD $0x012a0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 42], 1
	QUAD $0x022a3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 42], 2
	QUAD $0x032a365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 42], 3
	QUAD $0x042a265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 42], 4
	QUAD $0x052a165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 42], 5
	QUAD $0x062a1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 42], 6
	QUAD $0x072a0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 42], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x012c0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 44], 1
	QUAD $0x022c3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 44], 2
	QUAD $0x032c364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 44], 3
	QUAD $0x042c264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 44], 4
	QUAD $0x052c164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 44], 5
	QUAD $0x062c1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 44], 6
	LONG $0xeb0f4166; BYTE $0xe8               // por    xmm5, xmm8
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd110             // pblendvb    xmm2, xmm9, xmm0
	LONG $0x7c6e0f66; WORD $0x2024             // movd    xmm7, dword [rsp + 32]
	LONG $0x5cb70f45; WORD $0x3a3e             // movzx    r11d, word [r14 + rdi + 58]
	QUAD $0x072c0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 44], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0x0000d0bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xcd               // movd    xmm1, r13d
	LONG $0x6cb70f45; WORD $0x3c3e             // movzx    r13d, word [r14 + rdi + 60]
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	QUAD $0x012e0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 46], 1
	QUAD $0x022e3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 46], 2
	QUAD $0x032e3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 46], 3
	QUAD $0x042e2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 46], 4
	QUAD $0x052e1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 46], 5
	QUAD $0x062e1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 46], 6
	QUAD $0x072e0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 46], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6f0f4566; BYTE $0xc2               // movdqa    xmm8, xmm10
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd8               // movd    xmm3, r8d
	QUAD $0x01320e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 50], 1
	QUAD $0x02323e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 50], 2
	QUAD $0x0332364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 50], 3
	QUAD $0x0432264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 50], 4
	QUAD $0x0532164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 50], 5
	QUAD $0x06321e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 50], 6
	QUAD $0x07320e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 50], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	QUAD $0x00000080a56f0f66                   // movdqa    xmm4, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe110             // pblendvb    xmm4, xmm9, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	QUAD $0x01300e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 48], 1
	QUAD $0x02303e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 48], 2
	QUAD $0x0330367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 48], 3
	QUAD $0x0430267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 48], 4
	QUAD $0x0530167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 48], 5
	QUAD $0x06301e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 48], 6
	QUAD $0x07300e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 48], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xef0f4166; BYTE $0xfe               // pxor    xmm7, xmm14
	QUAD $0x01340e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 52], 1
	QUAD $0x02343e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 52], 2
	QUAD $0x03343654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 52], 3
	QUAD $0x04342654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 52], 4
	QUAD $0x05341654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 52], 5
	QUAD $0x06341e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 52], 6
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x07340e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 52], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	QUAD $0x01360e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 54], 1
	QUAD $0x02363e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 54], 2
	QUAD $0x0336365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 54], 3
	QUAD $0x0436265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 54], 4
	QUAD $0x0536165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 54], 5
	QUAD $0x06361e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 54], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x07360e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 54], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	QUAD $0x01380e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 56], 1
	QUAD $0x02383e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 56], 2
	QUAD $0x0338364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 56], 3
	QUAD $0x0438264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 56], 4
	QUAD $0x0538164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 56], 5
	QUAD $0x06381e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 56], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07380e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 56], 7
	LONG $0xe7f80f66                           // psubb    xmm4, xmm7
	QUAD $0x00000090ad6f0f66                   // movdqa    xmm5, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	QUAD $0x000000a0b56f0f66                   // movdqa    xmm6, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x013a0e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 58], 1
	QUAD $0x023a3e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 58], 2
	QUAD $0x033a3654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 58], 3
	QUAD $0x043a2654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 58], 4
	QUAD $0x053a1654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 58], 5
	QUAD $0x063a1e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 58], 6
	QUAD $0x073a0e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 58], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xdd               // movd    xmm3, r13d
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	QUAD $0x013c0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 60], 1
	QUAD $0x023c3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 60], 2
	QUAD $0x033c365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 60], 3
	QUAD $0x043c265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 60], 4
	QUAD $0x053c165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 60], 5
	QUAD $0x063c1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 60], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x073c0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 60], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe110             // pblendvb    xmm4, xmm9, xmm0
	QUAD $0x000000c08d6f0f66                   // movdqa    xmm1, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xc910             // pblendvb    xmm1, xmm9, xmm0
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd110             // pblendvb    xmm2, xmm9, xmm0
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x44b70f41; WORD $0x3e3e             // movzx    eax, word [r14 + rdi + 62]
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x013e0e44c40f4166                   // pinsrw    xmm0, word [r14 + rcx + 62], 1
	QUAD $0x023e3e44c40f4366                   // pinsrw    xmm0, word [r14 + r15 + 62], 2
	QUAD $0x033e3644c40f4166                   // pinsrw    xmm0, word [r14 + rsi + 62], 3
	QUAD $0x043e2644c40f4366                   // pinsrw    xmm0, word [r14 + r12 + 62], 4
	QUAD $0x053e1644c40f4166                   // pinsrw    xmm0, word [r14 + rdx + 62], 5
	QUAD $0x063e1e44c40f4166                   // pinsrw    xmm0, word [r14 + rbx + 62], 6
	QUAD $0x073e0e44c40f4366                   // pinsrw    xmm0, word [r14 + r9 + 62], 7
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0x380f4566; WORD $0xd110             // pblendvb    xmm10, xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xd2               // por    xmm10, xmm2
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x6c0f4166; BYTE $0xc5               // punpcklqdq    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x6c0f4166; BYTE $0xd2               // punpcklqdq    xmm2, xmm10
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI5_15] */
	LONG $0x00380f66; BYTE $0xd3               // pshufb    xmm2, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0x600f4566; BYTE $0xc2               // punpcklbw    xmm8, xmm10
	LONG $0x600f4566; BYTE $0xe5               // punpcklbw    xmm12, xmm13
	LONG $0x610f4566; BYTE $0xe0               // punpcklwd    xmm12, xmm8
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	LONG $0x7f0f45f3; WORD $0x8824             // movdqu    oword [r8 + 4*rcx], xmm12
	LONG $0x2444894c; BYTE $0x08               // mov    qword [rsp + 8], r8
	LONG $0x7f0f41f3; WORD $0x8844; BYTE $0x10 // movdqu    oword [r8 + 4*rcx + 16], xmm0
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8948; BYTE $0xcf                   // mov    rdi, rcx
	LONG $0x244c3b48; BYTE $0x28               // cmp    rcx, qword [rsp + 40]
	JNE  LBB5_111
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]
	LONG $0x24543b4c; BYTE $0x28               // cmp    r10, qword [rsp + 40]
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	LONG $0x245c8b44; BYTE $0x10               // mov    r11d, dword [rsp + 16]
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	JNE  LBB5_113
	JMP  LBB5_116

LBB5_133:
	LONG $0xf8e28349               // and    r10, -8
	WORD $0x894c; BYTE $0xd0       // mov    rax, r10
	LONG $0x06e0c148               // shl    rax, 6
	WORD $0x014c; BYTE $0xf0       // add    rax, r14
	LONG $0x24448948; BYTE $0x30   // mov    qword [rsp + 48], rax
	LONG $0x2454894c; BYTE $0x28   // mov    qword [rsp + 40], r10
	LONG $0x24448b48; BYTE $0x08   // mov    rax, qword [rsp + 8]
	LONG $0x90048d4a               // lea    rax, [rax + 4*r10]
	LONG $0x24448948; BYTE $0x38   // mov    qword [rsp + 56], rax
	LONG $0x6e0f4166; BYTE $0xc3   // movd    xmm0, r11d
	LONG $0xc0700ff2; BYTE $0xe0   // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00d8 // pshufd    xmm11, xmm0, 0
	WORD $0xff31                   // xor    edi, edi
	LONG $0xef0f4566; BYTE $0xc9   // pxor    xmm9, xmm9

LBB5_134:
	LONG $0x247c8948; BYTE $0x40               // mov    qword [rsp + 64], rdi
	LONG $0x06e7c148                           // shl    rdi, 6
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	WORD $0x8948; BYTE $0xfe                   // mov    rsi, rdi
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	WORD $0x8949; BYTE $0xf9                   // mov    r9, rdi
	LONG $0x04b70f41; BYTE $0x3e               // movzx    eax, word [r14 + rdi]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f41; WORD $0x023e             // movzx    eax, word [r14 + rdi + 2]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44b70f41; WORD $0x043e             // movzx    eax, word [r14 + rdi + 4]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f41; WORD $0x063e             // movzx    eax, word [r14 + rdi + 6]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b70f41; WORD $0x083e             // movzx    eax, word [r14 + rdi + 8]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b70f41; WORD $0x0a3e             // movzx    eax, word [r14 + rdi + 10]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b70f41; WORD $0x0c3e             // movzx    eax, word [r14 + rdi + 12]
	LONG $0x44b70f45; WORD $0x0e3e             // movzx    r8d, word [r14 + rdi + 14]
	LONG $0x54b70f45; WORD $0x103e             // movzx    r10d, word [r14 + rdi + 16]
	LONG $0x6cb70f45; WORD $0x123e             // movzx    r13d, word [r14 + rdi + 18]
	LONG $0x4cb70f41; WORD $0x143e             // movzx    ecx, word [r14 + rdi + 20]
	LONG $0x20244c89                           // mov    dword [rsp + 32], ecx
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 128
	LONG $0xc0ce8148; WORD $0x0000; BYTE $0x00 // or    rsi, 192
	LONG $0x00cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 256
	LONG $0x40ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 320
	LONG $0x80cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 384
	LONG $0xc40f4166; WORD $0x0e2c; BYTE $0x01 // pinsrw    xmm5, word [r14 + rcx], 1
	LONG $0xc40f4366; WORD $0x3e2c; BYTE $0x02 // pinsrw    xmm5, word [r14 + r15], 2
	LONG $0xc40f4166; WORD $0x362c; BYTE $0x03 // pinsrw    xmm5, word [r14 + rsi], 3
	LONG $0xc40f4366; WORD $0x262c; BYTE $0x04 // pinsrw    xmm5, word [r14 + r12], 4
	LONG $0xc40f4166; WORD $0x162c; BYTE $0x05 // pinsrw    xmm5, word [r14 + rdx], 5
	LONG $0xc40f4166; WORD $0x1e2c; BYTE $0x06 // pinsrw    xmm5, word [r14 + rbx], 6
	QUAD $0x01020e44c40f4166                   // pinsrw    xmm0, word [r14 + rcx + 2], 1
	QUAD $0x02023e44c40f4366                   // pinsrw    xmm0, word [r14 + r15 + 2], 2
	QUAD $0x03023644c40f4166                   // pinsrw    xmm0, word [r14 + rsi + 2], 3
	QUAD $0x04022644c40f4366                   // pinsrw    xmm0, word [r14 + r12 + 2], 4
	QUAD $0x05021644c40f4166                   // pinsrw    xmm0, word [r14 + rdx + 2], 5
	QUAD $0x06021e44c40f4166                   // pinsrw    xmm0, word [r14 + rbx + 2], 6
	LONG $0xc0c98149; WORD $0x0001; BYTE $0x00 // or    r9, 448
	QUAD $0x07020e44c40f4366                   // pinsrw    xmm0, word [r14 + r9 + 2], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f41; WORD $0x163e             // movzx    eax, word [r14 + rdi + 22]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	QUAD $0x01040e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 4], 1
	QUAD $0x02043e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 4], 2
	QUAD $0x0304364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 4], 3
	QUAD $0x0404264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 4], 4
	QUAD $0x0504164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 4], 5
	QUAD $0x06041e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 4], 6
	QUAD $0x07040e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 4], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x000080b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0x6f0f4166; BYTE $0xde               // movdqa    xmm3, xmm14
	LONG $0x380f4166; WORD $0xd910             // pblendvb    xmm3, xmm9, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x000090bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xc8               // movd    xmm1, r8d
	LONG $0x5cb70f45; WORD $0x183e             // movzx    r11d, word [r14 + rdi + 24]
	LONG $0xc40f4366; WORD $0x0e2c; BYTE $0x07 // pinsrw    xmm5, word [r14 + r9], 7
	LONG $0x750f4166; BYTE $0xeb               // pcmpeqw    xmm5, xmm11
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8ef0f66                           // pxor    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	QUAD $0x01060e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 6], 1
	QUAD $0x02063e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 6], 2
	QUAD $0x0306367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 6], 3
	QUAD $0x0406267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 6], 4
	QUAD $0x0506167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 6], 5
	QUAD $0x06061e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 6], 6
	QUAD $0x07060e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 6], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01080e44c40f4566                   // pinsrw    xmm8, word [r14 + rcx + 8], 1
	QUAD $0x02083e44c40f4766                   // pinsrw    xmm8, word [r14 + r15 + 8], 2
	QUAD $0x03083644c40f4566                   // pinsrw    xmm8, word [r14 + rsi + 8], 3
	QUAD $0x04082644c40f4766                   // pinsrw    xmm8, word [r14 + r12 + 8], 4
	QUAD $0x05081644c40f4566                   // pinsrw    xmm8, word [r14 + rdx + 8], 5
	QUAD $0x06081e44c40f4566                   // pinsrw    xmm8, word [r14 + rbx + 8], 6
	QUAD $0x07080e44c40f4766                   // pinsrw    xmm8, word [r14 + r9 + 8], 7
	LONG $0xddf80f66                           // psubb    xmm3, xmm5
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x380f4566; WORD $0xe110             // pblendvb    xmm12, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x44b70f45; WORD $0x1a3e             // movzx    r8d, word [r14 + rdi + 26]
	LONG $0x750f4566; BYTE $0xc3               // pcmpeqw    xmm8, xmm11
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xf5               // movd    xmm6, r13d
	LONG $0x6cb70f45; WORD $0x1c3e             // movzx    r13d, word [r14 + rdi + 28]
	QUAD $0x010a0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 10], 1
	QUAD $0x020a3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 10], 2
	QUAD $0x030a3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 10], 3
	QUAD $0x040a2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 10], 4
	QUAD $0x050a1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 10], 5
	QUAD $0x060a1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 10], 6
	QUAD $0x070a0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 10], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	QUAD $0x010c0e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 12], 1
	QUAD $0x020c3e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 12], 2
	QUAD $0x030c3654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 12], 3
	QUAD $0x040c2654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 12], 4
	QUAD $0x050c1654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 12], 5
	QUAD $0x060c1e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 12], 6
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x646e0f66; WORD $0x2024             // movd    xmm4, dword [rsp + 32]
	LONG $0x54b70f45; WORD $0x1e3e             // movzx    r10d, word [r14 + rdi + 30]
	QUAD $0x070c0e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 12], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x5c6e0f66; WORD $0x1824             // movd    xmm3, dword [rsp + 24]
	LONG $0x44b70f41; WORD $0x203e             // movzx    eax, word [r14 + rdi + 32]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x010e0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 14], 1
	QUAD $0x020e3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 14], 2
	QUAD $0x030e364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 14], 3
	QUAD $0x040e264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 14], 4
	QUAD $0x050e164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 14], 5
	QUAD $0x060e1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 14], 6
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x44b70f41; WORD $0x223e             // movzx    eax, word [r14 + rdi + 34]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x070e0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 14], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x01120e74c40f4166                   // pinsrw    xmm6, word [r14 + rcx + 18], 1
	QUAD $0x02123e74c40f4366                   // pinsrw    xmm6, word [r14 + r15 + 18], 2
	QUAD $0x03123674c40f4166                   // pinsrw    xmm6, word [r14 + rsi + 18], 3
	QUAD $0x04122674c40f4366                   // pinsrw    xmm6, word [r14 + r12 + 18], 4
	QUAD $0x05121674c40f4166                   // pinsrw    xmm6, word [r14 + rdx + 18], 5
	QUAD $0x06121e74c40f4166                   // pinsrw    xmm6, word [r14 + rbx + 18], 6
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x07120e74c40f4366                   // pinsrw    xmm6, word [r14 + r9 + 18], 7
	LONG $0x750f4166; BYTE $0xf3               // pcmpeqw    xmm6, xmm11
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	QUAD $0x0000e0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 224[rbp] /* [rip + .LCPI5_14] */
	LONG $0x6f0f4566; BYTE $0xe2               // movdqa    xmm12, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4566; WORD $0xe110             // pblendvb    xmm12, xmm9, xmm0
	LONG $0x6f0f4566; BYTE $0xc6               // movdqa    xmm8, xmm14
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xc8               // movd    xmm1, r8d
	LONG $0x5cb70f45; WORD $0x243e             // movzx    r11d, word [r14 + rdi + 36]
	QUAD $0x01100e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 16], 1
	QUAD $0x02103e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 16], 2
	QUAD $0x0310367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 16], 3
	QUAD $0x0410267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 16], 4
	QUAD $0x0510167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 16], 5
	QUAD $0x06101e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 16], 6
	QUAD $0x01140e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 20], 1
	QUAD $0x02143e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 20], 2
	QUAD $0x03143664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 20], 3
	QUAD $0x04142664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 20], 4
	QUAD $0x05141664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 20], 5
	QUAD $0x06141e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 20], 6
	QUAD $0x07140e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 20], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xf910             // pblendvb    xmm15, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe5               // movd    xmm4, r13d
	LONG $0x6cb70f45; WORD $0x263e             // movzx    r13d, word [r14 + rdi + 38]
	QUAD $0x07100e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 16], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI5_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01160e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 22], 1
	QUAD $0x02163e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 22], 2
	QUAD $0x0316365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 22], 3
	QUAD $0x0416265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 22], 4
	QUAD $0x0516165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 22], 5
	QUAD $0x06161e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 22], 6
	QUAD $0x07160e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 22], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x01180e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 24], 1
	QUAD $0x02183e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 24], 2
	QUAD $0x03183654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 24], 3
	QUAD $0x04182654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 24], 4
	QUAD $0x05181654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 24], 5
	QUAD $0x06181e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 24], 6
	QUAD $0x07180e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 24], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x0000a0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xf110             // pblendvb    xmm14, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x44b70f45; WORD $0x283e             // movzx    r8d, word [r14 + rdi + 40]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4566; BYTE $0xf7               // por    xmm14, xmm15
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x54b70f45; WORD $0x2a3e             // movzx    r10d, word [r14 + rdi + 42]
	QUAD $0x011a0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 26], 1
	QUAD $0x021a3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 26], 2
	QUAD $0x031a364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 26], 3
	QUAD $0x041a264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 26], 4
	QUAD $0x051a164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 26], 5
	QUAD $0x061a1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 26], 6
	QUAD $0x071a0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 26], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x011c0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 28], 1
	QUAD $0x021c3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 28], 2
	QUAD $0x031c3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 28], 3
	QUAD $0x041c2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 28], 4
	QUAD $0x051c1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 28], 5
	QUAD $0x061c1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 28], 6
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	QUAD $0x0000c0bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x546e0f66; WORD $0x2024             // movd    xmm2, dword [rsp + 32]
	LONG $0x44b70f41; WORD $0x2c3e             // movzx    eax, word [r14 + rdi + 44]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	QUAD $0x071c0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 28], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f45; WORD $0x2e3e             // movzx    r11d, word [r14 + rdi + 46]
	QUAD $0x011e0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 30], 1
	QUAD $0x021e3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 30], 2
	QUAD $0x031e365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 30], 3
	QUAD $0x041e265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 30], 4
	QUAD $0x051e165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 30], 5
	QUAD $0x061e1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 30], 6
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xcd               // movd    xmm1, r13d
	LONG $0x44b70f41; WORD $0x303e             // movzx    eax, word [r14 + rdi + 48]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x071e0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 30], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	QUAD $0x01220e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 34], 1
	QUAD $0x02223e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 34], 2
	QUAD $0x03223654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 34], 3
	QUAD $0x04222654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 34], 4
	QUAD $0x05221654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 34], 5
	QUAD $0x06221e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 34], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07220e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 34], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xf6               // por    xmm6, xmm14
	LONG $0x6f0f4566; BYTE $0xea               // movdqa    xmm13, xmm10
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xe910             // pblendvb    xmm13, xmm9, xmm0
	QUAD $0x000080856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd0               // movd    xmm2, r8d
	LONG $0x6cb70f45; WORD $0x323e             // movzx    r13d, word [r14 + rdi + 50]
	QUAD $0x01200e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 32], 1
	QUAD $0x02203e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 32], 2
	QUAD $0x0320367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 32], 3
	QUAD $0x0420267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 32], 4
	QUAD $0x0520167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 32], 5
	QUAD $0x06201e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 32], 6
	QUAD $0x01240e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 36], 1
	QUAD $0x02243e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 36], 2
	QUAD $0x03243664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 36], 3
	QUAD $0x04242664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 36], 4
	QUAD $0x05241664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 36], 5
	QUAD $0x06241e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 36], 6
	QUAD $0x07240e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 36], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4466; BYTE $0xee               // por    xmm13, xmm6
	QUAD $0x00000090b56f0f66                   // movdqa    xmm6, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x54b70f45; WORD $0x343e             // movzx    r10d, word [r14 + rdi + 52]
	QUAD $0x07200e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 32], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0x760f4566; BYTE $0xf6               // pcmpeqd    xmm14, xmm14
	LONG $0xef0f4166; BYTE $0xfe               // pxor    xmm7, xmm14
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01260e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 38], 1
	QUAD $0x02263e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 38], 2
	QUAD $0x0326364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 38], 3
	QUAD $0x0426264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 38], 4
	QUAD $0x0526164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 38], 5
	QUAD $0x06261e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 38], 6
	QUAD $0x07260e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 38], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x01280e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 40], 1
	QUAD $0x02283e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 40], 2
	QUAD $0x03283654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 40], 3
	QUAD $0x04282654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 40], 4
	QUAD $0x05281654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 40], 5
	QUAD $0x06281e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 40], 6
	QUAD $0x07280e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 40], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x000000a0ad6f0f66                   // movdqa    xmm5, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	LONG $0x44b70f45; WORD $0x363e             // movzx    r8d, word [r14 + rdi + 54]
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	QUAD $0x000000b0b56f0f66                   // movdqa    xmm6, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x44b70f41; WORD $0x383e             // movzx    eax, word [r14 + rdi + 56]
	QUAD $0x012a0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 42], 1
	QUAD $0x022a3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 42], 2
	QUAD $0x032a365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 42], 3
	QUAD $0x042a265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 42], 4
	QUAD $0x052a165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 42], 5
	QUAD $0x062a1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 42], 6
	QUAD $0x072a0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 42], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x012c0e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 44], 1
	QUAD $0x022c3e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 44], 2
	QUAD $0x032c364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 44], 3
	QUAD $0x042c264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 44], 4
	QUAD $0x052c164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 44], 5
	QUAD $0x062c1e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 44], 6
	LONG $0xeb0f4166; BYTE $0xe8               // por    xmm5, xmm8
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd110             // pblendvb    xmm2, xmm9, xmm0
	LONG $0x7c6e0f66; WORD $0x2024             // movd    xmm7, dword [rsp + 32]
	LONG $0x5cb70f45; WORD $0x3a3e             // movzx    r11d, word [r14 + rdi + 58]
	QUAD $0x072c0e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 44], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0x0000d0bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 208[rbp] /* [rip + .LCPI5_13] */
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xcd               // movd    xmm1, r13d
	LONG $0x6cb70f45; WORD $0x3c3e             // movzx    r13d, word [r14 + rdi + 60]
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	QUAD $0x012e0e64c40f4166                   // pinsrw    xmm4, word [r14 + rcx + 46], 1
	QUAD $0x022e3e64c40f4366                   // pinsrw    xmm4, word [r14 + r15 + 46], 2
	QUAD $0x032e3664c40f4166                   // pinsrw    xmm4, word [r14 + rsi + 46], 3
	QUAD $0x042e2664c40f4366                   // pinsrw    xmm4, word [r14 + r12 + 46], 4
	QUAD $0x052e1664c40f4166                   // pinsrw    xmm4, word [r14 + rdx + 46], 5
	QUAD $0x062e1e64c40f4166                   // pinsrw    xmm4, word [r14 + rbx + 46], 6
	QUAD $0x072e0e64c40f4366                   // pinsrw    xmm4, word [r14 + r9 + 46], 7
	LONG $0x750f4166; BYTE $0xe3               // pcmpeqw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6f0f4566; BYTE $0xc2               // movdqa    xmm8, xmm10
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xc110             // pblendvb    xmm8, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd8               // movd    xmm3, r8d
	QUAD $0x01320e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 50], 1
	QUAD $0x02323e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 50], 2
	QUAD $0x0332364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 50], 3
	QUAD $0x0432264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 50], 4
	QUAD $0x0532164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 50], 5
	QUAD $0x06321e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 50], 6
	QUAD $0x07320e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 50], 7
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	QUAD $0x00000080a56f0f66                   // movdqa    xmm4, oword 128[rbp] /* [rip + .LCPI5_8] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe110             // pblendvb    xmm4, xmm9, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	QUAD $0x01300e7cc40f4166                   // pinsrw    xmm7, word [r14 + rcx + 48], 1
	QUAD $0x02303e7cc40f4366                   // pinsrw    xmm7, word [r14 + r15 + 48], 2
	QUAD $0x0330367cc40f4166                   // pinsrw    xmm7, word [r14 + rsi + 48], 3
	QUAD $0x0430267cc40f4366                   // pinsrw    xmm7, word [r14 + r12 + 48], 4
	QUAD $0x0530167cc40f4166                   // pinsrw    xmm7, word [r14 + rdx + 48], 5
	QUAD $0x06301e7cc40f4166                   // pinsrw    xmm7, word [r14 + rbx + 48], 6
	QUAD $0x07300e7cc40f4366                   // pinsrw    xmm7, word [r14 + r9 + 48], 7
	LONG $0x750f4166; BYTE $0xfb               // pcmpeqw    xmm7, xmm11
	LONG $0xef0f4166; BYTE $0xfe               // pxor    xmm7, xmm14
	QUAD $0x01340e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 52], 1
	QUAD $0x02343e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 52], 2
	QUAD $0x03343654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 52], 3
	QUAD $0x04342654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 52], 4
	QUAD $0x05341654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 52], 5
	QUAD $0x06341e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 52], 6
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x07340e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 52], 7
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	QUAD $0x01360e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 54], 1
	QUAD $0x02363e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 54], 2
	QUAD $0x0336365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 54], 3
	QUAD $0x0436265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 54], 4
	QUAD $0x0536165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 54], 5
	QUAD $0x06361e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 54], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x07360e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 54], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	QUAD $0x01380e4cc40f4166                   // pinsrw    xmm1, word [r14 + rcx + 56], 1
	QUAD $0x02383e4cc40f4366                   // pinsrw    xmm1, word [r14 + r15 + 56], 2
	QUAD $0x0338364cc40f4166                   // pinsrw    xmm1, word [r14 + rsi + 56], 3
	QUAD $0x0438264cc40f4366                   // pinsrw    xmm1, word [r14 + r12 + 56], 4
	QUAD $0x0538164cc40f4166                   // pinsrw    xmm1, word [r14 + rdx + 56], 5
	QUAD $0x06381e4cc40f4166                   // pinsrw    xmm1, word [r14 + rbx + 56], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07380e4cc40f4366                   // pinsrw    xmm1, word [r14 + r9 + 56], 7
	LONG $0xe7f80f66                           // psubb    xmm4, xmm7
	QUAD $0x00000090ad6f0f66                   // movdqa    xmm5, oword 144[rbp] /* [rip + .LCPI5_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xe910             // pblendvb    xmm5, xmm9, xmm0
	QUAD $0x000000a0b56f0f66                   // movdqa    xmm6, oword 160[rbp] /* [rip + .LCPI5_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xf110             // pblendvb    xmm6, xmm9, xmm0
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x750f4166; BYTE $0xcb               // pcmpeqw    xmm1, xmm11
	QUAD $0x013a0e54c40f4166                   // pinsrw    xmm2, word [r14 + rcx + 58], 1
	QUAD $0x023a3e54c40f4366                   // pinsrw    xmm2, word [r14 + r15 + 58], 2
	QUAD $0x033a3654c40f4166                   // pinsrw    xmm2, word [r14 + rsi + 58], 3
	QUAD $0x043a2654c40f4366                   // pinsrw    xmm2, word [r14 + r12 + 58], 4
	QUAD $0x053a1654c40f4166                   // pinsrw    xmm2, word [r14 + rdx + 58], 5
	QUAD $0x063a1e54c40f4166                   // pinsrw    xmm2, word [r14 + rbx + 58], 6
	QUAD $0x073a0e54c40f4366                   // pinsrw    xmm2, word [r14 + r9 + 58], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x750f4166; BYTE $0xd3               // pcmpeqw    xmm2, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6e0f4166; BYTE $0xdd               // movd    xmm3, r13d
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	QUAD $0x013c0e5cc40f4166                   // pinsrw    xmm3, word [r14 + rcx + 60], 1
	QUAD $0x023c3e5cc40f4366                   // pinsrw    xmm3, word [r14 + r15 + 60], 2
	QUAD $0x033c365cc40f4166                   // pinsrw    xmm3, word [r14 + rsi + 60], 3
	QUAD $0x043c265cc40f4366                   // pinsrw    xmm3, word [r14 + r12 + 60], 4
	QUAD $0x053c165cc40f4166                   // pinsrw    xmm3, word [r14 + rdx + 60], 5
	QUAD $0x063c1e5cc40f4166                   // pinsrw    xmm3, word [r14 + rbx + 60], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x073c0e5cc40f4366                   // pinsrw    xmm3, word [r14 + r9 + 60], 7
	LONG $0x750f4166; BYTE $0xdb               // pcmpeqw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI5_11] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe110             // pblendvb    xmm4, xmm9, xmm0
	QUAD $0x000000c08d6f0f66                   // movdqa    xmm1, oword 192[rbp] /* [rip + .LCPI5_12] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xc910             // pblendvb    xmm1, xmm9, xmm0
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd110             // pblendvb    xmm2, xmm9, xmm0
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x44b70f41; WORD $0x3e3e             // movzx    eax, word [r14 + rdi + 62]
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x013e0e44c40f4166                   // pinsrw    xmm0, word [r14 + rcx + 62], 1
	QUAD $0x023e3e44c40f4366                   // pinsrw    xmm0, word [r14 + r15 + 62], 2
	QUAD $0x033e3644c40f4166                   // pinsrw    xmm0, word [r14 + rsi + 62], 3
	QUAD $0x043e2644c40f4366                   // pinsrw    xmm0, word [r14 + r12 + 62], 4
	QUAD $0x053e1644c40f4166                   // pinsrw    xmm0, word [r14 + rdx + 62], 5
	QUAD $0x063e1e44c40f4166                   // pinsrw    xmm0, word [r14 + rbx + 62], 6
	QUAD $0x073e0e44c40f4366                   // pinsrw    xmm0, word [r14 + r9 + 62], 7
	LONG $0x750f4166; BYTE $0xc3               // pcmpeqw    xmm0, xmm11
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0x380f4566; WORD $0xd110             // pblendvb    xmm10, xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xd2               // por    xmm10, xmm2
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x6c0f4166; BYTE $0xc5               // punpcklqdq    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x6c0f4166; BYTE $0xd2               // punpcklqdq    xmm2, xmm10
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI5_15] */
	LONG $0x00380f66; BYTE $0xd3               // pshufb    xmm2, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0x600f4566; BYTE $0xc2               // punpcklbw    xmm8, xmm10
	LONG $0x600f4566; BYTE $0xe5               // punpcklbw    xmm12, xmm13
	LONG $0x610f4566; BYTE $0xe0               // punpcklwd    xmm12, xmm8
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	LONG $0x7f0f45f3; WORD $0x8824             // movdqu    oword [r8 + 4*rcx], xmm12
	LONG $0x2444894c; BYTE $0x08               // mov    qword [rsp + 8], r8
	LONG $0x7f0f41f3; WORD $0x8844; BYTE $0x10 // movdqu    oword [r8 + 4*rcx + 16], xmm0
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8948; BYTE $0xcf                   // mov    rdi, rcx
	LONG $0x244c3b48; BYTE $0x28               // cmp    rcx, qword [rsp + 40]
	JNE  LBB5_134
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]
	LONG $0x24543b4c; BYTE $0x28               // cmp    r10, qword [rsp + 40]
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	LONG $0x245c8b44; BYTE $0x10               // mov    r11d, dword [rsp + 16]
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	JNE  LBB5_136
	JMP  LBB5_139

LBB5_181:
	WORD $0x894d; BYTE $0xd0                   // mov    r8, r10
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x014c; BYTE $0xf3                   // add    rbx, r14
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	LONG $0x80248d4e                           // lea    r12, [rax + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc68149; WORD $0x0001; BYTE $0x00 // add    r14, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI5_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI5_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI5_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI5_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI5_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI5_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI5_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI5_7] */
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]

LBB5_182:
	QUAD $0xfffe04b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 508]
	QUAD $0xfffe08be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 504]
	QUAD $0xfffe0cae100f41f3; BYTE $0xff               // movss    xmm5, dword [r14 - 500]
	QUAD $0xfffe10a6100f41f3; BYTE $0xff               // movss    xmm4, dword [r14 - 496]
	QUAD $0xfe84b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 380], 16
	QUAD $0xff04b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 252], 32
	QUAD $0x308476213a0f4166                           // insertps    xmm6, dword [r14 - 124], 48
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	QUAD $0xfe88be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 376], 16
	QUAD $0xff08be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 248], 32
	QUAD $0x30887e213a0f4166                           // insertps    xmm7, dword [r14 - 120], 48
	QUAD $0xfe8cae213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm5, dword [r14 - 372], 16
	QUAD $0xff0cae213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm5, dword [r14 - 244], 32
	QUAD $0x308c6e213a0f4166                           // insertps    xmm5, dword [r14 - 116], 48
	QUAD $0xfe90a6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm4, dword [r14 - 368], 16
	QUAD $0xff10a6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm4, dword [r14 - 240], 32
	QUAD $0x309066213a0f4166                           // insertps    xmm4, dword [r14 - 112], 48
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                                   // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7                       // pand    xmm2, xmm15
	LONG $0xd7f80f66                                   // psubb    xmm2, xmm7
	QUAD $0xfffe14be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 492]
	QUAD $0xfe94be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 364], 16
	QUAD $0xff14be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 236], 32
	QUAD $0x30947e213a0f4166                           // insertps    xmm7, dword [r14 - 108], 48
	LONG $0xd6eb0f66                                   // por    xmm2, xmm6
	QUAD $0xfffe18b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 488]
	QUAD $0xfe98b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 360], 16
	QUAD $0xff18b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 232], 32
	QUAD $0x309876213a0f4166                           // insertps    xmm6, dword [r14 - 104], 48
	LONG $0x04e9c20f                                   // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02                       // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8                       // pand    xmm5, xmm8
	LONG $0xeaeb0f66                                   // por    xmm5, xmm2
	QUAD $0xfffe1c9e100f41f3; BYTE $0xff               // movss    xmm3, dword [r14 - 484]
	QUAD $0xfe9c9e213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm3, dword [r14 - 356], 16
	QUAD $0xff1c9e213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm3, dword [r14 - 228], 32
	QUAD $0x309c5e213a0f4166                           // insertps    xmm3, dword [r14 - 100], 48
	LONG $0x04e1c20f                                   // cmpneqps    xmm4, xmm1
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03                       // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2                       // pand    xmm4, xmm10
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04                       // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb                       // pand    xmm7, xmm11
	LONG $0xfceb0f66                                   // por    xmm7, xmm4
	QUAD $0xfffe20a6100f41f3; BYTE $0xff               // movss    xmm4, dword [r14 - 480]
	QUAD $0xfea0a6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm4, dword [r14 - 352], 16
	QUAD $0xff20a6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm4, dword [r14 - 224], 32
	QUAD $0x30a066213a0f4166                           // insertps    xmm4, dword [r14 - 96], 48
	LONG $0xfdeb0f66                                   // por    xmm7, xmm5
	QUAD $0xfffe24ae100f41f3; BYTE $0xff               // movss    xmm5, dword [r14 - 476]
	QUAD $0xfea4ae213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm5, dword [r14 - 348], 16
	QUAD $0xff24ae213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm5, dword [r14 - 220], 32
	QUAD $0x30a46e213a0f4166                           // insertps    xmm5, dword [r14 - 92], 48
	LONG $0x04e9c20f                                   // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05                       // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4                       // pand    xmm6, xmm12
	LONG $0x04d9c20f                                   // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06                       // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd                       // pand    xmm3, xmm13
	LONG $0xdeeb0f66                                   // por    xmm3, xmm6
	QUAD $0xfffe2896100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 472]
	QUAD $0xfea896213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 344], 16
	QUAD $0xff2896213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 216], 32
	QUAD $0x30a856213a0f4166                           // insertps    xmm2, dword [r14 - 88], 48
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0x04e1c20f                                   // cmpneqps    xmm4, xmm1
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07                       // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6                       // pand    xmm4, xmm14
	LONG $0xe3eb0f66                                   // por    xmm4, xmm3
	QUAD $0xfffe2c9e100f41f3; BYTE $0xff               // movss    xmm3, dword [r14 - 468]
	QUAD $0xfeac9e213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm3, dword [r14 - 340], 16
	QUAD $0xff2c9e213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm3, dword [r14 - 212], 32
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	QUAD $0x30ac5e213a0f4166                           // insertps    xmm3, dword [r14 - 84], 48
	LONG $0xe7eb0f66                                   // por    xmm4, xmm7
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                                   // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf2f80f66                                   // psubb    xmm6, xmm2
	QUAD $0xfffe30be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 464]
	QUAD $0xfeb0be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 336], 16
	QUAD $0xff30be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 208], 32
	QUAD $0x30b07e213a0f4166                           // insertps    xmm7, dword [r14 - 80], 48
	LONG $0xf5eb0f66                                   // por    xmm6, xmm5
	QUAD $0xfffe34ae100f41f3; BYTE $0xff               // movss    xmm5, dword [r14 - 460]
	QUAD $0xfeb4ae213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm5, dword [r14 - 332], 16
	QUAD $0xff34ae213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm5, dword [r14 - 204], 32
	QUAD $0x30b46e213a0f4166                           // insertps    xmm5, dword [r14 - 76], 48
	LONG $0x04d9c20f                                   // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02                       // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8                       // pand    xmm3, xmm8
	LONG $0xdeeb0f66                                   // por    xmm3, xmm6
	QUAD $0xfffe38b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 456]
	QUAD $0xfeb8b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 328], 16
	QUAD $0xff38b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 200], 32
	QUAD $0x30b876213a0f4166                           // insertps    xmm6, dword [r14 - 72], 48
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03                       // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa                       // pand    xmm7, xmm10
	LONG $0x04e9c20f                                   // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04                       // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb                       // pand    xmm5, xmm11
	LONG $0xefeb0f66                                   // por    xmm5, xmm7
	QUAD $0xfffe3c96100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 452]
	QUAD $0xfebc96213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 324], 16
	QUAD $0xff3c96213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 196], 32
	QUAD $0x30bc56213a0f4166                           // insertps    xmm2, dword [r14 - 68], 48
	LONG $0xebeb0f66                                   // por    xmm5, xmm3
	QUAD $0xfffe40be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 448]
	QUAD $0xfec0be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 320], 16
	QUAD $0xff40be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 192], 32
	QUAD $0x30c07e213a0f4166                           // insertps    xmm7, dword [r14 - 64], 48
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05                       // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4                       // pand    xmm6, xmm12
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7                       // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06                       // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5                       // pand    xmm2, xmm13
	LONG $0xd6eb0f66                                   // por    xmm2, xmm6
	QUAD $0xfffe44b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 444]
	QUAD $0xfec4b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 316], 16
	QUAD $0xff44b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 188], 32
	QUAD $0x30c476213a0f4166                           // insertps    xmm6, dword [r14 - 60], 48
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07                       // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe                       // pand    xmm7, xmm14
	LONG $0xfaeb0f66                                   // por    xmm7, xmm2
	QUAD $0xfffe4896100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 440]
	QUAD $0xfec896213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 312], 16
	QUAD $0xff4896213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 184], 32
	QUAD $0x30c856213a0f4166                           // insertps    xmm2, dword [r14 - 56], 48
	LONG $0xfdeb0f66                                   // por    xmm7, xmm5
	QUAD $0xfffe4c9e100f41f3; BYTE $0xff               // movss    xmm3, dword [r14 - 436]
	QUAD $0xfecc9e213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm3, dword [r14 - 308], 16
	QUAD $0xff4c9e213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm3, dword [r14 - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	QUAD $0x30cc5e213a0f4166                           // insertps    xmm3, dword [r14 - 52], 48
	LONG $0xe7620f66                                   // punpckldq    xmm4, xmm7
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                                   // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	LONG $0xfaf80f66                                   // psubb    xmm7, xmm2
	QUAD $0xfffe50ae100f41f3; BYTE $0xff               // movss    xmm5, dword [r14 - 432]
	QUAD $0xfed0ae213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm5, dword [r14 - 304], 16
	QUAD $0xff50ae213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm5, dword [r14 - 176], 32
	QUAD $0x30d06e213a0f4166                           // insertps    xmm5, dword [r14 - 48], 48
	LONG $0xfeeb0f66                                   // por    xmm7, xmm6
	QUAD $0xfffe54b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 428]
	QUAD $0xfed4b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 300], 16
	QUAD $0xff54b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 172], 32
	QUAD $0x30d476213a0f4166                           // insertps    xmm6, dword [r14 - 44], 48
	LONG $0x04d9c20f                                   // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02                       // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8                       // pand    xmm3, xmm8
	LONG $0xdfeb0f66                                   // por    xmm3, xmm7
	QUAD $0xfffe58be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 424]
	QUAD $0xfed8be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 296], 16
	QUAD $0xff58be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 168], 32
	QUAD $0x30d87e213a0f4166                           // insertps    xmm7, dword [r14 - 40], 48
	LONG $0x04e9c20f                                   // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03                       // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea                       // pand    xmm5, xmm10
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04                       // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3                       // pand    xmm6, xmm11
	LONG $0xf5eb0f66                                   // por    xmm6, xmm5
	QUAD $0xfffe5c96100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 420]
	QUAD $0xfedc96213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 292], 16
	QUAD $0xff5c96213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 164], 32
	QUAD $0x30dc56213a0f4166                           // insertps    xmm2, dword [r14 - 36], 48
	LONG $0xf3eb0f66                                   // por    xmm6, xmm3
	QUAD $0xfffe60ae100f41f3; BYTE $0xff               // movss    xmm5, dword [r14 - 416]
	QUAD $0xfee0ae213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm5, dword [r14 - 288], 16
	QUAD $0xff60ae213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm5, dword [r14 - 160], 32
	QUAD $0x30e06e213a0f4166                           // insertps    xmm5, dword [r14 - 32], 48
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05                       // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc                       // pand    xmm7, xmm12
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7                       // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06                       // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5                       // pand    xmm2, xmm13
	LONG $0xd7eb0f66                                   // por    xmm2, xmm7
	QUAD $0xfffe64be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 412]
	QUAD $0xfee4be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 284], 16
	QUAD $0xff64be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 156], 32
	QUAD $0x30e47e213a0f4166                           // insertps    xmm7, dword [r14 - 28], 48
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0x04e9c20f                                   // cmpneqps    xmm5, xmm1
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07                       // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee                       // pand    xmm5, xmm14
	LONG $0xeaeb0f66                                   // por    xmm5, xmm2
	QUAD $0xfffe6896100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 408]
	QUAD $0xfee896213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 280], 16
	QUAD $0xff6896213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 152], 32
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	QUAD $0x30e856213a0f4166                           // insertps    xmm2, dword [r14 - 24], 48
	LONG $0xeeeb0f66                                   // por    xmm5, xmm6
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                                   // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf2f80f66                                   // psubb    xmm6, xmm2
	QUAD $0xfffe6c9e100f41f3; BYTE $0xff               // movss    xmm3, dword [r14 - 404]
	QUAD $0xfeec9e213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm3, dword [r14 - 276], 16
	QUAD $0xff6c9e213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm3, dword [r14 - 148], 32
	QUAD $0x30ec5e213a0f4166                           // insertps    xmm3, dword [r14 - 20], 48
	LONG $0xf7eb0f66                                   // por    xmm6, xmm7
	QUAD $0xfffe7096100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 400]
	QUAD $0xfef096213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 272], 16
	QUAD $0xff7096213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 144], 32
	QUAD $0x30f056213a0f4166                           // insertps    xmm2, dword [r14 - 16], 48
	LONG $0x04d9c20f                                   // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02                       // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8                       // pand    xmm3, xmm8
	LONG $0xdeeb0f66                                   // por    xmm3, xmm6
	QUAD $0xfffe74b6100f41f3; BYTE $0xff               // movss    xmm6, dword [r14 - 396]
	QUAD $0xfef4b6213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm6, dword [r14 - 268], 16
	QUAD $0xff74b6213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm6, dword [r14 - 140], 32
	QUAD $0x30f476213a0f4166                           // insertps    xmm6, dword [r14 - 12], 48
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7                       // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03                       // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2                       // pand    xmm2, xmm10
	LONG $0x04f1c20f                                   // cmpneqps    xmm6, xmm1
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04                       // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3                       // pand    xmm6, xmm11
	LONG $0xf2eb0f66                                   // por    xmm6, xmm2
	QUAD $0xfffe78be100f41f3; BYTE $0xff               // movss    xmm7, dword [r14 - 392]
	QUAD $0xfef8be213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm7, dword [r14 - 264], 16
	QUAD $0xff78be213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm7, dword [r14 - 136], 32
	QUAD $0x30f87e213a0f4166                           // insertps    xmm7, dword [r14 - 8], 48
	LONG $0xf3eb0f66                                   // por    xmm6, xmm3
	QUAD $0xfffe7c96100f41f3; BYTE $0xff               // movss    xmm2, dword [r14 - 388]
	QUAD $0xfefc96213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm2, dword [r14 - 260], 16
	QUAD $0xff7c96213a0f4166; WORD $0xffff; BYTE $0x20 // insertps    xmm2, dword [r14 - 132], 32
	QUAD $0x30fc56213a0f4166                           // insertps    xmm2, dword [r14 - 4], 48
	LONG $0x04f9c20f                                   // cmpneqps    xmm7, xmm1
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05                       // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc                       // pand    xmm7, xmm12
	LONG $0x04d1c20f                                   // cmpneqps    xmm2, xmm1
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7                       // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06                       // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5                       // pand    xmm2, xmm13
	LONG $0xd7eb0f66                                   // por    xmm2, xmm7
	QUAD $0xfffe809e100f41f3; BYTE $0xff               // movss    xmm3, dword [r14 - 384]
	QUAD $0xff009e213a0f4166; WORD $0xffff; BYTE $0x10 // insertps    xmm3, dword [r14 - 256], 16
	QUAD $0x20805e213a0f4166                           // insertps    xmm3, dword [r14 - 128], 32
	LONG $0x3a0f4166; WORD $0x1e21; BYTE $0x30         // insertps    xmm3, dword [r14], 48
	LONG $0x04d9c20f                                   // cmpneqps    xmm3, xmm1
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07                       // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde                       // pand    xmm3, xmm14
	LONG $0xdaeb0f66                                   // por    xmm3, xmm2
	LONG $0xdeeb0f66                                   // por    xmm3, xmm6
	LONG $0xeb620f66                                   // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                                   // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100                     // pshufb    xmm4, xmm9
	LONG $0x247f0ff3; BYTE $0x88                       // movdqu    oword [rax + 4*rcx], xmm4
	LONG $0x04c18348                                   // add    rcx, 4
	LONG $0x00c68149; WORD $0x0002; BYTE $0x00         // add    r14, 512
	WORD $0x3949; BYTE $0xc8                           // cmp    r8, rcx
	JNE  LBB5_182
	WORD $0x394d; BYTE $0xc2                           // cmp    r10, r8
	JNE  LBB5_184
	JMP  LBB5_187

TEXT ·_comparison_greater_arr_arr_sse4(SB), $80-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	ADDQ $8, SP

	WORD $0x894d; BYTE $0xc3 // mov    r11, r8
	WORD $0x8949; BYTE $0xce // mov    r14, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB6_29
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB6_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB6_68
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB6_79
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB6_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_22
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_20:
	WORD $0x0a8b                 // mov    ecx, dword [rdx]
	LONG $0x04c28348             // add    rdx, 4
	WORD $0x0e3b                 // cmp    ecx, dword [rsi]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x1945; BYTE $0xd2     // sbb    r10d, r10d
	LONG $0x07588d48             // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xd8490f48             // cmovns    rbx, rax
	LONG $0x03fbc148             // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44     // lea    r9d, [8*rbx]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2044; BYTE $0xd7     // and    dil, r10b
	WORD $0x3044; BYTE $0xc7     // xor    dil, r8b
	LONG $0x1e3c8841             // mov    byte [r14 + rbx], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_20
	LONG $0x01c68349             // add    r14, 1

LBB6_22:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_26
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB6_24:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	LONG $0xd5970f41                           // seta    r13b
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454970f; BYTE $0x14               // seta    byte [rsp + 20]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	LONG $0x2454970f; BYTE $0x15               // seta    byte [rsp + 21]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454970f; BYTE $0x17               // seta    byte [rsp + 23]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	LONG $0x2454970f; BYTE $0x16               // seta    byte [rsp + 22]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454970f; BYTE $0x04               // seta    byte [rsp + 4]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	LONG $0xd7970f41                           // seta    r15b
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454970f; BYTE $0x09               // seta    byte [rsp + 9]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	LONG $0xd0970f41                           // seta    r8b
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	LONG $0xd1970f41                           // seta    r9b
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0xd4970f41                           // seta    r12b
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	LONG $0x2454970f; BYTE $0x05               // seta    byte [rsp + 5]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454970f; BYTE $0x07               // seta    byte [rsp + 7]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	LONG $0x405e8b44                           // mov    r11d, dword [rsi + 64]
	LONG $0xd2970f41                           // seta    r10b
	WORD $0x4e8b; BYTE $0x44                   // mov    ecx, dword [rsi + 68]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x405a3b44                           // cmp    r11d, dword [rdx + 64]
	LONG $0x2454970f; BYTE $0x0a               // seta    byte [rsp + 10]
	WORD $0x4a3b; BYTE $0x44                   // cmp    ecx, dword [rdx + 68]
	LONG $0xd6970f41                           // seta    r14b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x4c                   // mov    eax, dword [rsi + 76]
	LONG $0x2454970f; BYTE $0x06               // seta    byte [rsp + 6]
	WORD $0x423b; BYTE $0x4c                   // cmp    eax, dword [rdx + 76]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	WORD $0x4e8b; BYTE $0x54                   // mov    ecx, dword [rsi + 84]
	LONG $0xd3970f41                           // seta    r11b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	WORD $0x4a3b; BYTE $0x54                   // cmp    ecx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454970f; BYTE $0x0b               // seta    byte [rsp + 11]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	LONG $0x2454970f; BYTE $0x0d               // seta    byte [rsp + 13]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd7970f40                           // seta    dil
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454970f; BYTE $0x13               // seta    byte [rsp + 19]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	LONG $0x2454970f; BYTE $0x0e               // seta    byte [rsp + 14]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454970f; BYTE $0x0c               // seta    byte [rsp + 12]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454970f; BYTE $0x0f               // seta    byte [rsp + 15]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	LONG $0x2454970f; BYTE $0x12               // seta    byte [rsp + 18]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454970f; BYTE $0x11               // seta    byte [rsp + 17]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x28               // add    r13b, byte [rsp + 40]
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x6cb60f44; WORD $0x1524             // movzx    r13d, byte [rsp + 21]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xcc                   // or    r12b, r9b
	LONG $0x245cb60f; BYTE $0x05               // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0845; BYTE $0xc2                   // or    r10b, r8b
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	LONG $0x24740244; BYTE $0x0a               // add    r14b, byte [rsp + 10]
	LONG $0x244cb60f; BYTE $0x06               // movzx    ecx, byte [rsp + 6]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0844; BYTE $0xf1                   // or    cl, r14b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xd9                   // or    cl, r11b
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x0b               // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x44b60f44; WORD $0x0d24             // movzx    r8d, byte [rsp + 13]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	LONG $0x01568845                           // mov    byte [r14 + 1], r10b
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x244cb60f; BYTE $0x0e               // movzx    ecx, byte [rsp + 14]
	WORD $0xc900                               // add    cl, cl
	LONG $0x13244c02                           // add    cl, byte [rsp + 19]
	LONG $0x245cb60f; BYTE $0x0c               // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0xcb08                               // or    bl, cl
	LONG $0x244cb60f; BYTE $0x0f               // movzx    ecx, byte [rsp + 15]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x12               // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x027e8841                           // mov    byte [r14 + 2], dil
	LONG $0x03468841                           // mov    byte [r14 + 3], al
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB6_24
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB6_26:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_28:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8a     // mov    edi, dword [rdx + 4*rcx]
	WORD $0x3c3b; BYTE $0x8e     // cmp    edi, dword [rsi + 4*rcx]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_28
	JMP  LBB6_123

LBB6_29:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB6_30
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB6_101
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB6_112
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB6_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_50
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_48:
	LONG $0x06100ff2             // movsd    xmm0, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0xd2970f41             // seta    r10b
	LONG $0x08c28348             // add    rdx, 8
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_48
	LONG $0x01c68349             // add    r14, 1

LBB6_50:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_54
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB6_52:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	LONG $0x06100ff2                           // movsd    xmm0, qword [rsi]
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	LONG $0x2454970f; BYTE $0x04               // seta    byte [rsp + 4]
	LONG $0x46100ff2; BYTE $0x08               // movsd    xmm0, qword [rsi + 8]
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x46100ff2; BYTE $0x10               // movsd    xmm0, qword [rsi + 16]
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	LONG $0x2454970f; BYTE $0x06               // seta    byte [rsp + 6]
	LONG $0x46100ff2; BYTE $0x18               // movsd    xmm0, qword [rsi + 24]
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	LONG $0x2454970f; BYTE $0x15               // seta    byte [rsp + 21]
	LONG $0x46100ff2; BYTE $0x20               // movsd    xmm0, qword [rsi + 32]
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	LONG $0x2454970f; BYTE $0x16               // seta    byte [rsp + 22]
	LONG $0x46100ff2; BYTE $0x28               // movsd    xmm0, qword [rsi + 40]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	LONG $0x2454970f; BYTE $0x17               // seta    byte [rsp + 23]
	LONG $0x46100ff2; BYTE $0x30               // movsd    xmm0, qword [rsi + 48]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x46100ff2; BYTE $0x38               // movsd    xmm0, qword [rsi + 56]
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x46100ff2; BYTE $0x40               // movsd    xmm0, qword [rsi + 64]
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x46100ff2; BYTE $0x48               // movsd    xmm0, qword [rsi + 72]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x46100ff2; BYTE $0x50               // movsd    xmm0, qword [rsi + 80]
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x46100ff2; BYTE $0x58               // movsd    xmm0, qword [rsi + 88]
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x46100ff2; BYTE $0x60               // movsd    xmm0, qword [rsi + 96]
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x46100ff2; BYTE $0x68               // movsd    xmm0, qword [rsi + 104]
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	LONG $0x2454970f; BYTE $0x05               // seta    byte [rsp + 5]
	LONG $0x46100ff2; BYTE $0x70               // movsd    xmm0, qword [rsi + 112]
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	LONG $0x2454970f; BYTE $0x07               // seta    byte [rsp + 7]
	LONG $0x46100ff2; BYTE $0x78               // movsd    xmm0, qword [rsi + 120]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	QUAD $0x0000008086100ff2                   // movsd    xmm0, qword [rsi + 128]
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	LONG $0x2454970f; BYTE $0x0e               // seta    byte [rsp + 14]
	QUAD $0x0000008886100ff2                   // movsd    xmm0, qword [rsi + 136]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	LONG $0xd4970f41                           // seta    r12b
	QUAD $0x0000009086100ff2                   // movsd    xmm0, qword [rsi + 144]
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	LONG $0xd5970f41                           // seta    r13b
	QUAD $0x0000009886100ff2                   // movsd    xmm0, qword [rsi + 152]
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	LONG $0x2454970f; BYTE $0x09               // seta    byte [rsp + 9]
	QUAD $0x000000a086100ff2                   // movsd    xmm0, qword [rsi + 160]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	LONG $0x2454970f; BYTE $0x0a               // seta    byte [rsp + 10]
	QUAD $0x000000a886100ff2                   // movsd    xmm0, qword [rsi + 168]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	LONG $0x2454970f; BYTE $0x0b               // seta    byte [rsp + 11]
	QUAD $0x000000b086100ff2                   // movsd    xmm0, qword [rsi + 176]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	LONG $0x2454970f; BYTE $0x0c               // seta    byte [rsp + 12]
	QUAD $0x000000b886100ff2                   // movsd    xmm0, qword [rsi + 184]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	LONG $0xd1970f41                           // seta    r9b
	QUAD $0x000000c086100ff2                   // movsd    xmm0, qword [rsi + 192]
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	LONG $0x2454970f; BYTE $0x14               // seta    byte [rsp + 20]
	QUAD $0x000000c886100ff2                   // movsd    xmm0, qword [rsi + 200]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	LONG $0x2454970f; BYTE $0x0d               // seta    byte [rsp + 13]
	QUAD $0x000000d086100ff2                   // movsd    xmm0, qword [rsi + 208]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	LONG $0x2454970f; BYTE $0x0f               // seta    byte [rsp + 15]
	QUAD $0x000000d886100ff2                   // movsd    xmm0, qword [rsi + 216]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	QUAD $0x000000e086100ff2                   // movsd    xmm0, qword [rsi + 224]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	LONG $0x2454970f; BYTE $0x12               // seta    byte [rsp + 18]
	QUAD $0x000000e886100ff2                   // movsd    xmm0, qword [rsi + 232]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	LONG $0x2454970f; BYTE $0x13               // seta    byte [rsp + 19]
	QUAD $0x000000f086100ff2                   // movsd    xmm0, qword [rsi + 240]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	QUAD $0x000000f886100ff2                   // movsd    xmm0, qword [rsi + 248]
	LONG $0x2454970f; BYTE $0x11               // seta    byte [rsp + 17]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	LONG $0xd0970f41                           // seta    r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0x04244c02                           // add    cl, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	LONG $0x247c0240; BYTE $0x08               // add    dil, byte [rsp + 8]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0xcf89                               // mov    edi, ecx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07               // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e               // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a               // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x03468845                           // mov    byte [r14 + 3], r8b
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff28             // add    qword [rsp + 40], -1
	JNE  LBB6_52
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]

LBB6_54:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_56:
	LONG $0x04100ff2; BYTE $0xce // movsd    xmm0, qword [rsi + 8*rcx]
	LONG $0x042e0f66; BYTE $0xca // ucomisd    xmm0, qword [rdx + 8*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x970f; BYTE $0xd3     // seta    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_56
	JMP  LBB6_123

LBB6_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB6_57
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB6_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_6:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd29f0f41             // setg    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_6
	LONG $0x01c68349             // add    r14, 1

LBB6_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_12
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB6_10:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x24549f0f; BYTE $0x28   // setg    byte [rsp + 40]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x9f0f; BYTE $0xd1       // setg    cl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x24549f0f; BYTE $0x14   // setg    byte [rsp + 20]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x24549f0f; BYTE $0x15   // setg    byte [rsp + 21]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x24549f0f; BYTE $0x16   // setg    byte [rsp + 22]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x24549f0f; BYTE $0x17   // setg    byte [rsp + 23]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x24549f0f; BYTE $0x04   // setg    byte [rsp + 4]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd79f0f41               // setg    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x24549f0f; BYTE $0x07   // setg    byte [rsp + 7]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd79f0f40               // setg    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd29f0f41               // setg    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd39f0f41               // setg    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd69f0f41               // setg    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x24549f0f; BYTE $0x05   // setg    byte [rsp + 5]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x24549f0f; BYTE $0x06   // setg    byte [rsp + 6]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	WORD $0x9f0f; BYTE $0xd3       // setg    bl
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x24549f0f; BYTE $0x0d   // setg    byte [rsp + 13]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd49f0f41               // setg    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd59f0f41               // setg    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x24549f0f; BYTE $0x08   // setg    byte [rsp + 8]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x24549f0f; BYTE $0x09   // setg    byte [rsp + 9]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x24549f0f; BYTE $0x0a   // setg    byte [rsp + 10]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x24549f0f; BYTE $0x0b   // setg    byte [rsp + 11]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd19f0f41               // setg    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x24549f0f; BYTE $0x13   // setg    byte [rsp + 19]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x24549f0f; BYTE $0x0c   // setg    byte [rsp + 12]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x24549f0f; BYTE $0x0e   // setg    byte [rsp + 14]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x24549f0f; BYTE $0x0f   // setg    byte [rsp + 15]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x24549f0f; BYTE $0x10   // setg    byte [rsp + 16]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x24549f0f; BYTE $0x11   // setg    byte [rsp + 17]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x24549f0f; BYTE $0x12   // setg    byte [rsp + 18]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	LONG $0xd09f0f41               // setg    r8b
	WORD $0xc900                   // add    cl, cl
	LONG $0x28244c02               // add    cl, byte [rsp + 40]
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x244cb60f; BYTE $0x04   // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14   // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x07   // add    dil, byte [rsp + 7]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0xcf89                   // mov    edi, ecx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0840; BYTE $0xf9       // or    cl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x06   // movzx    edi, byte [rsp + 6]
	LONG $0x06e7c040               // shl    dil, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0d   // add    r12b, byte [rsp + 13]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x3e       // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0b   // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x12   // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8       // or    r8b, cl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x03468845               // mov    byte [r14 + 3], r8b
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB6_10
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB6_12:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_14:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_14
	JMP  LBB6_123

LBB6_30:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB6_90
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB6_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_36
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_34:
	WORD $0x8b48; BYTE $0x0a     // mov    rcx, qword [rdx]
	LONG $0x08c28348             // add    rdx, 8
	WORD $0x3b48; BYTE $0x0e     // cmp    rcx, qword [rsi]
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x1945; BYTE $0xd2     // sbb    r10d, r10d
	LONG $0x07588d48             // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xd8490f48             // cmovns    rbx, rax
	LONG $0x03fbc148             // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44     // lea    r9d, [8*rbx]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2044; BYTE $0xd7     // and    dil, r10b
	WORD $0x3044; BYTE $0xc7     // xor    dil, r8b
	LONG $0x1e3c8841             // mov    byte [r14 + rbx], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_34
	LONG $0x01c68349             // add    r14, 1

LBB6_36:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_40
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB6_38:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454970f; BYTE $0x14               // seta    byte [rsp + 20]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x2454970f; BYTE $0x15               // seta    byte [rsp + 21]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454970f; BYTE $0x17               // seta    byte [rsp + 23]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x2454970f; BYTE $0x16               // seta    byte [rsp + 22]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454970f; BYTE $0x04               // seta    byte [rsp + 4]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454970f; BYTE $0x09               // seta    byte [rsp + 9]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x2454970f; BYTE $0x05               // seta    byte [rsp + 5]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454970f; BYTE $0x07               // seta    byte [rsp + 7]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	LONG $0x809e8b4c; WORD $0x0000; BYTE $0x00 // mov    r11, qword [rsi + 128]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x888e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 136]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x809a3b4c; WORD $0x0000; BYTE $0x00 // cmp    r11, qword [rdx + 128]
	LONG $0x2454970f; BYTE $0x0a               // seta    byte [rsp + 10]
	LONG $0x888a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 136]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0x98868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 152]
	LONG $0x2454970f; BYTE $0x06               // seta    byte [rsp + 6]
	LONG $0x98823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 152]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xa88e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 168]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0xa88a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454970f; BYTE $0x0b               // seta    byte [rsp + 11]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0x2454970f; BYTE $0x0d               // seta    byte [rsp + 13]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd7970f40                           // seta    dil
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454970f; BYTE $0x13               // seta    byte [rsp + 19]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0x2454970f; BYTE $0x0e               // seta    byte [rsp + 14]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454970f; BYTE $0x0c               // seta    byte [rsp + 12]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454970f; BYTE $0x0f               // seta    byte [rsp + 15]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0x2454970f; BYTE $0x12               // seta    byte [rsp + 18]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454970f; BYTE $0x11               // seta    byte [rsp + 17]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	WORD $0x0045; BYTE $0xed                   // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x28               // add    r13b, byte [rsp + 40]
	LONG $0x244cb60f; BYTE $0x04               // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14               // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x6cb60f44; WORD $0x1524             // movzx    r13d, byte [rsp + 21]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xd9                   // or    r9b, bl
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xcc                   // or    r12b, r9b
	LONG $0x245cb60f; BYTE $0x05               // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0845; BYTE $0xc2                   // or    r10b, r8b
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	LONG $0x24740244; BYTE $0x0a               // add    r14b, byte [rsp + 10]
	LONG $0x244cb60f; BYTE $0x06               // movzx    ecx, byte [rsp + 6]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0844; BYTE $0xf1                   // or    cl, r14b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0841; BYTE $0xcb                   // or    r11b, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xd9                   // or    cl, r11b
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x0b               // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x44b60f44; WORD $0x0d24             // movzx    r8d, byte [rsp + 13]
	LONG $0x06e0c041                           // shl    r8b, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0844; BYTE $0xc7                   // or    dil, r8b
	LONG $0x01568845                           // mov    byte [r14 + 1], r10b
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x244cb60f; BYTE $0x0e               // movzx    ecx, byte [rsp + 14]
	WORD $0xc900                               // add    cl, cl
	LONG $0x13244c02                           // add    cl, byte [rsp + 19]
	LONG $0x245cb60f; BYTE $0x0c               // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0xcb08                               // or    bl, cl
	LONG $0x244cb60f; BYTE $0x0f               // movzx    ecx, byte [rsp + 15]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x12               // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x027e8841                           // mov    byte [r14 + 2], dil
	LONG $0x03468841                           // mov    byte [r14 + 3], al
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff20             // add    qword [rsp + 32], -1
	JNE  LBB6_38
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]

LBB6_40:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_42:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xca3c8b48             // mov    rdi, qword [rdx + 8*rcx]
	LONG $0xce3c3b48             // cmp    rdi, qword [rsi + 8*rcx]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_42
	JMP  LBB6_123

LBB6_68:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_72
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_70:
	WORD $0xb70f; BYTE $0x0a     // movzx    ecx, word [rdx]
	LONG $0x02c28348             // add    rdx, 2
	WORD $0x3b66; BYTE $0x0e     // cmp    cx, word [rsi]
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x1945; BYTE $0xd2     // sbb    r10d, r10d
	LONG $0x07588d48             // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xd8490f48             // cmovns    rbx, rax
	LONG $0x03fbc148             // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44     // lea    r9d, [8*rbx]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2044; BYTE $0xd7     // and    dil, r10b
	WORD $0x3044; BYTE $0xc7     // xor    dil, r8b
	LONG $0x1e3c8841             // mov    byte [r14 + rbx], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_70
	LONG $0x01c68349             // add    r14, 1

LBB6_72:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_76
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB6_74:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454970f; BYTE $0x28   // seta    byte [rsp + 40]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0xd5970f41               // seta    r13b
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454970f; BYTE $0x14   // seta    byte [rsp + 20]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x2454970f; BYTE $0x15   // seta    byte [rsp + 21]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454970f; BYTE $0x17   // seta    byte [rsp + 23]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x2454970f; BYTE $0x16   // seta    byte [rsp + 22]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454970f; BYTE $0x04   // seta    byte [rsp + 4]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0xd7970f41               // seta    r15b
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454970f; BYTE $0x09   // seta    byte [rsp + 9]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0xd0970f41               // seta    r8b
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	WORD $0x970f; BYTE $0xd3       // seta    bl
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0xd1970f41               // seta    r9b
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0xd4970f41               // seta    r12b
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x2454970f; BYTE $0x05   // seta    byte [rsp + 5]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454970f; BYTE $0x07   // seta    byte [rsp + 7]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	LONG $0x5eb70f44; BYTE $0x20   // movzx    r11d, word [rsi + 32]
	LONG $0xd2970f41               // seta    r10b
	LONG $0x224eb70f               // movzx    ecx, word [rsi + 34]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x5a3b4466; BYTE $0x20   // cmp    r11w, word [rdx + 32]
	LONG $0x2454970f; BYTE $0x0a   // seta    byte [rsp + 10]
	LONG $0x224a3b66               // cmp    cx, word [rdx + 34]
	LONG $0xd6970f41               // seta    r14b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2646b70f               // movzx    eax, word [rsi + 38]
	LONG $0x2454970f; BYTE $0x06   // seta    byte [rsp + 6]
	LONG $0x26423b66               // cmp    ax, word [rdx + 38]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0x2a4eb70f               // movzx    ecx, word [rsi + 42]
	LONG $0xd3970f41               // seta    r11b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454970f; BYTE $0x08   // seta    byte [rsp + 8]
	LONG $0x2a4a3b66               // cmp    cx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454970f; BYTE $0x0b   // seta    byte [rsp + 11]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2454970f; BYTE $0x0d   // seta    byte [rsp + 13]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd7970f40               // seta    dil
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454970f; BYTE $0x13   // seta    byte [rsp + 19]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x2454970f; BYTE $0x0e   // seta    byte [rsp + 14]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454970f; BYTE $0x0c   // seta    byte [rsp + 12]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454970f; BYTE $0x0f   // seta    byte [rsp + 15]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x2454970f; BYTE $0x12   // seta    byte [rsp + 18]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454970f; BYTE $0x11   // seta    byte [rsp + 17]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454970f; BYTE $0x10   // seta    byte [rsp + 16]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	WORD $0x970f; BYTE $0xd0       // seta    al
	WORD $0x0045; BYTE $0xed       // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x28   // add    r13b, byte [rsp + 40]
	LONG $0x244cb60f; BYTE $0x04   // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14   // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0x0844; BYTE $0xe9       // or    cl, r13b
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09   // add    r8b, byte [rsp + 9]
	LONG $0x6cb60f44; WORD $0x1524 // movzx    r13d, byte [rsp + 21]
	LONG $0x03e5c041               // shl    r13b, 3
	WORD $0x0841; BYTE $0xcd       // or    r13b, cl
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0x0844; BYTE $0xe9       // or    cl, r13b
	WORD $0x8941; BYTE $0xc8       // mov    r8d, ecx
	LONG $0x03e1c041               // shl    r9b, 3
	WORD $0x0841; BYTE $0xd9       // or    r9b, bl
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0844; BYTE $0xc1       // or    cl, r8b
	LONG $0x04e4c041               // shl    r12b, 4
	WORD $0x0845; BYTE $0xcc       // or    r12b, r9b
	LONG $0x245cb60f; BYTE $0x05   // movzx    ebx, byte [rsp + 5]
	WORD $0xe3c0; BYTE $0x05       // shl    bl, 5
	WORD $0x0844; BYTE $0xe3       // or    bl, r12b
	LONG $0x44b60f44; WORD $0x0724 // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e2c041               // shl    r10b, 7
	WORD $0x0845; BYTE $0xc2       // or    r10b, r8b
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	WORD $0x0841; BYTE $0xda       // or    r10b, bl
	WORD $0x0045; BYTE $0xf6       // add    r14b, r14b
	LONG $0x24740244; BYTE $0x0a   // add    r14b, byte [rsp + 10]
	LONG $0x244cb60f; BYTE $0x06   // movzx    ecx, byte [rsp + 6]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0x0844; BYTE $0xf1       // or    cl, r14b
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0841; BYTE $0xcb       // or    r11b, cl
	LONG $0x244cb60f; BYTE $0x08   // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0x0844; BYTE $0xd9       // or    cl, r11b
	WORD $0xcb89                   // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x0b   // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0xd908                   // or    cl, bl
	WORD $0x8845; BYTE $0x3e       // mov    byte [r14], r15b
	LONG $0x44b60f44; WORD $0x0d24 // movzx    r8d, byte [rsp + 13]
	LONG $0x06e0c041               // shl    r8b, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0844; BYTE $0xc7       // or    dil, r8b
	LONG $0x01568845               // mov    byte [r14 + 1], r10b
	WORD $0x0840; BYTE $0xcf       // or    dil, cl
	LONG $0x244cb60f; BYTE $0x0e   // movzx    ecx, byte [rsp + 14]
	WORD $0xc900                   // add    cl, cl
	LONG $0x13244c02               // add    cl, byte [rsp + 19]
	LONG $0x245cb60f; BYTE $0x0c   // movzx    ebx, byte [rsp + 12]
	WORD $0xe3c0; BYTE $0x02       // shl    bl, 2
	WORD $0xcb08                   // or    bl, cl
	LONG $0x244cb60f; BYTE $0x0f   // movzx    ecx, byte [rsp + 15]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xd908                   // or    cl, bl
	WORD $0xcb89                   // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x12   // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xd908                   // or    cl, bl
	WORD $0xcb89                   // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x11   // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0xd908                   // or    cl, bl
	LONG $0x245cb60f; BYTE $0x10   // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06       // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07       // shl    al, 7
	WORD $0xd808                   // or    al, bl
	WORD $0xc808                   // or    al, cl
	LONG $0x027e8841               // mov    byte [r14 + 2], dil
	LONG $0x03468841               // mov    byte [r14 + 3], al
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB6_74
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB6_76:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_78:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4a3cb70f             // movzx    edi, word [rdx + 2*rcx]
	LONG $0x4e3c3b66             // cmp    di, word [rsi + 2*rcx]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_78
	JMP  LBB6_123

LBB6_79:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_83
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_81:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd29f0f41             // setg    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_81
	LONG $0x01c68349             // add    r14, 1

LBB6_83:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_87
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB6_85:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x24549f0f; BYTE $0x28   // setg    byte [rsp + 40]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x24549f0f; BYTE $0x20   // setg    byte [rsp + 32]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x24549f0f; BYTE $0x14   // setg    byte [rsp + 20]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x24549f0f; BYTE $0x15   // setg    byte [rsp + 21]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x24549f0f; BYTE $0x16   // setg    byte [rsp + 22]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x24549f0f; BYTE $0x17   // setg    byte [rsp + 23]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x24549f0f; BYTE $0x04   // setg    byte [rsp + 4]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd59f0f41               // setg    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x24549f0f; BYTE $0x09   // setg    byte [rsp + 9]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd09f0f41               // setg    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd39f0f41               // setg    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd79f0f41               // setg    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x24549f0f; BYTE $0x05   // setg    byte [rsp + 5]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x24549f0f; BYTE $0x06   // setg    byte [rsp + 6]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x24549f0f; BYTE $0x07   // setg    byte [rsp + 7]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	WORD $0x9f0f; BYTE $0xd3       // setg    bl
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x224eb70f               // movzx    ecx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x24549f0f; BYTE $0x0a   // setg    byte [rsp + 10]
	LONG $0x224a3b66               // cmp    cx, word [rdx + 34]
	LONG $0x264eb70f               // movzx    ecx, word [rsi + 38]
	LONG $0xd29f0f41               // setg    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd69f0f41               // setg    r14b
	LONG $0x264a3b66               // cmp    cx, word [rdx + 38]
	LONG $0x2a4eb70f               // movzx    ecx, word [rsi + 42]
	LONG $0xd49f0f41               // setg    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x24549f0f; BYTE $0x08   // setg    byte [rsp + 8]
	LONG $0x2a4a3b66               // cmp    cx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x24549f0f; BYTE $0x0b   // setg    byte [rsp + 11]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x24549f0f; BYTE $0x0c   // setg    byte [rsp + 12]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd19f0f41               // setg    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x24549f0f; BYTE $0x13   // setg    byte [rsp + 19]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x24549f0f; BYTE $0x0d   // setg    byte [rsp + 13]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x24549f0f; BYTE $0x0e   // setg    byte [rsp + 14]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x24549f0f; BYTE $0x0f   // setg    byte [rsp + 15]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x24549f0f; BYTE $0x10   // setg    byte [rsp + 16]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x24549f0f; BYTE $0x12   // setg    byte [rsp + 18]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x24549f0f; BYTE $0x11   // setg    byte [rsp + 17]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	LONG $0xd79f0f40               // setg    dil
	LONG $0x2444b60f; BYTE $0x20   // movzx    eax, byte [rsp + 32]
	WORD $0xc000                   // add    al, al
	LONG $0x28244402               // add    al, byte [rsp + 40]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04   // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14   // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09   // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0x8941; BYTE $0xc8       // mov    r8d, ecx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0844; BYTE $0xc1       // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724 // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041               // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	WORD $0x0841; BYTE $0xcd       // or    r13b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a   // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x2e       // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c   // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x11   // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0840; BYTE $0xcf       // or    dil, cl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x037e8841               // mov    byte [r14 + 3], dil
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff38 // add    qword [rsp + 56], -1
	JNE  LBB6_85
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40   // mov    r15, qword [rsp + 64]

LBB6_87:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_89:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_89
	JMP  LBB6_123

LBB6_101:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_105
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_103:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd29f0f41             // setg    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_103
	LONG $0x01c68349             // add    r14, 1

LBB6_105:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_109
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB6_107:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x24549f0f; BYTE $0x14               // setg    byte [rsp + 20]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x24549f0f; BYTE $0x15               // setg    byte [rsp + 21]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x24549f0f; BYTE $0x16               // setg    byte [rsp + 22]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x24549f0f; BYTE $0x17               // setg    byte [rsp + 23]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x24549f0f; BYTE $0x04               // setg    byte [rsp + 4]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd59f0f41                           // setg    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x24549f0f; BYTE $0x09               // setg    byte [rsp + 9]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x24549f0f; BYTE $0x05               // setg    byte [rsp + 5]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x24549f0f; BYTE $0x06               // setg    byte [rsp + 6]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x24549f0f; BYTE $0x07               // setg    byte [rsp + 7]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x888e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x24549f0f; BYTE $0x0a               // setg    byte [rsp + 10]
	LONG $0x888a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 136]
	LONG $0x988e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 152]
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x988a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 152]
	LONG $0xa88e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 168]
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0xa88a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x24549f0f; BYTE $0x0b               // setg    byte [rsp + 11]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x24549f0f; BYTE $0x0c               // setg    byte [rsp + 12]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x24549f0f; BYTE $0x13               // setg    byte [rsp + 19]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x24549f0f; BYTE $0x0d               // setg    byte [rsp + 13]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x24549f0f; BYTE $0x0e               // setg    byte [rsp + 14]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x24549f0f; BYTE $0x0f               // setg    byte [rsp + 15]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x24549f0f; BYTE $0x12               // setg    byte [rsp + 18]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x24549f0f; BYTE $0x11               // setg    byte [rsp + 17]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB6_107
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB6_109:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_111:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_111
	JMP  LBB6_123

LBB6_112:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_116
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_114:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	LONG $0xd2970f41             // seta    r10b
	LONG $0x04c28348             // add    rdx, 4
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_114
	LONG $0x01c68349             // add    r14, 1

LBB6_116:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_120
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB6_118:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	LONG $0x06100ff3                           // movss    xmm0, dword [rsi]
	WORD $0x2e0f; BYTE $0x02                   // ucomiss    xmm0, dword [rdx]
	LONG $0x2454970f; BYTE $0x04               // seta    byte [rsp + 4]
	LONG $0x46100ff3; BYTE $0x04               // movss    xmm0, dword [rsi + 4]
	LONG $0x04422e0f                           // ucomiss    xmm0, dword [rdx + 4]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x46100ff3; BYTE $0x08               // movss    xmm0, dword [rsi + 8]
	LONG $0x08422e0f                           // ucomiss    xmm0, dword [rdx + 8]
	LONG $0x2454970f; BYTE $0x06               // seta    byte [rsp + 6]
	LONG $0x46100ff3; BYTE $0x0c               // movss    xmm0, dword [rsi + 12]
	LONG $0x0c422e0f                           // ucomiss    xmm0, dword [rdx + 12]
	LONG $0x2454970f; BYTE $0x15               // seta    byte [rsp + 21]
	LONG $0x46100ff3; BYTE $0x10               // movss    xmm0, dword [rsi + 16]
	LONG $0x10422e0f                           // ucomiss    xmm0, dword [rdx + 16]
	LONG $0x2454970f; BYTE $0x16               // seta    byte [rsp + 22]
	LONG $0x46100ff3; BYTE $0x14               // movss    xmm0, dword [rsi + 20]
	LONG $0x14422e0f                           // ucomiss    xmm0, dword [rdx + 20]
	LONG $0x2454970f; BYTE $0x17               // seta    byte [rsp + 23]
	LONG $0x46100ff3; BYTE $0x18               // movss    xmm0, dword [rsi + 24]
	LONG $0x18422e0f                           // ucomiss    xmm0, dword [rdx + 24]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x46100ff3; BYTE $0x1c               // movss    xmm0, dword [rsi + 28]
	LONG $0x1c422e0f                           // ucomiss    xmm0, dword [rdx + 28]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x46100ff3; BYTE $0x20               // movss    xmm0, dword [rsi + 32]
	LONG $0x20422e0f                           // ucomiss    xmm0, dword [rdx + 32]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x46100ff3; BYTE $0x24               // movss    xmm0, dword [rsi + 36]
	LONG $0x24422e0f                           // ucomiss    xmm0, dword [rdx + 36]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x46100ff3; BYTE $0x28               // movss    xmm0, dword [rsi + 40]
	LONG $0x28422e0f                           // ucomiss    xmm0, dword [rdx + 40]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x46100ff3; BYTE $0x2c               // movss    xmm0, dword [rsi + 44]
	LONG $0x2c422e0f                           // ucomiss    xmm0, dword [rdx + 44]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x46100ff3; BYTE $0x30               // movss    xmm0, dword [rsi + 48]
	LONG $0x30422e0f                           // ucomiss    xmm0, dword [rdx + 48]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x46100ff3; BYTE $0x34               // movss    xmm0, dword [rsi + 52]
	LONG $0x34422e0f                           // ucomiss    xmm0, dword [rdx + 52]
	LONG $0x2454970f; BYTE $0x05               // seta    byte [rsp + 5]
	LONG $0x46100ff3; BYTE $0x38               // movss    xmm0, dword [rsi + 56]
	LONG $0x38422e0f                           // ucomiss    xmm0, dword [rdx + 56]
	LONG $0x2454970f; BYTE $0x07               // seta    byte [rsp + 7]
	LONG $0x46100ff3; BYTE $0x3c               // movss    xmm0, dword [rsi + 60]
	LONG $0x3c422e0f                           // ucomiss    xmm0, dword [rdx + 60]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x46100ff3; BYTE $0x40               // movss    xmm0, dword [rsi + 64]
	LONG $0x40422e0f                           // ucomiss    xmm0, dword [rdx + 64]
	LONG $0x2454970f; BYTE $0x0e               // seta    byte [rsp + 14]
	LONG $0x46100ff3; BYTE $0x44               // movss    xmm0, dword [rsi + 68]
	LONG $0x44422e0f                           // ucomiss    xmm0, dword [rdx + 68]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x46100ff3; BYTE $0x48               // movss    xmm0, dword [rsi + 72]
	LONG $0x48422e0f                           // ucomiss    xmm0, dword [rdx + 72]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0x46100ff3; BYTE $0x4c               // movss    xmm0, dword [rsi + 76]
	LONG $0x4c422e0f                           // ucomiss    xmm0, dword [rdx + 76]
	LONG $0x2454970f; BYTE $0x09               // seta    byte [rsp + 9]
	LONG $0x46100ff3; BYTE $0x50               // movss    xmm0, dword [rsi + 80]
	LONG $0x50422e0f                           // ucomiss    xmm0, dword [rdx + 80]
	LONG $0x2454970f; BYTE $0x0a               // seta    byte [rsp + 10]
	LONG $0x46100ff3; BYTE $0x54               // movss    xmm0, dword [rsi + 84]
	LONG $0x54422e0f                           // ucomiss    xmm0, dword [rdx + 84]
	LONG $0x2454970f; BYTE $0x0b               // seta    byte [rsp + 11]
	LONG $0x46100ff3; BYTE $0x58               // movss    xmm0, dword [rsi + 88]
	LONG $0x58422e0f                           // ucomiss    xmm0, dword [rdx + 88]
	LONG $0x2454970f; BYTE $0x0c               // seta    byte [rsp + 12]
	LONG $0x46100ff3; BYTE $0x5c               // movss    xmm0, dword [rsi + 92]
	LONG $0x5c422e0f                           // ucomiss    xmm0, dword [rdx + 92]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x46100ff3; BYTE $0x60               // movss    xmm0, dword [rsi + 96]
	LONG $0x60422e0f                           // ucomiss    xmm0, dword [rdx + 96]
	LONG $0x2454970f; BYTE $0x14               // seta    byte [rsp + 20]
	LONG $0x46100ff3; BYTE $0x64               // movss    xmm0, dword [rsi + 100]
	LONG $0x64422e0f                           // ucomiss    xmm0, dword [rdx + 100]
	LONG $0x2454970f; BYTE $0x0d               // seta    byte [rsp + 13]
	LONG $0x46100ff3; BYTE $0x68               // movss    xmm0, dword [rsi + 104]
	LONG $0x68422e0f                           // ucomiss    xmm0, dword [rdx + 104]
	LONG $0x2454970f; BYTE $0x0f               // seta    byte [rsp + 15]
	LONG $0x46100ff3; BYTE $0x6c               // movss    xmm0, dword [rsi + 108]
	LONG $0x6c422e0f                           // ucomiss    xmm0, dword [rdx + 108]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x46100ff3; BYTE $0x70               // movss    xmm0, dword [rsi + 112]
	LONG $0x70422e0f                           // ucomiss    xmm0, dword [rdx + 112]
	LONG $0x2454970f; BYTE $0x12               // seta    byte [rsp + 18]
	LONG $0x46100ff3; BYTE $0x74               // movss    xmm0, dword [rsi + 116]
	LONG $0x74422e0f                           // ucomiss    xmm0, dword [rdx + 116]
	LONG $0x2454970f; BYTE $0x13               // seta    byte [rsp + 19]
	LONG $0x46100ff3; BYTE $0x78               // movss    xmm0, dword [rsi + 120]
	LONG $0x78422e0f                           // ucomiss    xmm0, dword [rdx + 120]
	LONG $0x46100ff3; BYTE $0x7c               // movss    xmm0, dword [rsi + 124]
	LONG $0x2454970f; BYTE $0x11               // seta    byte [rsp + 17]
	LONG $0x80ee8348                           // sub    rsi, -128
	LONG $0x7c422e0f                           // ucomiss    xmm0, dword [rdx + 124]
	LONG $0xd0970f41                           // seta    r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0x04244c02                           // add    cl, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	LONG $0x247c0240; BYTE $0x08               // add    dil, byte [rsp + 8]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e2c041                           // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0xcf89                               // mov    edi, ecx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	LONG $0x247cb60f; BYTE $0x07               // movzx    edi, byte [rsp + 7]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xe4                   // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0e               // add    r12b, byte [rsp + 14]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a               // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x13               // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x03468845                           // mov    byte [r14 + 3], r8b
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff28             // add    qword [rsp + 40], -1
	JNE  LBB6_118
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]

LBB6_120:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_122:
	LONG $0x04100ff3; BYTE $0x8e // movss    xmm0, dword [rsi + 4*rcx]
	LONG $0x8a042e0f             // ucomiss    xmm0, dword [rdx + 4*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x970f; BYTE $0xd3     // seta    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_122
	JMP  LBB6_123

LBB6_57:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_61
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_59:
	WORD $0xb60f; BYTE $0x0a     // movzx    ecx, byte [rdx]
	LONG $0x01c28348             // add    rdx, 1
	WORD $0x0e3a                 // cmp    cl, byte [rsi]
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x1945; BYTE $0xd2     // sbb    r10d, r10d
	LONG $0x07588d48             // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xd8490f48             // cmovns    rbx, rax
	LONG $0x03fbc148             // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44     // lea    r9d, [8*rbx]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2044; BYTE $0xd7     // and    dil, r10b
	WORD $0x3044; BYTE $0xc7     // xor    dil, r8b
	LONG $0x1e3c8841             // mov    byte [r14 + rbx], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_59
	LONG $0x01c68349             // add    r14, 1

LBB6_61:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_65
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB6_63:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454970f; BYTE $0x04   // seta    byte [rsp + 4]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	LONG $0xd5970f41               // seta    r13b
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	LONG $0x2454970f; BYTE $0x14   // seta    byte [rsp + 20]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454970f; BYTE $0x16   // seta    byte [rsp + 22]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	LONG $0x2454970f; BYTE $0x15   // seta    byte [rsp + 21]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454970f; BYTE $0x17   // seta    byte [rsp + 23]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	LONG $0x2454970f; BYTE $0x28   // seta    byte [rsp + 40]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7970f41               // seta    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	LONG $0x2454970f; BYTE $0x07   // seta    byte [rsp + 7]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	WORD $0x970f; BYTE $0xd1       // seta    cl
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	LONG $0xd1970f41               // seta    r9b
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3970f41               // seta    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	LONG $0xd2970f41               // seta    r10b
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454970f; BYTE $0x06   // seta    byte [rsp + 6]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	LONG $0x2454970f; BYTE $0x05   // seta    byte [rsp + 5]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	WORD $0x970f; BYTE $0xd3       // seta    bl
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	LONG $0x2454970f; BYTE $0x0c   // seta    byte [rsp + 12]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4970f41               // seta    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	LONG $0xd6970f41               // seta    r14b
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454970f; BYTE $0x09   // seta    byte [rsp + 9]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	LONG $0x2454970f; BYTE $0x08   // seta    byte [rsp + 8]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454970f; BYTE $0x0b   // seta    byte [rsp + 11]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	LONG $0x2454970f; BYTE $0x0a   // seta    byte [rsp + 10]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd0970f41               // seta    r8b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	LONG $0x2454970f; BYTE $0x12   // seta    byte [rsp + 18]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454970f; BYTE $0x0e   // seta    byte [rsp + 14]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	LONG $0x2454970f; BYTE $0x0d   // seta    byte [rsp + 13]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454970f; BYTE $0x10   // seta    byte [rsp + 16]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	LONG $0x2454970f; BYTE $0x0f   // seta    byte [rsp + 15]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454970f; BYTE $0x11   // seta    byte [rsp + 17]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454970f; BYTE $0x13   // seta    byte [rsp + 19]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	LONG $0xd7970f40               // seta    dil
	WORD $0x0045; BYTE $0xed       // add    r13b, r13b
	LONG $0x246c0244; BYTE $0x04   // add    r13b, byte [rsp + 4]
	WORD $0x8944; BYTE $0xe8       // mov    eax, r13d
	LONG $0x6cb60f44; WORD $0x2824 // movzx    r13d, byte [rsp + 40]
	LONG $0x06e5c041               // shl    r13b, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0845; BYTE $0xef       // or    r15b, r13b
	LONG $0x6cb60f44; WORD $0x1424 // movzx    r13d, byte [rsp + 20]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	WORD $0x8944; BYTE $0xe8       // mov    eax, r13d
	WORD $0xc900                   // add    cl, cl
	LONG $0x07244c02               // add    cl, byte [rsp + 7]
	LONG $0x6cb60f44; WORD $0x1624 // movzx    r13d, byte [rsp + 22]
	LONG $0x03e5c041               // shl    r13b, 3
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x02e1c041               // shl    r9b, 2
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0x0844; BYTE $0xe9       // or    cl, r13b
	WORD $0x8941; BYTE $0xcd       // mov    r13d, ecx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb       // or    r11b, r9b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0844; BYTE $0xe9       // or    cl, r13b
	LONG $0x04e2c041               // shl    r10b, 4
	WORD $0x0845; BYTE $0xda       // or    r10b, r11b
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xd0       // or    al, r10b
	LONG $0x4cb60f44; WORD $0x0524 // movzx    r9d, byte [rsp + 5]
	LONG $0x06e1c041               // shl    r9b, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0844; BYTE $0xcb       // or    bl, r9b
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0c   // add    r12b, byte [rsp + 12]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xe6       // or    r14b, r12b
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x244cb60f; BYTE $0x08   // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x3e       // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0a   // movzx    ecx, byte [rsp + 10]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8       // or    r8b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xc000                   // add    al, al
	LONG $0x12244402               // add    al, byte [rsp + 18]
	LONG $0x244cb60f; BYTE $0x0d   // movzx    ecx, byte [rsp + 13]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0xc108                   // or    cl, al
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x0f   // movzx    ecx, byte [rsp + 15]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x244cb60f; BYTE $0x11   // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0xc108                   // or    cl, al
	LONG $0x2444b60f; BYTE $0x13   // movzx    eax, byte [rsp + 19]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	WORD $0x0840; BYTE $0xcf       // or    dil, cl
	LONG $0x02468845               // mov    byte [r14 + 2], r8b
	LONG $0x037e8841               // mov    byte [r14 + 3], dil
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB6_63
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB6_65:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_67:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0a1cb60f             // movzx    ebx, byte [rdx + rcx]
	WORD $0x1c3a; BYTE $0x0e     // cmp    bl, byte [rsi + rcx]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_67
	JMP  LBB6_123

LBB6_90:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB6_94
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB6_92:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd29f0f41             // setg    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB6_92
	LONG $0x01c68349             // add    r14, 1

LBB6_94:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB6_98
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB6_96:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x24549f0f; BYTE $0x14               // setg    byte [rsp + 20]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x24549f0f; BYTE $0x15               // setg    byte [rsp + 21]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x24549f0f; BYTE $0x16               // setg    byte [rsp + 22]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x24549f0f; BYTE $0x17               // setg    byte [rsp + 23]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x24549f0f; BYTE $0x04               // setg    byte [rsp + 4]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd59f0f41                           // setg    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x24549f0f; BYTE $0x09               // setg    byte [rsp + 9]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd09f0f41                           // setg    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd39f0f41                           // setg    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd79f0f41                           // setg    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x24549f0f; BYTE $0x05               // setg    byte [rsp + 5]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x24549f0f; BYTE $0x06               // setg    byte [rsp + 6]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x24549f0f; BYTE $0x07               // setg    byte [rsp + 7]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x4e8b; BYTE $0x44                   // mov    ecx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x24549f0f; BYTE $0x0a               // setg    byte [rsp + 10]
	WORD $0x4a3b; BYTE $0x44                   // cmp    ecx, dword [rdx + 68]
	WORD $0x4e8b; BYTE $0x4c                   // mov    ecx, dword [rsi + 76]
	LONG $0xd29f0f41                           // setg    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd69f0f41                           // setg    r14b
	WORD $0x4a3b; BYTE $0x4c                   // cmp    ecx, dword [rdx + 76]
	WORD $0x4e8b; BYTE $0x54                   // mov    ecx, dword [rsi + 84]
	LONG $0xd49f0f41                           // setg    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	WORD $0x4a3b; BYTE $0x54                   // cmp    ecx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x24549f0f; BYTE $0x0b               // setg    byte [rsp + 11]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x24549f0f; BYTE $0x0c               // setg    byte [rsp + 12]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd19f0f41                           // setg    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x24549f0f; BYTE $0x13               // setg    byte [rsp + 19]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x24549f0f; BYTE $0x0d               // setg    byte [rsp + 13]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x24549f0f; BYTE $0x0e               // setg    byte [rsp + 14]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x24549f0f; BYTE $0x0f               // setg    byte [rsp + 15]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x24549f0f; BYTE $0x12               // setg    byte [rsp + 18]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x24549f0f; BYTE $0x11               // setg    byte [rsp + 17]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB6_96
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB6_98:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB6_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB6_100:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB6_100

LBB6_123:
	SUBQ $8, SP
	RET

DATA LCDATA5<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA5<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA5<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA5<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA5<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA5<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA5<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA5<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA5<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA5<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA5<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA5<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA5<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA5<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA5<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA5<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA5<>+0x080(SB)/8, $0x0101010101010101
DATA LCDATA5<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA5<>+0x090(SB)/8, $0x0f070e060d050c04
DATA LCDATA5<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA5<>+0x0a0(SB)/8, $0x0101010101010101
DATA LCDATA5<>+0x0a8(SB)/8, $0x0101010101010101
DATA LCDATA5<>+0x0b0(SB)/8, $0x0404040404040404
DATA LCDATA5<>+0x0b8(SB)/8, $0x0404040404040404
DATA LCDATA5<>+0x0c0(SB)/8, $0x0808080808080808
DATA LCDATA5<>+0x0c8(SB)/8, $0x0808080808080808
DATA LCDATA5<>+0x0d0(SB)/8, $0x1010101010101010
DATA LCDATA5<>+0x0d8(SB)/8, $0x1010101010101010
DATA LCDATA5<>+0x0e0(SB)/8, $0x2020202020202020
DATA LCDATA5<>+0x0e8(SB)/8, $0x2020202020202020
DATA LCDATA5<>+0x0f0(SB)/8, $0x4040404040404040
DATA LCDATA5<>+0x0f8(SB)/8, $0x4040404040404040
DATA LCDATA5<>+0x100(SB)/8, $0xffffffffffffffff
DATA LCDATA5<>+0x108(SB)/8, $0xffffffffffffffff
GLOBL LCDATA5<>(SB), 8, $272

TEXT ·_comparison_greater_arr_scalar_sse4(SB), $360-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 336(SP)
	LEAQ LCDATA5<>(SB), BP

	WORD $0x894d; BYTE $0xc3 // mov    r11, r8
	LONG $0x240c8948         // mov    qword [rsp], rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB7_26
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB7_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB7_98
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB7_114
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB7_202
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_17
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB7_15:
	WORD $0x3b44; BYTE $0x2e                   // cmp    r13d, dword [rsi]
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0xd219                               // sbb    edx, edx
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x19               // movzx    r8d, byte [r9 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x193c8841                           // mov    byte [r9 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB7_15
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB7_17:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_21
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB7_19:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000d02494970f                   // seta    byte [rsp + 208]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd7970f40                           // seta    dil
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	WORD $0x970f; BYTE $0xd2                   // seta    dl
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	LONG $0xd0970f41                           // seta    r8b
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	WORD $0xd200                               // add    dl, dl
	LONG $0x80249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x24148b4c                           // mov    r10, qword [rsp]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xc208                               // or    dl, al
	WORD $0xd789                               // mov    edi, edx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xd200                               // add    dl, dl
	LONG $0x48245402                           // add    dl, byte [rsp + 72]
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0x8845; BYTE $0x32                   // mov    byte [r10], r14b
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014a8841                           // mov    byte [r10 + 1], cl
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x20244c02                           // add    cl, byte [rsp + 32]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	LONG $0x2454b60f; BYTE $0x08               // movzx    edx, byte [rsp + 8]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x027a8845                           // mov    byte [r10 + 2], r15b
	LONG $0x03428845                           // mov    byte [r10 + 3], r8b
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c28349                           // add    r10, 4
	LONG $0x2414894c                           // mov    qword [rsp], r10
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB7_19
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]

LBB7_21:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_137
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_24

LBB7_26:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB7_27
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB7_157
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB7_172
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB7_202
	LONG $0x1f738d4d         // lea    r14, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xf3490f4d         // cmovns    r14, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff2         // movsd    xmm0, qword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_49
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x24148b4c         // mov    r10, qword [rsp]

LBB7_47:
	LONG $0x0e100ff2             // movsd    xmm1, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd2     // seta    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3a // movzx    r9d, byte [r10 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3a1c8841             // mov    byte [r10 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB7_47
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB7_49:
	LONG $0x05fec149         // sar    r14, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_53
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c024b4894c // mov    qword [rsp + 192], r14
	QUAD $0x000000d024b4894c // mov    qword [rsp + 208], r14

LBB7_51:
	LONG $0x0e100ff2                           // movsd    xmm1, qword [rsi]
	LONG $0x56100ff2; BYTE $0x08               // movsd    xmm2, qword [rsi + 8]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x4e100ff2; BYTE $0x10               // movsd    xmm1, qword [rsi + 16]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x4e100ff2; BYTE $0x18               // movsd    xmm1, qword [rsi + 24]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x4e100ff2; BYTE $0x20               // movsd    xmm1, qword [rsi + 32]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x4e100ff2; BYTE $0x28               // movsd    xmm1, qword [rsi + 40]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x4e100ff2; BYTE $0x30               // movsd    xmm1, qword [rsi + 48]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x4e100ff2; BYTE $0x38               // movsd    xmm1, qword [rsi + 56]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x4e100ff2; BYTE $0x40               // movsd    xmm1, qword [rsi + 64]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x4e100ff2; BYTE $0x48               // movsd    xmm1, qword [rsi + 72]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x4e100ff2; BYTE $0x50               // movsd    xmm1, qword [rsi + 80]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x4e100ff2; BYTE $0x58               // movsd    xmm1, qword [rsi + 88]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x4e100ff2; BYTE $0x60               // movsd    xmm1, qword [rsi + 96]
	LONG $0x5e100ff2; BYTE $0x68               // movsd    xmm3, qword [rsi + 104]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x6e100ff2; BYTE $0x70               // movsd    xmm5, qword [rsi + 112]
	LONG $0x76100ff2; BYTE $0x78               // movsd    xmm6, qword [rsi + 120]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	QUAD $0x00008086100f44f2; BYTE $0x00       // movsd    xmm8, qword [rsi + 128]
	QUAD $0x0000888e100f44f2; BYTE $0x00       // movsd    xmm9, qword [rsi + 136]
	LONG $0xd82e0f66                           // ucomisd    xmm3, xmm0
	QUAD $0x00009096100f44f2; BYTE $0x00       // movsd    xmm10, qword [rsi + 144]
	QUAD $0x0000989e100f44f2; BYTE $0x00       // movsd    xmm11, qword [rsi + 152]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	QUAD $0x0000a0a6100f44f2; BYTE $0x00       // movsd    xmm12, qword [rsi + 160]
	QUAD $0x0000a8ae100f44f2; BYTE $0x00       // movsd    xmm13, qword [rsi + 168]
	LONG $0xe82e0f66                           // ucomisd    xmm5, xmm0
	QUAD $0x0000b0b6100f44f2; BYTE $0x00       // movsd    xmm14, qword [rsi + 176]
	QUAD $0x000000b896100ff2                   // movsd    xmm2, qword [rsi + 184]
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	QUAD $0x000000c09e100ff2                   // movsd    xmm3, qword [rsi + 192]
	QUAD $0x000000c8a6100ff2                   // movsd    xmm4, qword [rsi + 200]
	LONG $0xf02e0f66                           // ucomisd    xmm6, xmm0
	QUAD $0x000000d0b6100ff2                   // movsd    xmm6, qword [rsi + 208]
	QUAD $0x000000d8be100ff2                   // movsd    xmm7, qword [rsi + 216]
	LONG $0xd3970f41                           // seta    r11b
	QUAD $0x000000e08e100ff2                   // movsd    xmm1, qword [rsi + 224]
	QUAD $0x000000e8ae100ff2                   // movsd    xmm5, qword [rsi + 232]
	LONG $0x2e0f4466; BYTE $0xc0               // ucomisd    xmm8, xmm0
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x2e0f4466; BYTE $0xc8               // ucomisd    xmm9, xmm0
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x2e0f4466; BYTE $0xd0               // ucomisd    xmm10, xmm0
	LONG $0xd7970f40                           // seta    dil
	LONG $0x2e0f4466; BYTE $0xd8               // ucomisd    xmm11, xmm0
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x2e0f4466; BYTE $0xe0               // ucomisd    xmm12, xmm0
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x2e0f4466; BYTE $0xe8               // ucomisd    xmm13, xmm0
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x2e0f4466; BYTE $0xf0               // ucomisd    xmm14, xmm0
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	LONG $0xd1970f41                           // seta    r9b
	LONG $0xd82e0f66                           // ucomisd    xmm3, xmm0
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0xe02e0f66                           // ucomisd    xmm4, xmm0
	LONG $0xd7970f41                           // seta    r15b
	LONG $0xf02e0f66                           // ucomisd    xmm6, xmm0
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0xf82e0f66                           // ucomisd    xmm7, xmm0
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0xe82e0f66                           // ucomisd    xmm5, xmm0
	QUAD $0x000000f08e100ff2                   // movsd    xmm1, qword [rsi + 240]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	QUAD $0x000000f88e100ff2                   // movsd    xmm1, qword [rsi + 248]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd2                   // seta    dl
	WORD $0xdb00                               // add    bl, bl
	LONG $0x18245c02                           // add    bl, byte [rsp + 24]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xec                   // or    r12b, r13b
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	WORD $0x8941; BYTE $0xdc                   // mov    r12d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	LONG $0x64b60f44; WORD $0x5824             // movzx    r12d, byte [rsp + 88]
	LONG $0x06e4c041                           // shl    r12b, 6
	LONG $0x6cb60f44; WORD $0x4024             // movzx    r13d, byte [rsp + 64]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	LONG $0x64b60f44; WORD $0x3824             // movzx    r12d, byte [rsp + 56]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	WORD $0x8944; BYTE $0xe0                   // mov    eax, r12d
	LONG $0x64b60f44; WORD $0x2024             // movzx    r12d, byte [rsp + 32]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	QUAD $0x00000090249cb60f                   // movzx    ebx, byte [rsp + 144]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0xc308                               // or    bl, al
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0xc900                               // add    cl, cl
	LONG $0xb0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 176]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x03e0c041                           // shl    r8b, 3
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xc2                   // or    r10b, r8b
	LONG $0x05e6c041                           // shl    r14b, 5
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0841; BYTE $0xdb                   // or    r11b, bl
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	WORD $0x8844; BYTE $0x28                   // mov    byte [rax], r13b
	WORD $0x0845; BYTE $0xf1                   // or    r9b, r14b
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	LONG $0x247c0244; BYTE $0x68               // add    r15b, byte [rsp + 104]
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	LONG $0x01588844                           // mov    byte [rax + 1], r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	LONG $0x02488844                           // mov    byte [rax + 2], r9b
	WORD $0xca08                               // or    dl, cl
	WORD $0x5088; BYTE $0x03                   // mov    byte [rax + 3], dl
	LONG $0x04c08348                           // add    rax, 4
	LONG $0x24048948                           // mov    qword [rsp], rax
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB7_51
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024b48b4c                   // mov    r14, qword [rsp + 192]

LBB7_53:
	LONG $0x05e6c149         // shl    r14, 5
	WORD $0x394d; BYTE $0xde // cmp    r14, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xf0 // sub    r8, r14
	WORD $0xf749; BYTE $0xd6 // not    r14
	WORD $0x014d; BYTE $0xde // add    r14, r11
	JNE  LBB7_196
	WORD $0x3145; BYTE $0xd2 // xor    r10d, r10d
	JMP  LBB7_198

LBB7_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB7_56
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB7_202
	WORD $0x8a44; BYTE $0x22 // mov    r12b, byte [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_6:
	WORD $0x3844; BYTE $0x26     // cmp    byte [rsi], r12b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB7_6
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB7_8:
	LONG $0x05fac149             // sar    r10, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB7_9
	LONG $0x10fa8349             // cmp    r10, 16
	LONG $0x24648844; BYTE $0x08 // mov    byte [rsp + 8], r12b
	QUAD $0x00000088249c894c     // mov    qword [rsp + 136], r11
	QUAD $0x000001202494894c     // mov    qword [rsp + 288], r10
	JB   LBB7_81
	WORD $0x894c; BYTE $0xd0     // mov    rax, r10
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB7_84
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x90048d4a             // lea    rax, [rax + 4*r10]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB7_84

LBB7_81:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x60 // mov    qword [rsp + 96], rax

LBB7_87:
	QUAD $0x000000e824942b4c // sub    r10, qword [rsp + 232]
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10

LBB7_88:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x26                   // cmp    byte [rsi], r12b
	QUAD $0x000000c024949f0f                   // setg    byte [rsp + 192]
	LONG $0x01663844                           // cmp    byte [rsi + 1], r12b
	LONG $0xd69f0f40                           // setg    sil
	LONG $0x02613844                           // cmp    byte [rcx + 2], r12b
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x03613844                           // cmp    byte [rcx + 3], r12b
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000d024949f0f                   // setg    byte [rsp + 208]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x0000008024949f0f                   // setg    byte [rsp + 128]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd59f0f41                           // setg    r13b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	LONG $0x24149f0f                           // setg    byte [rsp]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x000000c024b40240                   // add    sil, byte [rsp + 192]
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0x80249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 128]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x64b60f44; WORD $0x0824             // movzx    r12d, byte [rsp + 8]
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xd200                               // add    dl, dl
	LONG $0x90249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 144]
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	LONG $0x247cb60f; BYTE $0x50               // movzx    edi, byte [rsp + 80]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x38244402                           // add    al, byte [rsp + 56]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	LONG $0x2434b60f                           // movzx    esi, byte [rsp]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	LONG $0x24548948; BYTE $0x60               // mov    qword [rsp + 96], rdx
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB7_88
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x0000012024948b4c                   // mov    r10, qword [rsp + 288]
	JMP  LBB7_90

LBB7_27:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB7_139
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB7_202
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_33
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB7_31:
	WORD $0x3b4c; BYTE $0x2e                   // cmp    r13, qword [rsi]
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0xd219                               // sbb    edx, edx
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x19               // movzx    r8d, byte [r9 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x193c8841                           // mov    byte [r9 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB7_31
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB7_33:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_37
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB7_35:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000d02494970f                   // seta    byte [rsp + 208]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd7970f40                           // seta    dil
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	WORD $0x970f; BYTE $0xd2                   // seta    dl
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7970f41                           // seta    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	LONG $0xd0970f41                           // seta    r8b
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	WORD $0xd200                               // add    dl, dl
	LONG $0x80249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x24148b4c                           // mov    r10, qword [rsp]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xc208                               // or    dl, al
	WORD $0xd789                               // mov    edi, edx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xd200                               // add    dl, dl
	LONG $0x48245402                           // add    dl, byte [rsp + 72]
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0x8845; BYTE $0x32                   // mov    byte [r10], r14b
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014a8841                           // mov    byte [r10 + 1], cl
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x20244c02                           // add    cl, byte [rsp + 32]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	LONG $0x2454b60f; BYTE $0x08               // movzx    edx, byte [rsp + 8]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x027a8845                           // mov    byte [r10 + 2], r15b
	LONG $0x03428845                           // mov    byte [r10 + 3], r8b
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c28349                           // add    r10, 4
	LONG $0x2414894c                           // mov    qword [rsp], r10
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB7_35
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]

LBB7_37:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_155
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_40

LBB7_56:
	WORD $0x8a44; BYTE $0x12 // mov    r10b, byte [rdx]
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_60
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_58:
	WORD $0x3a44; BYTE $0x16     // cmp    r10b, byte [rsi]
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0xd219                 // sbb    edx, edx
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB7_58
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB7_60:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB7_61
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x24548844; BYTE $0x08 // mov    byte [rsp + 8], r10b
	QUAD $0x00000088249c894c     // mov    qword [rsp + 136], r11
	QUAD $0x0000010824bc894c     // mov    qword [rsp + 264], r15
	JB   LBB7_63
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	LONG $0x24043948             // cmp    qword [rsp], rax
	JAE  LBB7_66
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0xb8048d4a             // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB7_66

LBB7_63:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	WORD $0x8949; BYTE $0xf4     // mov    r12, rsi
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x78 // mov    qword [rsp + 120], rax

LBB7_69:
	QUAD $0x000000e824bc2b4c // sub    r15, qword [rsp + 232]
	QUAD $0x000000c024bc894c // mov    qword [rsp + 192], r15

LBB7_70:
	WORD $0x894c; BYTE $0xe1             // mov    rcx, r12
	LONG $0x24143845                     // cmp    byte [r12], r10b
	QUAD $0x000000d02494970f             // seta    byte [rsp + 208]
	LONG $0x24543845; BYTE $0x01         // cmp    byte [r12 + 1], r10b
	LONG $0xd6970f41                     // seta    r14b
	LONG $0x24543845; BYTE $0x02         // cmp    byte [r12 + 2], r10b
	LONG $0xd3970f41                     // seta    r11b
	LONG $0x24543845; BYTE $0x03         // cmp    byte [r12 + 3], r10b
	LONG $0xd7970f41                     // seta    r15b
	LONG $0x24543845; BYTE $0x04         // cmp    byte [r12 + 4], r10b
	QUAD $0x000000b02494970f             // seta    byte [rsp + 176]
	LONG $0x24543845; BYTE $0x05         // cmp    byte [r12 + 5], r10b
	LONG $0x2454970f; BYTE $0x60         // seta    byte [rsp + 96]
	LONG $0x24543845; BYTE $0x06         // cmp    byte [r12 + 6], r10b
	WORD $0x970f; BYTE $0xd0             // seta    al
	LONG $0x24543845; BYTE $0x07         // cmp    byte [r12 + 7], r10b
	LONG $0xd0970f41                     // seta    r8b
	LONG $0x24543845; BYTE $0x08         // cmp    byte [r12 + 8], r10b
	QUAD $0x000000802494970f             // seta    byte [rsp + 128]
	LONG $0x24543845; BYTE $0x09         // cmp    byte [r12 + 9], r10b
	LONG $0xd6970f40                     // seta    sil
	LONG $0x24543845; BYTE $0x0a         // cmp    byte [r12 + 10], r10b
	LONG $0xd7970f40                     // seta    dil
	LONG $0x24543845; BYTE $0x0b         // cmp    byte [r12 + 11], r10b
	LONG $0xd1970f41                     // seta    r9b
	LONG $0x24543845; BYTE $0x0c         // cmp    byte [r12 + 12], r10b
	LONG $0xd2970f41                     // seta    r10b
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	LONG $0x24543841; BYTE $0x0d         // cmp    byte [r12 + 13], dl
	LONG $0xd4970f41                     // seta    r12b
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x0e             // cmp    byte [rcx + 14], dl
	QUAD $0x000000a02494970f             // seta    byte [rsp + 160]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x0f             // cmp    byte [rcx + 15], dl
	WORD $0x970f; BYTE $0xd3             // seta    bl
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x10             // cmp    byte [rcx + 16], dl
	QUAD $0x000000902494970f             // seta    byte [rsp + 144]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x11             // cmp    byte [rcx + 17], dl
	LONG $0xd5970f41                     // seta    r13b
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x12             // cmp    byte [rcx + 18], dl
	LONG $0x2454970f; BYTE $0x70         // seta    byte [rsp + 112]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x13             // cmp    byte [rcx + 19], dl
	LONG $0x2454970f; BYTE $0x68         // seta    byte [rsp + 104]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x14             // cmp    byte [rcx + 20], dl
	LONG $0x2454970f; BYTE $0x48         // seta    byte [rsp + 72]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x15             // cmp    byte [rcx + 21], dl
	LONG $0x2454970f; BYTE $0x58         // seta    byte [rsp + 88]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x16             // cmp    byte [rcx + 22], dl
	LONG $0x2454970f; BYTE $0x50         // seta    byte [rsp + 80]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x17             // cmp    byte [rcx + 23], dl
	LONG $0x2454970f; BYTE $0x38         // seta    byte [rsp + 56]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x18             // cmp    byte [rcx + 24], dl
	LONG $0x2454970f; BYTE $0x40         // seta    byte [rsp + 64]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x19             // cmp    byte [rcx + 25], dl
	LONG $0x2454970f; BYTE $0x28         // seta    byte [rsp + 40]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1a             // cmp    byte [rcx + 26], dl
	LONG $0x2454970f; BYTE $0x20         // seta    byte [rsp + 32]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1b             // cmp    byte [rcx + 27], dl
	LONG $0x2454970f; BYTE $0x30         // seta    byte [rsp + 48]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1c             // cmp    byte [rcx + 28], dl
	LONG $0x2454970f; BYTE $0x18         // seta    byte [rsp + 24]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1d             // cmp    byte [rcx + 29], dl
	LONG $0x2454970f; BYTE $0x10         // seta    byte [rsp + 16]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1e             // cmp    byte [rcx + 30], dl
	LONG $0x2414970f                     // seta    byte [rsp]
	LONG $0x2454b60f; BYTE $0x08         // movzx    edx, byte [rsp + 8]
	WORD $0x5138; BYTE $0x1f             // cmp    byte [rcx + 31], dl
	WORD $0x970f; BYTE $0xd2             // seta    dl
	WORD $0x0045; BYTE $0xf6             // add    r14b, r14b
	QUAD $0x000000d024b40244             // add    r14b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06             // shl    al, 6
	LONG $0x07e0c041                     // shl    r8b, 7
	WORD $0x0841; BYTE $0xc0             // or    r8b, al
	LONG $0x02e3c041                     // shl    r11b, 2
	WORD $0x0845; BYTE $0xf3             // or    r11b, r14b
	WORD $0x0040; BYTE $0xf6             // add    sil, sil
	QUAD $0x0000008024b40240             // add    sil, byte [rsp + 128]
	LONG $0x03e7c041                     // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf             // or    r15b, r11b
	LONG $0x02e7c040                     // shl    dil, 2
	WORD $0x0840; BYTE $0xf7             // or    dil, sil
	QUAD $0x000000b02484b60f             // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0x0844; BYTE $0xf8             // or    al, r15b
	WORD $0xc689                         // mov    esi, eax
	LONG $0x03e1c041                     // shl    r9b, 3
	WORD $0x0841; BYTE $0xf9             // or    r9b, dil
	LONG $0x2444b60f; BYTE $0x60         // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	LONG $0x04e2c041                     // shl    r10b, 4
	WORD $0x0845; BYTE $0xca             // or    r10b, r9b
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4             // or    r12b, r10b
	LONG $0x54b60f44; WORD $0x0824       // movzx    r10d, byte [rsp + 8]
	QUAD $0x000000a024b4b60f             // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                     // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07             // shl    bl, 7
	WORD $0x0840; BYTE $0xf3             // or    bl, sil
	WORD $0x0841; BYTE $0xc0             // or    r8b, al
	WORD $0x0844; BYTE $0xe3             // or    bl, r12b
	WORD $0x0045; BYTE $0xed             // add    r13b, r13b
	QUAD $0x0000009024ac0244             // add    r13b, byte [rsp + 144]
	LONG $0x2444b60f; BYTE $0x70         // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0x0844; BYTE $0xe8             // or    al, r13b
	WORD $0xc689                         // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x68         // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0xc689                         // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x48         // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0xc689                         // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x58         // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0x8941; BYTE $0xc1             // mov    r9d, eax
	LONG $0x24748b48; BYTE $0x78         // mov    rsi, qword [rsp + 120]
	WORD $0x8844; BYTE $0x06             // mov    byte [rsi], r8b
	LONG $0x247cb60f; BYTE $0x50         // movzx    edi, byte [rsp + 80]
	LONG $0x06e7c040                     // shl    dil, 6
	LONG $0x2444b60f; BYTE $0x38         // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0x0840; BYTE $0xf8             // or    al, dil
	WORD $0x5e88; BYTE $0x01             // mov    byte [rsi + 1], bl
	WORD $0x0844; BYTE $0xc8             // or    al, r9b
	LONG $0x245cb60f; BYTE $0x28         // movzx    ebx, byte [rsp + 40]
	WORD $0xdb00                         // add    bl, bl
	LONG $0x40245c02                     // add    bl, byte [rsp + 64]
	WORD $0xdf89                         // mov    edi, ebx
	LONG $0x245cb60f; BYTE $0x20         // movzx    ebx, byte [rsp + 32]
	WORD $0xe3c0; BYTE $0x02             // shl    bl, 2
	WORD $0x0840; BYTE $0xfb             // or    bl, dil
	WORD $0xdf89                         // mov    edi, ebx
	LONG $0x245cb60f; BYTE $0x30         // movzx    ebx, byte [rsp + 48]
	WORD $0xe3c0; BYTE $0x03             // shl    bl, 3
	WORD $0x0840; BYTE $0xfb             // or    bl, dil
	WORD $0xdf89                         // mov    edi, ebx
	LONG $0x245cb60f; BYTE $0x18         // movzx    ebx, byte [rsp + 24]
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0840; BYTE $0xfb             // or    bl, dil
	WORD $0xdf89                         // mov    edi, ebx
	LONG $0x245cb60f; BYTE $0x10         // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x05             // shl    bl, 5
	WORD $0x0840; BYTE $0xfb             // or    bl, dil
	LONG $0x243cb60f                     // movzx    edi, byte [rsp]
	LONG $0x06e7c040                     // shl    dil, 6
	WORD $0xe2c0; BYTE $0x07             // shl    dl, 7
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0xda08                         // or    dl, bl
	WORD $0x4688; BYTE $0x02             // mov    byte [rsi + 2], al
	WORD $0x5688; BYTE $0x03             // mov    byte [rsi + 3], dl
	LONG $0x20618d4c                     // lea    r12, [rcx + 32]
	LONG $0x04c68348                     // add    rsi, 4
	LONG $0x24748948; BYTE $0x78         // mov    qword [rsp + 120], rsi
	QUAD $0x000000c024848348; BYTE $0xff // add    qword [rsp + 192], -1
	JNE  LBB7_70
	QUAD $0x00000088249c8b4c             // mov    r11, qword [rsp + 136]
	QUAD $0x0000010824bc8b4c             // mov    r15, qword [rsp + 264]
	JMP  LBB7_72

LBB7_139:
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_143
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB7_141:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x19               // movzx    r8d, byte [r9 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x193c8841                           // mov    byte [r9 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB7_141
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB7_143:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_147
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB7_145:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000d024949f0f                   // setg    byte [rsp + 208]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x0000008024949f0f                   // setg    byte [rsp + 128]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x9f0f; BYTE $0xd1                   // setg    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	LONG $0xd09f0f41                           // setg    r8b
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	WORD $0xd200                               // add    dl, dl
	LONG $0x80249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x24148b4c                           // mov    r10, qword [rsp]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xc208                               // or    dl, al
	WORD $0xd789                               // mov    edi, edx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xd200                               // add    dl, dl
	LONG $0x48245402                           // add    dl, byte [rsp + 72]
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0x8845; BYTE $0x32                   // mov    byte [r10], r14b
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014a8841                           // mov    byte [r10 + 1], cl
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x20244c02                           // add    cl, byte [rsp + 32]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	LONG $0x2454b60f; BYTE $0x08               // movzx    edx, byte [rsp + 8]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x027a8845                           // mov    byte [r10 + 2], r15b
	LONG $0x03428845                           // mov    byte [r10 + 3], r8b
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c28349                           // add    r10, 4
	LONG $0x2414894c                           // mov    qword [rsp], r10
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB7_145
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]

LBB7_147:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_153
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_150

LBB7_98:
	LONG $0x2ab70f44         // movzx    r13d, word [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_102
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x24148b48         // mov    rdx, qword [rsp]

LBB7_100:
	LONG $0x2e3b4466                           // cmp    r13w, word [rsi]
	LONG $0x02768d48                           // lea    rsi, [rsi + 2]
	WORD $0x1945; BYTE $0xc9                   // sbb    r9d, r9d
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f44; BYTE $0x1a               // movzx    r8d, byte [rdx + rbx]
	WORD $0x3045; BYTE $0xc1                   // xor    r9b, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2044; BYTE $0xcf                   // and    dil, r9b
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1a3c8840                           // mov    byte [rdx + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB7_100
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB7_102:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_106
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB7_104:
	LONG $0x2e394466                     // cmp    word [rsi], r13w
	LONG $0x2454970f; BYTE $0x38         // seta    byte [rsp + 56]
	LONG $0x6e394466; BYTE $0x02         // cmp    word [rsi + 2], r13w
	LONG $0xd2970f41                     // seta    r10b
	LONG $0x6e394466; BYTE $0x04         // cmp    word [rsi + 4], r13w
	LONG $0xd7970f40                     // seta    dil
	LONG $0x6e394466; BYTE $0x06         // cmp    word [rsi + 6], r13w
	QUAD $0x000000d02494970f             // seta    byte [rsp + 208]
	LONG $0x6e394466; BYTE $0x08         // cmp    word [rsi + 8], r13w
	QUAD $0x000000802494970f             // seta    byte [rsp + 128]
	LONG $0x6e394466; BYTE $0x0a         // cmp    word [rsi + 10], r13w
	QUAD $0x000000902494970f             // seta    byte [rsp + 144]
	LONG $0x6e394466; BYTE $0x0c         // cmp    word [rsi + 12], r13w
	WORD $0x970f; BYTE $0xd0             // seta    al
	LONG $0x6e394466; BYTE $0x0e         // cmp    word [rsi + 14], r13w
	LONG $0xd6970f41                     // seta    r14b
	LONG $0x6e394466; BYTE $0x10         // cmp    word [rsi + 16], r13w
	LONG $0x2454970f; BYTE $0x18         // seta    byte [rsp + 24]
	LONG $0x6e394466; BYTE $0x12         // cmp    word [rsi + 18], r13w
	WORD $0x970f; BYTE $0xd2             // seta    dl
	LONG $0x6e394466; BYTE $0x14         // cmp    word [rsi + 20], r13w
	LONG $0xd1970f41                     // seta    r9b
	LONG $0x6e394466; BYTE $0x16         // cmp    word [rsi + 22], r13w
	LONG $0xd3970f41                     // seta    r11b
	LONG $0x6e394466; BYTE $0x18         // cmp    word [rsi + 24], r13w
	WORD $0x970f; BYTE $0xd3             // seta    bl
	LONG $0x6e394466; BYTE $0x1a         // cmp    word [rsi + 26], r13w
	LONG $0xd4970f41                     // seta    r12b
	LONG $0x6e394466; BYTE $0x1c         // cmp    word [rsi + 28], r13w
	QUAD $0x000000b02494970f             // seta    byte [rsp + 176]
	LONG $0x6e394466; BYTE $0x1e         // cmp    word [rsi + 30], r13w
	WORD $0x970f; BYTE $0xd1             // seta    cl
	LONG $0x6e394466; BYTE $0x20         // cmp    word [rsi + 32], r13w
	LONG $0x2454970f; BYTE $0x10         // seta    byte [rsp + 16]
	LONG $0x6e394466; BYTE $0x22         // cmp    word [rsi + 34], r13w
	QUAD $0x000000a02494970f             // seta    byte [rsp + 160]
	LONG $0x6e394466; BYTE $0x24         // cmp    word [rsi + 36], r13w
	LONG $0x2454970f; BYTE $0x70         // seta    byte [rsp + 112]
	LONG $0x6e394466; BYTE $0x26         // cmp    word [rsi + 38], r13w
	LONG $0x2454970f; BYTE $0x68         // seta    byte [rsp + 104]
	LONG $0x6e394466; BYTE $0x28         // cmp    word [rsi + 40], r13w
	LONG $0x2454970f; BYTE $0x78         // seta    byte [rsp + 120]
	LONG $0x6e394466; BYTE $0x2a         // cmp    word [rsi + 42], r13w
	LONG $0x2454970f; BYTE $0x48         // seta    byte [rsp + 72]
	LONG $0x6e394466; BYTE $0x2c         // cmp    word [rsi + 44], r13w
	LONG $0x2454970f; BYTE $0x50         // seta    byte [rsp + 80]
	LONG $0x6e394466; BYTE $0x2e         // cmp    word [rsi + 46], r13w
	LONG $0xd7970f41                     // seta    r15b
	LONG $0x6e394466; BYTE $0x30         // cmp    word [rsi + 48], r13w
	LONG $0x2454970f; BYTE $0x08         // seta    byte [rsp + 8]
	LONG $0x6e394466; BYTE $0x32         // cmp    word [rsi + 50], r13w
	LONG $0x2454970f; BYTE $0x58         // seta    byte [rsp + 88]
	LONG $0x6e394466; BYTE $0x34         // cmp    word [rsi + 52], r13w
	LONG $0x2454970f; BYTE $0x60         // seta    byte [rsp + 96]
	LONG $0x6e394466; BYTE $0x36         // cmp    word [rsi + 54], r13w
	LONG $0x2454970f; BYTE $0x40         // seta    byte [rsp + 64]
	LONG $0x6e394466; BYTE $0x38         // cmp    word [rsi + 56], r13w
	LONG $0x2454970f; BYTE $0x28         // seta    byte [rsp + 40]
	LONG $0x6e394466; BYTE $0x3a         // cmp    word [rsi + 58], r13w
	LONG $0x2454970f; BYTE $0x30         // seta    byte [rsp + 48]
	LONG $0x6e394466; BYTE $0x3c         // cmp    word [rsi + 60], r13w
	LONG $0x2454970f; BYTE $0x20         // seta    byte [rsp + 32]
	LONG $0x6e394466; BYTE $0x3e         // cmp    word [rsi + 62], r13w
	LONG $0xd0970f41                     // seta    r8b
	WORD $0x0045; BYTE $0xd2             // add    r10b, r10b
	LONG $0x24540244; BYTE $0x38         // add    r10b, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x06             // shl    al, 6
	LONG $0x07e6c041                     // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6             // or    r14b, al
	LONG $0x02e7c040                     // shl    dil, 2
	WORD $0x0844; BYTE $0xd7             // or    dil, r10b
	WORD $0xd200                         // add    dl, dl
	LONG $0x18245402                     // add    dl, byte [rsp + 24]
	QUAD $0x000000d02484b60f             // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0x0840; BYTE $0xf8             // or    al, dil
	LONG $0x24148b4c                     // mov    r10, qword [rsp]
	LONG $0x02e1c041                     // shl    r9b, 2
	WORD $0x0841; BYTE $0xd1             // or    r9b, dl
	QUAD $0x000000802494b60f             // movzx    edx, byte [rsp + 128]
	WORD $0xe2c0; BYTE $0x04             // shl    dl, 4
	WORD $0xc208                         // or    dl, al
	WORD $0xd789                         // mov    edi, edx
	LONG $0x03e3c041                     // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb             // or    r11b, r9b
	QUAD $0x000000902494b60f             // movzx    edx, byte [rsp + 144]
	WORD $0xe2c0; BYTE $0x05             // shl    dl, 5
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0xe3c0; BYTE $0x04             // shl    bl, 4
	WORD $0x0844; BYTE $0xdb             // or    bl, r11b
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0841; BYTE $0xdc             // or    r12b, bl
	QUAD $0x000000b024bcb60f             // movzx    edi, byte [rsp + 176]
	LONG $0x06e7c040                     // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07             // shl    cl, 7
	WORD $0x0840; BYTE $0xf9             // or    cl, dil
	WORD $0x0841; BYTE $0xd6             // or    r14b, dl
	WORD $0x0844; BYTE $0xe1             // or    cl, r12b
	QUAD $0x000000a02494b60f             // movzx    edx, byte [rsp + 160]
	WORD $0xd200                         // add    dl, dl
	LONG $0x10245402                     // add    dl, byte [rsp + 16]
	WORD $0xd789                         // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x70         // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02             // shl    dl, 2
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0xd789                         // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x68         // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x03             // shl    dl, 3
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0xd789                         // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x78         // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x04             // shl    dl, 4
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0xd789                         // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x48         // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05             // shl    dl, 5
	WORD $0x0840; BYTE $0xfa             // or    dl, dil
	WORD $0x8845; BYTE $0x32             // mov    byte [r10], r14b
	LONG $0x245cb60f; BYTE $0x50         // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	LONG $0x07e7c041                     // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf             // or    r15b, bl
	LONG $0x014a8841                     // mov    byte [r10 + 1], cl
	WORD $0x0841; BYTE $0xd7             // or    r15b, dl
	LONG $0x244cb60f; BYTE $0x58         // movzx    ecx, byte [rsp + 88]
	WORD $0xc900                         // add    cl, cl
	LONG $0x08244c02                     // add    cl, byte [rsp + 8]
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x60         // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x02             // shl    cl, 2
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x40         // movzx    ecx, byte [rsp + 64]
	WORD $0xe1c0; BYTE $0x03             // shl    cl, 3
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28         // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x04             // shl    cl, 4
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x30         // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x05             // shl    cl, 5
	WORD $0xd108                         // or    cl, dl
	LONG $0x2454b60f; BYTE $0x20         // movzx    edx, byte [rsp + 32]
	WORD $0xe2c0; BYTE $0x06             // shl    dl, 6
	LONG $0x07e0c041                     // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0             // or    r8b, dl
	WORD $0x0841; BYTE $0xc8             // or    r8b, cl
	LONG $0x027a8845                     // mov    byte [r10 + 2], r15b
	LONG $0x03428845                     // mov    byte [r10 + 3], r8b
	LONG $0x40c68348                     // add    rsi, 64
	LONG $0x04c28349                     // add    r10, 4
	LONG $0x2414894c                     // mov    qword [rsp], r10
	QUAD $0x000000c024848348; BYTE $0xff // add    qword [rsp + 192], -1
	JNE  LBB7_104
	QUAD $0x00000088249c8b4c             // mov    r11, qword [rsp + 136]
	QUAD $0x000000f024948b4c             // mov    r10, qword [rsp + 240]

LBB7_106:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_112
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_109

LBB7_114:
	WORD $0xb70f; BYTE $0x02                   // movzx    eax, word [rdx]
	LONG $0xf0248489; WORD $0x0000; BYTE $0x00 // mov    dword [rsp + 240], eax
	LONG $0x1f7b8d4d                           // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb                   // test    r11, r11
	LONG $0xfb490f4d                           // cmovns    r15, r11
	LONG $0x07418d41                           // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9                   // test    r9d, r9d
	LONG $0xc1490f41                           // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8                   // and    eax, -8
	WORD $0x2941; BYTE $0xc1                   // sub    r9d, eax
	JE   LBB7_118
	WORD $0x6349; BYTE $0xc1                   // movsxd    rax, r9d
	QUAD $0x000000f024948b44                   // mov    r10d, dword [rsp + 240]
	LONG $0x24348b4c                           // mov    r14, qword [rsp]

LBB7_116:
	LONG $0x16394466             // cmp    word [rsi], r10w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB7_116
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB7_118:
	LONG $0x05ffc149         // sar    r15, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_119
	LONG $0x08ff8349         // cmp    r15, 8
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x0000011024bc894c // mov    qword [rsp + 272], r15
	JB   LBB7_121
	WORD $0x894c; BYTE $0xf8 // mov    rax, r15
	LONG $0x06e0c148         // shl    rax, 6
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	LONG $0x24043948         // cmp    qword [rsp], rax
	JAE  LBB7_124
	LONG $0x24048b48         // mov    rax, qword [rsp]
	LONG $0xb8048d4a         // lea    rax, [rax + 4*r15]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB7_124

LBB7_121:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x28 // mov    qword [rsp + 40], rax
	LONG $0x24348b4c             // mov    r14, qword [rsp]

LBB7_127:
	LONG $0x2474894c; BYTE $0x08 // mov    qword [rsp + 8], r14
	LONG $0x247c2b4c; BYTE $0x28 // sub    r15, qword [rsp + 40]
	QUAD $0x000000c024bc894c     // mov    qword [rsp + 192], r15
	QUAD $0x000000f024ac8b44     // mov    r13d, dword [rsp + 240]

LBB7_128:
	WORD $0x8949; BYTE $0xf3                   // mov    r11, rsi
	LONG $0x2e394466                           // cmp    word [rsi], r13w
	QUAD $0x000000d024949f0f                   // setg    byte [rsp + 208]
	LONG $0x6e394466; BYTE $0x02               // cmp    word [rsi + 2], r13w
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x6e394466; BYTE $0x04               // cmp    word [rsi + 4], r13w
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x6e394466; BYTE $0x06               // cmp    word [rsi + 6], r13w
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x6e394466; BYTE $0x08               // cmp    word [rsi + 8], r13w
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x6e394466; BYTE $0x0a               // cmp    word [rsi + 10], r13w
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x6e394466; BYTE $0x0c               // cmp    word [rsi + 12], r13w
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x6e394466; BYTE $0x0e               // cmp    word [rsi + 14], r13w
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	LONG $0x6e394466; BYTE $0x10               // cmp    word [rsi + 16], r13w
	QUAD $0x0000008024949f0f                   // setg    byte [rsp + 128]
	LONG $0x6e394466; BYTE $0x12               // cmp    word [rsi + 18], r13w
	WORD $0x9f0f; BYTE $0xd1                   // setg    cl
	LONG $0x6e394466; BYTE $0x14               // cmp    word [rsi + 20], r13w
	LONG $0xd69f0f40                           // setg    sil
	LONG $0x6b394566; BYTE $0x16               // cmp    word [r11 + 22], r13w
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x6b394566; BYTE $0x18               // cmp    word [r11 + 24], r13w
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x6b394566; BYTE $0x1a               // cmp    word [r11 + 26], r13w
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x6b394566; BYTE $0x1c               // cmp    word [r11 + 28], r13w
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x6b394566; BYTE $0x1e               // cmp    word [r11 + 30], r13w
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x6b394566; BYTE $0x20               // cmp    word [r11 + 32], r13w
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x6b394566; BYTE $0x22               // cmp    word [r11 + 34], r13w
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x6b394566; BYTE $0x24               // cmp    word [r11 + 36], r13w
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x6b394566; BYTE $0x26               // cmp    word [r11 + 38], r13w
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x6b394566; BYTE $0x28               // cmp    word [r11 + 40], r13w
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0x6b394566; BYTE $0x2a               // cmp    word [r11 + 42], r13w
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0x6b394566; BYTE $0x2c               // cmp    word [r11 + 44], r13w
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0x6b394566; BYTE $0x2e               // cmp    word [r11 + 46], r13w
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x6b394566; BYTE $0x30               // cmp    word [r11 + 48], r13w
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x6b394566; BYTE $0x32               // cmp    word [r11 + 50], r13w
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0x6b394566; BYTE $0x34               // cmp    word [r11 + 52], r13w
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x6b394566; BYTE $0x36               // cmp    word [r11 + 54], r13w
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0x6b394566; BYTE $0x38               // cmp    word [r11 + 56], r13w
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0x6b394566; BYTE $0x3a               // cmp    word [r11 + 58], r13w
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0x6b394566; BYTE $0x3c               // cmp    word [r11 + 60], r13w
	LONG $0x24149f0f                           // setg    byte [rsp]
	LONG $0x6b394566; BYTE $0x3e               // cmp    word [r11 + 62], r13w
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	QUAD $0x000000d024840244                   // add    r8b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0x80248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x244cb60f; BYTE $0x68               // movzx    ecx, byte [rsp + 104]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0844; BYTE $0xe7                   // or    dil, r12b
	QUAD $0x00000090248cb60f                   // movzx    ecx, byte [rsp + 144]
	WORD $0xc900                               // add    cl, cl
	LONG $0x48244c02                           // add    cl, byte [rsp + 72]
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x20244402                           // add    al, byte [rsp + 32]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02798844                           // mov    byte [rcx + 2], r15b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40738d49                           // lea    rsi, [r11 + 64]
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB7_128
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x0000011024bc8b4c                   // mov    r15, qword [rsp + 272]
	LONG $0x24748b4c; BYTE $0x08               // mov    r14, qword [rsp + 8]
	JMP  LBB7_130

LBB7_157:
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB7_161
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d
	LONG $0x240c8b4c         // mov    r9, qword [rsp]

LBB7_159:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x19               // movzx    r8d, byte [r9 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x193c8841                           // mov    byte [r9 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB7_159
	LONG $0x24048348; BYTE $0x01               // add    qword [rsp], 1

LBB7_161:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_165
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f02494894c // mov    qword [rsp + 240], r10
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB7_163:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000d024949f0f                   // setg    byte [rsp + 208]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x0000008024949f0f                   // setg    byte [rsp + 128]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x9f0f; BYTE $0xd1                   // setg    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	LONG $0xd09f0f41                           // setg    r8b
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000d024940244                   // add    r10b, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xc6                   // or    r14b, al
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0844; BYTE $0xd7                   // or    dil, r10b
	WORD $0xd200                               // add    dl, dl
	LONG $0x80249402; WORD $0x0000; BYTE $0x00 // add    dl, byte [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x24148b4c                           // mov    r10, qword [rsp]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0xc208                               // or    dl, al
	WORD $0xd789                               // mov    edi, edx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xdb                   // or    bl, r11b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	QUAD $0x000000a024bcb60f                   // movzx    edi, byte [rsp + 160]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0x0841; BYTE $0xd6                   // or    r14b, dl
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xd200                               // add    dl, dl
	LONG $0x48245402                           // add    dl, byte [rsp + 72]
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0xd789                               // mov    edi, edx
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	WORD $0x8845; BYTE $0x32                   // mov    byte [r10], r14b
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014a8841                           // mov    byte [r10 + 1], cl
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x20244c02                           // add    cl, byte [rsp + 32]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	LONG $0x2454b60f; BYTE $0x08               // movzx    edx, byte [rsp + 8]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0                   // or    r8b, dl
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x027a8845                           // mov    byte [r10 + 2], r15b
	LONG $0x03428845                           // mov    byte [r10 + 3], r8b
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c28349                           // add    r10, 4
	LONG $0x2414894c                           // mov    qword [rsp], r10
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB7_163
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f024948b4c                   // mov    r10, qword [rsp + 240]

LBB7_165:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_170
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_168

LBB7_172:
	LONG $0x1f538d4d             // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb     // test    r11, r11
	LONG $0xd3490f4d             // cmovns    r10, r11
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	LONG $0x100f44f3; BYTE $0x1a // movss    xmm11, dword [rdx]
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB7_176
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d
	LONG $0x24348b4c             // mov    r14, qword [rsp]

LBB7_174:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	WORD $0x970f; BYTE $0xd2     // seta    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB7_174
	LONG $0x24048348; BYTE $0x01 // add    qword [rsp], 1

LBB7_176:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB7_177
	LONG $0x04fa8349         // cmp    r10, 4
	JB   LBB7_179
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	LONG $0x24043948         // cmp    qword [rsp], rax
	JAE  LBB7_182
	LONG $0x24048b48         // mov    rax, qword [rsp]
	LONG $0x90048d4a         // lea    rax, [rax + 4*r10]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB7_182

LBB7_179:
	WORD $0xc031             // xor    eax, eax
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	LONG $0x243c8b4c         // mov    r15, qword [rsp]

LBB7_185:
	LONG $0x243c894c         // mov    qword [rsp], r15
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	WORD $0x2949; BYTE $0xc2 // sub    r10, rax
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB7_186:
	LONG $0x02100ff3                           // movss    xmm0, dword [rdx]
	LONG $0x4a100ff3; BYTE $0x04               // movss    xmm1, dword [rdx + 4]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x42100ff3; BYTE $0x08               // movss    xmm0, dword [rdx + 8]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x0c               // movss    xmm0, dword [rdx + 12]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x42100ff3; BYTE $0x10               // movss    xmm0, dword [rdx + 16]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x14               // movss    xmm0, dword [rdx + 20]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x42100ff3; BYTE $0x18               // movss    xmm0, dword [rdx + 24]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x1c               // movss    xmm0, dword [rdx + 28]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x42100ff3; BYTE $0x20               // movss    xmm0, dword [rdx + 32]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x24               // movss    xmm0, dword [rdx + 36]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x42100ff3; BYTE $0x28               // movss    xmm0, dword [rdx + 40]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x2c               // movss    xmm0, dword [rdx + 44]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x42100ff3; BYTE $0x30               // movss    xmm0, dword [rdx + 48]
	LONG $0x52100ff3; BYTE $0x34               // movss    xmm2, dword [rdx + 52]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x62100ff3; BYTE $0x38               // movss    xmm4, dword [rdx + 56]
	LONG $0x6a100ff3; BYTE $0x3c               // movss    xmm5, dword [rdx + 60]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x100f44f3; WORD $0x4042             // movss    xmm8, dword [rdx + 64]
	LONG $0x100f44f3; WORD $0x444a             // movss    xmm9, dword [rdx + 68]
	LONG $0xd32e0f41                           // ucomiss    xmm2, xmm11
	LONG $0x100f44f3; WORD $0x4852             // movss    xmm10, dword [rdx + 72]
	LONG $0x100f44f3; WORD $0x4c62             // movss    xmm12, dword [rdx + 76]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x100f44f3; WORD $0x506a             // movss    xmm13, dword [rdx + 80]
	LONG $0x100f44f3; WORD $0x5472             // movss    xmm14, dword [rdx + 84]
	LONG $0xe32e0f41                           // ucomiss    xmm4, xmm11
	LONG $0x62100ff3; BYTE $0x58               // movss    xmm4, dword [rdx + 88]
	LONG $0x42100ff3; BYTE $0x5c               // movss    xmm0, dword [rdx + 92]
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	LONG $0x4a100ff3; BYTE $0x60               // movss    xmm1, dword [rdx + 96]
	LONG $0x52100ff3; BYTE $0x64               // movss    xmm2, dword [rdx + 100]
	LONG $0xeb2e0f41                           // ucomiss    xmm5, xmm11
	LONG $0x6a100ff3; BYTE $0x68               // movss    xmm5, dword [rdx + 104]
	LONG $0x5a100ff3; BYTE $0x6c               // movss    xmm3, dword [rdx + 108]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x72100ff3; BYTE $0x70               // movss    xmm6, dword [rdx + 112]
	LONG $0x7a100ff3; BYTE $0x74               // movss    xmm7, dword [rdx + 116]
	LONG $0xc32e0f45                           // ucomiss    xmm8, xmm11
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0xcb2e0f45                           // ucomiss    xmm9, xmm11
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0xd32e0f45                           // ucomiss    xmm10, xmm11
	LONG $0xd6970f40                           // seta    sil
	LONG $0xe32e0f45                           // ucomiss    xmm12, xmm11
	LONG $0xd0970f41                           // seta    r8b
	LONG $0xeb2e0f45                           // ucomiss    xmm13, xmm11
	LONG $0xd2970f41                           // seta    r10b
	LONG $0xf32e0f45                           // ucomiss    xmm14, xmm11
	LONG $0xd6970f41                           // seta    r14b
	LONG $0xe32e0f41                           // ucomiss    xmm4, xmm11
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd1970f41                           // seta    r9b
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0xd32e0f41                           // ucomiss    xmm2, xmm11
	LONG $0xd7970f41                           // seta    r15b
	LONG $0xeb2e0f41                           // ucomiss    xmm5, xmm11
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0xdb2e0f41                           // ucomiss    xmm3, xmm11
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0xf32e0f41                           // ucomiss    xmm6, xmm11
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0xfb2e0f41                           // ucomiss    xmm7, xmm11
	LONG $0x42100ff3; BYTE $0x78               // movss    xmm0, dword [rdx + 120]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x42100ff3; BYTE $0x7c               // movss    xmm0, dword [rdx + 124]
	LONG $0x80ea8348                           // sub    rdx, -128
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd7970f40                           // seta    dil
	WORD $0xdb00                               // add    bl, bl
	LONG $0x18245c02                           // add    bl, byte [rsp + 24]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xec                   // or    r12b, r13b
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	WORD $0x8941; BYTE $0xdc                   // mov    r12d, ebx
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0844; BYTE $0xe3                   // or    bl, r12b
	LONG $0x64b60f44; WORD $0x5824             // movzx    r12d, byte [rsp + 88]
	LONG $0x06e4c041                           // shl    r12b, 6
	LONG $0x6cb60f44; WORD $0x4024             // movzx    r13d, byte [rsp + 64]
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	LONG $0x64b60f44; WORD $0x2824             // movzx    r12d, byte [rsp + 40]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	WORD $0x8944; BYTE $0xe0                   // mov    eax, r12d
	LONG $0x64b60f44; WORD $0x2024             // movzx    r12d, byte [rsp + 32]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0841; BYTE $0xc4                   // or    r12b, al
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	QUAD $0x00000090249cb60f                   // movzx    ebx, byte [rsp + 144]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0xc308                               // or    bl, al
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0xc900                               // add    cl, cl
	LONG $0xb0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 176]
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x03e0c041                           // shl    r8b, 3
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xc2                   // or    r10b, r8b
	LONG $0x05e6c041                           // shl    r14b, 5
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0841; BYTE $0xdb                   // or    r11b, bl
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	WORD $0x8844; BYTE $0x2e                   // mov    byte [rsi], r13b
	WORD $0x0845; BYTE $0xf1                   // or    r9b, r14b
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	LONG $0x247c0244; BYTE $0x68               // add    r15b, byte [rsp + 104]
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	LONG $0x245cb60f; BYTE $0x30               // movzx    ebx, byte [rsp + 48]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0xc308                               // or    bl, al
	LONG $0x015e8844                           // mov    byte [rsi + 1], r11b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8844                           // mov    byte [rsi + 2], r9b
	WORD $0x0840; BYTE $0xdf                   // or    dil, bl
	LONG $0x037e8840                           // mov    byte [rsi + 3], dil
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB7_186
	LONG $0x243c8b4c                           // mov    r15, qword [rsp]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	JMP  LBB7_188

LBB7_9:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x60 // mov    qword [rsp + 96], rax

LBB7_90:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_93
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB7_96

LBB7_61:
	LONG $0x24048b48             // mov    rax, qword [rsp]
	LONG $0x24448948; BYTE $0x78 // mov    qword [rsp + 120], rax
	WORD $0x8949; BYTE $0xf4     // mov    r12, rsi

LBB7_72:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xdf // add    r15, r11
	JNE  LBB7_75
	WORD $0xc031             // xor    eax, eax
	JMP  LBB7_78

LBB7_119:
	LONG $0x24348b4c // mov    r14, qword [rsp]

LBB7_130:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xdf // add    r15, r11
	JNE  LBB7_135
	WORD $0x3145; BYTE $0xff // xor    r15d, r15d
	JMP  LBB7_133

LBB7_177:
	LONG $0x243c8b4c         // mov    r15, qword [rsp]
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi

LBB7_188:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB7_202
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB7_193
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB7_191

LBB7_155:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_156:
	WORD $0x3b4c; BYTE $0x2e     // cmp    r13, qword [rsi]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e3b4c             // cmp    r13, qword [rsi + 8]
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB7_156

LBB7_40:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	WORD $0x3b4c; BYTE $0x2e // cmp    r13, qword [rsi]
	JMP  LBB7_111

LBB7_153:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_154:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB7_154

LBB7_150:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	WORD $0x3944; BYTE $0x2e // cmp    dword [rsi], r13d
	JMP  LBB7_152

LBB7_93:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x245c8b4c; BYTE $0x60 // mov    r11, qword [rsp + 96]

LBB7_94:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e243846             // cmp    byte [rsi + r9], r12b
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x06643844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r12b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB7_94
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB7_96:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB7_202
	WORD $0x3844; BYTE $0x26     // cmp    byte [rsi], r12b
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x60 // mov    r8, qword [rsp + 96]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al
	WORD $0x3040; BYTE $0xfb     // xor    bl, dil
	LONG $0x101c8841             // mov    byte [r8 + rdx], bl
	JMP  LBB7_202

LBB7_75:
	WORD $0x894d; BYTE $0xc1     // mov    r9, r8
	LONG $0xfee18349             // and    r9, -2
	WORD $0xc031                 // xor    eax, eax
	LONG $0x245c8b4c; BYTE $0x78 // mov    r11, qword [rsp + 120]

LBB7_76:
	LONG $0x04143a45             // cmp    r10b, byte [r12 + rax]
	WORD $0xf619                 // sbb    esi, esi
	WORD $0x8948; BYTE $0xc7     // mov    rdi, rax
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x1cb60f41; BYTE $0x3b // movzx    ebx, byte [r11 + rdi]
	WORD $0x3040; BYTE $0xde     // xor    sil, bl
	WORD $0x2040; BYTE $0xf2     // and    dl, sil
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x04543a45; BYTE $0x01 // cmp    r10b, byte [r12 + rax + 1]
	LONG $0x02408d48             // lea    rax, [rax + 2]
	WORD $0xf619                 // sbb    esi, esi
	WORD $0x3040; BYTE $0xd6     // xor    sil, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xf3     // and    bl, sil
	WORD $0xd330                 // xor    bl, dl
	LONG $0x3b1c8841             // mov    byte [r11 + rdi], bl
	WORD $0x3949; BYTE $0xc1     // cmp    r9, rax
	JNE  LBB7_76
	WORD $0x0149; BYTE $0xc4     // add    r12, rax

LBB7_78:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB7_202
	LONG $0x24143a45             // cmp    r10b, byte [r12]
	WORD $0xd219                 // sbb    edx, edx
	WORD $0x8948; BYTE $0xc6     // mov    rsi, rax
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x24448b4c; BYTE $0x78 // mov    r8, qword [rsp + 120]
	LONG $0x303c8a41             // mov    dil, byte [r8 + rsi]
	WORD $0x0724                 // and    al, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xfa     // xor    dl, dil
	WORD $0xd320                 // and    bl, dl
	WORD $0x3040; BYTE $0xfb     // xor    bl, dil
	LONG $0x301c8841             // mov    byte [r8 + rsi], bl
	JMP  LBB7_202

LBB7_137:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_138:
	WORD $0x3b44; BYTE $0x2e     // cmp    r13d, dword [rsi]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3b44             // cmp    r13d, dword [rsi + 4]
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB7_138

LBB7_24:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	WORD $0x3b44; BYTE $0x2e // cmp    r13d, dword [rsi]
	JMP  LBB7_111

LBB7_196:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xd2 // xor    r10d, r10d
	LONG $0x241c8b4c         // mov    r11, qword [rsp]

LBB7_197:
	LONG $0x0e100ff2             // movsd    xmm1, qword [rsi]
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd0     // seta    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xd7     // mov    rdi, r10
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x8944; BYTE $0xd1     // mov    ecx, r10d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	LONG $0x14b60f41; BYTE $0x3b // movzx    edx, byte [r11 + rdi]
	WORD $0xd030                 // xor    al, dl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x3b1c8841             // mov    byte [r11 + rdi], bl
	LONG $0x02c28349             // add    r10, 2
	LONG $0x4e100ff2; BYTE $0x08 // movsd    xmm1, qword [rsi + 8]
	LONG $0x10c68348             // add    rsi, 16
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd0     // seta    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	WORD $0x394d; BYTE $0xd1     // cmp    r9, r10
	JNE  LBB7_197

LBB7_198:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	LONG $0x0e100ff2         // movsd    xmm1, qword [rsi]
	LONG $0xc82e0f66         // ucomisd    xmm1, xmm0
	WORD $0x970f; BYTE $0xd0 // seta    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xd2 // mov    rdx, r10
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x243c8b48         // mov    rdi, qword [rsp]
	LONG $0x17348a40         // mov    sil, byte [rdi + rdx]
	LONG $0x07e28041         // and    r10b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd1 // mov    ecx, r10d
	JMP  LBB7_200

LBB7_112:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_113:
	LONG $0x2e3b4466             // cmp    r13w, word [rsi]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x6e3b4466; BYTE $0x02 // cmp    r13w, word [rsi + 2]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB7_113

LBB7_109:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB7_202
	LONG $0x2e3b4466 // cmp    r13w, word [rsi]

LBB7_111:
	WORD $0xc019             // sbb    eax, eax
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x243c8b48         // mov    rdi, qword [rsp]
	LONG $0x17348a40         // mov    sil, byte [rdi + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	JMP  LBB7_201

LBB7_170:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	LONG $0x24348b4c         // mov    r14, qword [rsp]

LBB7_171:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB7_171

LBB7_168:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	WORD $0x394c; BYTE $0x2e // cmp    qword [rsi], r13

LBB7_152:
	WORD $0x9f0f; BYTE $0xd0 // setg    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x243c8b48         // mov    rdi, qword [rsp]
	LONG $0x17348a40         // mov    sil, byte [rdi + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d

LBB7_200:
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al

LBB7_201:
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	WORD $0x1c88; BYTE $0x17 // mov    byte [rdi + rdx], bl

LBB7_202:
	MOVQ 336(SP), SP
	RET

LBB7_135:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xff // xor    r15d, r15d
	QUAD $0x000000f0249c8b44 // mov    r11d, dword [rsp + 240]

LBB7_136:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x1e394466             // cmp    word [rsi], r11w
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xff     // mov    rdi, r15
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3e // movzx    r10d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xf9     // mov    ecx, r15d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c78349             // add    r15, 2
	LONG $0x5e394466; BYTE $0x02 // cmp    word [rsi + 2], r11w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xf9     // cmp    r9, r15
	JNE  LBB7_136

LBB7_133:
	LONG $0x01c0f641                           // test    r8b, 1
	JE   LBB7_202
	LONG $0xf024848b; WORD $0x0000; BYTE $0x00 // mov    eax, dword [rsp + 240]
	WORD $0x3966; BYTE $0x06                   // cmp    word [rsi], ax
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	WORD $0xd8f6                               // neg    al
	WORD $0x894c; BYTE $0xfa                   // mov    rdx, r15
	LONG $0x03eac148                           // shr    rdx, 3
	LONG $0x163c8a41                           // mov    dil, byte [r14 + rdx]
	LONG $0x07e78041                           // and    r15b, 7
	WORD $0x01b3                               // mov    bl, 1
	WORD $0x8944; BYTE $0xf9                   // mov    ecx, r15d
	WORD $0xe3d2                               // shl    bl, cl
	WORD $0x3040; BYTE $0xf8                   // xor    al, dil
	WORD $0xc320                               // and    bl, al
	WORD $0x3040; BYTE $0xfb                   // xor    bl, dil
	LONG $0x161c8841                           // mov    byte [r14 + rdx], bl
	JMP  LBB7_202

LBB7_193:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	WORD $0x894d; BYTE $0xfa // mov    r10, r15
	WORD $0x8948; BYTE $0xd6 // mov    rsi, rdx

LBB7_194:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	WORD $0x970f; BYTE $0xd3     // seta    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x04b60f41; BYTE $0x3a // movzx    eax, byte [r10 + rdi]
	WORD $0xc330                 // xor    bl, al
	WORD $0xda20                 // and    dl, bl
	WORD $0xc230                 // xor    dl, al
	LONG $0x3a148841             // mov    byte [r10 + rdi], dl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x46100ff3; BYTE $0x04 // movss    xmm0, dword [rsi + 4]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	WORD $0x970f; BYTE $0xd0     // seta    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd030                 // xor    al, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0xd330                 // xor    bl, dl
	LONG $0x3a1c8841             // mov    byte [r10 + rdi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB7_194
	WORD $0x8948; BYTE $0xf2     // mov    rdx, rsi

LBB7_191:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB7_202
	LONG $0x02100ff3         // movss    xmm0, dword [rdx]
	LONG $0xc32e0f41         // ucomiss    xmm0, xmm11
	WORD $0x970f; BYTE $0xd0 // seta    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x173c8a41         // mov    dil, byte [r15 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x171c8841         // mov    byte [r15 + rdx], bl
	JMP  LBB7_202

LBB7_84:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e82494894c             // mov    qword [rsp + 232], r10
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0x90048d4a                     // lea    rax, [rax + 4*r10]
	LONG $0x24448948; BYTE $0x60         // mov    qword [rsp + 96], rax
	LONG $0xc4b60f41                     // movzx    eax, r12b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000090248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 144], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB7_85:
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	QUAD $0x000000f024848948                   // mov    qword [rsp + 240], rax
	LONG $0x05e7c148                           // shl    rdi, 5
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	WORD $0x8949; BYTE $0xf9                   // mov    r9, rdi
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	WORD $0x8949; BYTE $0xf8                   // mov    r8, rdi
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	LONG $0x247c8948; BYTE $0x38               // mov    qword [rsp + 56], rdi
	LONG $0x3e0cb60f                           // movzx    ecx, byte [rsi + rdi]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x3e4cb60f; BYTE $0x01               // movzx    ecx, byte [rsi + rdi + 1]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x3e4cb60f; BYTE $0x02               // movzx    ecx, byte [rsi + rdi + 2]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x3e4cb60f; BYTE $0x03               // movzx    ecx, byte [rsi + rdi + 3]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x3e4cb60f; BYTE $0x04               // movzx    ecx, byte [rsi + rdi + 4]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x3e4cb60f; BYTE $0x05               // movzx    ecx, byte [rsi + rdi + 5]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x3e4cb60f; BYTE $0x06               // movzx    ecx, byte [rsi + rdi + 6]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x3e4cb60f; BYTE $0x07               // movzx    ecx, byte [rsi + rdi + 7]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x3e4cb60f; BYTE $0x08               // movzx    ecx, byte [rsi + rdi + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00013024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm0
	LONG $0x3e4cb60f; BYTE $0x09               // movzx    ecx, byte [rsi + rdi + 9]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x3e4cb60f; BYTE $0x0a               // movzx    ecx, byte [rsi + rdi + 10]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x3e4cb60f; BYTE $0x0b               // movzx    ecx, byte [rsi + rdi + 11]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x3e4cb60f; BYTE $0x0c               // movzx    ecx, byte [rsi + rdi + 12]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x3e4cb60f; BYTE $0x0d               // movzx    ecx, byte [rsi + rdi + 13]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x3e4cb60f; BYTE $0x0e               // movzx    ecx, byte [rsi + rdi + 14]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x247c8948; BYTE $0x28               // mov    qword [rsp + 40], rdi
	WORD $0x8949; BYTE $0xfd                   // mov    r13, rdi
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x20               // mov    qword [rsp + 32], r13
	LONG $0x40cc8349                           // or    r12, 64
	LONG $0x60ca8348                           // or    rdx, 96
	LONG $0x24548948; BYTE $0x68               // mov    qword [rsp + 104], rdx
	LONG $0x80cb8149; WORD $0x0000; BYTE $0x00 // or    r11, 128
	LONG $0x245c894c; BYTE $0x40               // mov    qword [rsp + 64], r11
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	LONG $0xa0cb8149; WORD $0x0000; BYTE $0x00 // or    r11, 160
	LONG $0x00c00d48; WORD $0x0000             // or    rax, 192
	LONG $0x24448948; BYTE $0x50               // mov    qword [rsp + 80], rax
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00ce8149; WORD $0x0001; BYTE $0x00 // or    r14, 256
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	LONG $0x20ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 288
	LONG $0x2454894c; BYTE $0x78               // mov    qword [rsp + 120], r10
	LONG $0x40c88149; WORD $0x0001; BYTE $0x00 // or    r8, 320
	LONG $0x2444894c; BYTE $0x48               // mov    qword [rsp + 72], r8
	LONG $0x60cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 352
	LONG $0x245c8948; BYTE $0x58               // mov    qword [rsp + 88], rbx
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	LONG $0x80c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 384
	LONG $0x244c8948; BYTE $0x38               // mov    qword [rsp + 56], rcx
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x18               // mov    qword [rsp + 24], rax
	WORD $0x8948; BYTE $0xf8                   // mov    rax, rdi
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	LONG $0x24448948; BYTE $0x30               // mov    qword [rsp + 48], rax
	QUAD $0x012e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 1
	QUAD $0x02263c203a0f4666                   // pinsrb    xmm15, byte [rsi + r12], 2
	QUAD $0x03163c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdx], 3
	LONG $0x246c8b4c; BYTE $0x40               // mov    r13, qword [rsp + 64]
	QUAD $0x042e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r13], 4
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	QUAD $0x051e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r11], 5
	LONG $0x247c8b4c; BYTE $0x50               // mov    r15, qword [rsp + 80]
	QUAD $0x063e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r15], 6
	QUAD $0x070e3c203a0f4666                   // pinsrb    xmm15, byte [rsi + r9], 7
	QUAD $0x08363c203a0f4666                   // pinsrb    xmm15, byte [rsi + r14], 8
	QUAD $0x09163c203a0f4666                   // pinsrb    xmm15, byte [rsi + r10], 9
	QUAD $0x0a063c203a0f4666                   // pinsrb    xmm15, byte [rsi + r8], 10
	QUAD $0x0b1e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rbx], 11
	QUAD $0x0c0e3c203a0f4466                   // pinsrb    xmm15, byte [rsi + rcx], 12
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0d163c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdx], 13
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0e163c203a0f4466                   // pinsrb    xmm15, byte [rsi + rdx], 14
	QUAD $0x0f063c203a0f4466                   // pinsrb    xmm15, byte [rsi + rax], 15
	LONG $0x245c8b4c; BYTE $0x20               // mov    r11, qword [rsp + 32]
	QUAD $0x011e6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r11 + 1], 1
	QUAD $0x01266c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r12 + 1], 2
	LONG $0x245c8b4c; BYTE $0x68               // mov    r11, qword [rsp + 104]
	QUAD $0x011e6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r11 + 1], 3
	QUAD $0x012e6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r13 + 1], 4
	QUAD $0x05013e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 1], 5
	QUAD $0x013e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r15 + 1], 6
	QUAD $0x010e6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r9 + 1], 7
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	QUAD $0x01366c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r14 + 1], 8
	QUAD $0x01166c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r10 + 1], 9
	QUAD $0x01066c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r8 + 1], 10
	QUAD $0x0b011e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 1], 11
	QUAD $0x0c010e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 1], 12
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0d010e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 1], 13
	QUAD $0x0e01166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 1], 14
	QUAD $0x0f01066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 1], 15
	QUAD $0x0090248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 144]
	LONG $0x640f4166; BYTE $0xe9               // pcmpgtb    xmm5, xmm9
	LONG $0xfd6f0f66                           // movdqa    xmm7, xmm5
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xfcdb0f66                           // pand    xmm7, xmm4
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x065cb60f; BYTE $0x0f               // movzx    ebx, byte [rsi + rax + 15]
	LONG $0x6e0f4466; BYTE $0xf3               // movd    xmm14, ebx
	LONG $0x640f4566; BYTE $0xf9               // pcmpgtb    xmm15, xmm9
	LONG $0x24748b4c; BYTE $0x20               // mov    r14, qword [rsp + 32]
	QUAD $0x023674203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r14 + 2], 1
	WORD $0x894c; BYTE $0xe1                   // mov    rcx, r12
	QUAD $0x022674203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r12 + 2], 2
	WORD $0x894c; BYTE $0xda                   // mov    rdx, r11
	QUAD $0x021e74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r11 + 2], 3
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x020674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r8 + 2], 4
	QUAD $0x05023e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 2], 5
	LONG $0x24648b4c; BYTE $0x50               // mov    r12, qword [rsp + 80]
	QUAD $0x022674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r12 + 2], 6
	QUAD $0x000000c0248c894c                   // mov    qword [rsp + 192], r9
	QUAD $0x020e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r9 + 2], 7
	QUAD $0x0000008024948b4c                   // mov    r10, qword [rsp + 128]
	QUAD $0x021674203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r10 + 2], 8
	LONG $0x245c8b4c; BYTE $0x78               // mov    r11, qword [rsp + 120]
	QUAD $0x021e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r11 + 2], 9
	LONG $0x247c8b4c; BYTE $0x48               // mov    r15, qword [rsp + 72]
	QUAD $0x023e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r15 + 2], 10
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x0b021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 11
	LONG $0x245c8b48; BYTE $0x38               // mov    rbx, qword [rsp + 56]
	QUAD $0x0c021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0e021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 14
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x0f021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 15
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0x640f4166; BYTE $0xf1               // pcmpgtb    xmm6, xmm9
	QUAD $0x000000b0856f0f66                   // movdqa    xmm0, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xf0db0f66                           // pand    xmm6, xmm0
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x065cb60f; BYTE $0x10               // movzx    ebx, byte [rsi + rax + 16]
	LONG $0x6e0f4466; BYTE $0xfb               // movd    xmm15, ebx
	QUAD $0x033654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r14 + 3], 1
	QUAD $0x02030e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 3], 2
	WORD $0x8948; BYTE $0xd3                   // mov    rbx, rdx
	QUAD $0x03031654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 3], 3
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	QUAD $0x030654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r8 + 3], 4
	WORD $0x8948; BYTE $0xfa                   // mov    rdx, rdi
	LONG $0x247c8948; BYTE $0x70               // mov    qword [rsp + 112], rdi
	QUAD $0x05033e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 3], 5
	WORD $0x894c; BYTE $0xe7                   // mov    rdi, r12
	QUAD $0x032654203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r12 + 3], 6
	QUAD $0x032e54203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r13 + 3], 7
	QUAD $0x031654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r10 + 3], 8
	QUAD $0x031e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r11 + 3], 9
	QUAD $0x033e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r15 + 3], 10
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x032654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r12 + 3], 11
	LONG $0x246c8b4c; BYTE $0x38               // mov    r13, qword [rsp + 56]
	QUAD $0x032e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r13 + 3], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d030654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 3], 13
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x030654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r8 + 3], 14
	LONG $0x24448b4c; BYTE $0x30               // mov    r8, qword [rsp + 48]
	QUAD $0x030654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r8 + 3], 15
	QUAD $0x04364c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rsi + r14 + 4], 1
	QUAD $0x02040e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 4], 2
	QUAD $0x03041e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 4], 3
	QUAD $0x040e4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rsi + r9 + 4], 4
	QUAD $0x0504164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 4], 5
	QUAD $0x06043e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 4], 6
	QUAD $0x000000c024848b48                   // mov    rax, qword [rsp + 192]
	QUAD $0x0704064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 4], 7
	QUAD $0x04164c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r10 + 4], 8
	QUAD $0x041e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r11 + 4], 9
	QUAD $0x043e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r15 + 4], 10
	QUAD $0x04264c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r12 + 4], 11
	QUAD $0x042e4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r13 + 4], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d04064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 4], 13
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	QUAD $0x04364c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r14 + 4], 14
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x04064c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r8 + 4], 15
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	LONG $0x165cb60f; BYTE $0x11               // movzx    ebx, byte [rsi + rdx + 17]
	LONG $0xc36e0f66                           // movd    xmm0, ebx
	LONG $0x640f4166; BYTE $0xd1               // pcmpgtb    xmm2, xmm9
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0x640f4166; BYTE $0xc9               // pcmpgtb    xmm1, xmm9
	QUAD $0x000000d0ad6f0f66                   // movdqa    xmm5, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xcddb0f66                           // pand    xmm1, xmm5
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x165cb60f; BYTE $0x12               // movzx    ebx, byte [rsi + rdx + 18]
	LONG $0xeb6e0f66                           // movd    xmm5, ebx
	LONG $0x24448b4c; BYTE $0x20               // mov    r8, qword [rsp + 32]
	QUAD $0x050644203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rsi + r8 + 5], 1
	QUAD $0x050e44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rcx + 5], 2
	LONG $0x247c8b48; BYTE $0x68               // mov    rdi, qword [rsp + 104]
	QUAD $0x053e44203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rdi + 5], 3
	LONG $0x244c8b4c; BYTE $0x40               // mov    r9, qword [rsp + 64]
	QUAD $0x050e44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r9 + 5], 4
	LONG $0x24548b48; BYTE $0x70               // mov    rdx, qword [rsp + 112]
	QUAD $0x051644203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rdx + 5], 5
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x051644203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r10 + 5], 6
	QUAD $0x000000c0249c8b4c                   // mov    r11, qword [rsp + 192]
	QUAD $0x051e44203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r11 + 5], 7
	QUAD $0x0000008024a48b4c                   // mov    r12, qword [rsp + 128]
	QUAD $0x052644203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r12 + 5], 8
	LONG $0x246c8b4c; BYTE $0x78               // mov    r13, qword [rsp + 120]
	QUAD $0x052e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r13 + 5], 9
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x051e44203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + rbx + 5], 10
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x051e44203a0f4466; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + rbx + 5], 11
	LONG $0x245c8b48; BYTE $0x38               // mov    rbx, qword [rsp + 56]
	QUAD $0x051e44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rbx + 5], 12
	QUAD $0x050644203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rax + 5], 13
	QUAD $0x053644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r14 + 5], 14
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	QUAD $0x053e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r15 + 5], 15
	LONG $0x640f4566; BYTE $0xc1               // pcmpgtb    xmm8, xmm9
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xdb0f4466; BYTE $0xc2               // pand    xmm8, xmm2
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x065cb60f; BYTE $0x13               // movzx    ebx, byte [rsi + rax + 19]
	LONG $0xfb6e0f66                           // movd    xmm7, ebx
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	LONG $0x065cb60f; BYTE $0x14               // movzx    ebx, byte [rsi + rax + 20]
	LONG $0xf36e0f66                           // movd    xmm6, ebx
	QUAD $0x06065c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r8 + 6], 1
	QUAD $0x02060e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 6], 2
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x03063e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 6], 3
	WORD $0x894d; BYTE $0xcf                   // mov    r15, r9
	QUAD $0x060e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r9 + 6], 4
	QUAD $0x0506165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 6], 5
	WORD $0x894c; BYTE $0xd7                   // mov    rdi, r10
	QUAD $0x06165c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r10 + 6], 6
	WORD $0x894d; BYTE $0xd9                   // mov    r9, r11
	QUAD $0x061e5c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r11 + 6], 7
	WORD $0x894d; BYTE $0xe2                   // mov    r10, r12
	QUAD $0x06265c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r12 + 6], 8
	WORD $0x894c; BYTE $0xeb                   // mov    rbx, r13
	QUAD $0x062e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r13 + 6], 9
	LONG $0x24548b48; BYTE $0x48               // mov    rdx, qword [rsp + 72]
	QUAD $0x0a06165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 6], 10
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x06265c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r12 + 6], 11
	LONG $0x246c8b4c; BYTE $0x38               // mov    r13, qword [rsp + 56]
	QUAD $0x062e5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r13 + 6], 12
	LONG $0x245c8b4c; BYTE $0x10               // mov    r11, qword [rsp + 16]
	QUAD $0x061e5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r11 + 6], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e06065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 6], 14
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0f06065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 6], 15
	QUAD $0x0000a024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 160]
	QUAD $0x070654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r8 + 7], 1
	QUAD $0x02070e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 7], 2
	QUAD $0x073654203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r14 + 7], 3
	QUAD $0x073e54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r15 + 7], 4
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x05070654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 7], 5
	QUAD $0x06073e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 7], 6
	QUAD $0x070e54203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r9 + 7], 7
	QUAD $0x071654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r10 + 7], 8
	QUAD $0x09071e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 7], 9
	QUAD $0x0a071654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 7], 10
	QUAD $0x072654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r12 + 7], 11
	QUAD $0x072e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r13 + 7], 12
	QUAD $0x071e54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r11 + 7], 13
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0e073e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 7], 14
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x0f071654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 7], 15
	LONG $0x640f4166; BYTE $0xd9               // pcmpgtb    xmm3, xmm9
	QUAD $0x000000f08d6f0f66                   // movdqa    xmm1, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0xd9db0f66                           // pand    xmm3, xmm1
	LONG $0x640f4166; BYTE $0xd1               // pcmpgtb    xmm2, xmm9
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0x4d6f0f66; BYTE $0x60               // movdqa    xmm1, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xd1db0f66                           // pand    xmm2, xmm1
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0x24448b4c; BYTE $0x28               // mov    r8, qword [rsp + 40]
	LONG $0x5cb60f42; WORD $0x1506             // movzx    ebx, byte [rsi + r8 + 21]
	LONG $0xd36e0f66                           // movd    xmm2, ebx
	LONG $0x244c8b4c; BYTE $0x20               // mov    r9, qword [rsp + 32]
	QUAD $0x090e54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r9 + 9], 1
	QUAD $0x090e54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rcx + 9], 2
	LONG $0x247c8b4c; BYTE $0x68               // mov    r15, qword [rsp + 104]
	QUAD $0x093e54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r15 + 9], 3
	QUAD $0x093654203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r14 + 9], 4
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x091e54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rbx + 9], 5
	LONG $0x245c8b48; BYTE $0x50               // mov    rbx, qword [rsp + 80]
	QUAD $0x091e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rbx + 9], 6
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	QUAD $0x091654203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r10 + 9], 7
	QUAD $0x00000080249c8b4c                   // mov    r11, qword [rsp + 128]
	QUAD $0x091e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r11 + 9], 8
	LONG $0x245c8b48; BYTE $0x78               // mov    rbx, qword [rsp + 120]
	QUAD $0x091e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rbx + 9], 9
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x091e54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rbx + 9], 10
	QUAD $0x092654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r12 + 9], 11
	QUAD $0x092e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r13 + 9], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x091e54203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rbx + 9], 13
	QUAD $0x093e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rdi + 9], 14
	QUAD $0x091654203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rdx + 9], 15
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x0000a0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm1
	LONG $0x640f4566; BYTE $0xd1               // pcmpgtb    xmm10, xmm9
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	LONG $0xccdb0f66                           // pand    xmm1, xmm4
	LONG $0xf80f4166; BYTE $0xca               // psubb    xmm1, xmm10
	LONG $0x5cb60f42; WORD $0x1606             // movzx    ebx, byte [rsi + r8 + 22]
	LONG $0xdb6e0f66                           // movd    xmm3, ebx
	QUAD $0x00013024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 304]
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	QUAD $0x080e64203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r9 + 8], 1
	QUAD $0x02080e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 8], 2
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	QUAD $0x083e64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r15 + 8], 3
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	QUAD $0x083664203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r14 + 8], 4
	LONG $0x24548b48; BYTE $0x70               // mov    rdx, qword [rsp + 112]
	QUAD $0x05081664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 8], 5
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x06083e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 8], 6
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	QUAD $0x081664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r10 + 8], 7
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x081e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r11 + 8], 8
	LONG $0x244c8b48; BYTE $0x78               // mov    rcx, qword [rsp + 120]
	QUAD $0x09080e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 8], 9
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0a080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 10
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x083664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r14 + 8], 11
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x0c080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 12
	LONG $0x245c8b4c; BYTE $0x10               // mov    r11, qword [rsp + 16]
	QUAD $0x081e64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r11 + 8], 13
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x080664203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r8 + 8], 14
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0f080664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 8], 15
	LONG $0x640f4166; BYTE $0xe1               // pcmpgtb    xmm4, xmm9
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	QUAD $0x00b024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 176]
	QUAD $0x0a1e54203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rbx + 10], 1
	QUAD $0x0a2654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r12 + 10], 2
	QUAD $0x0a3e54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r15 + 10], 3
	QUAD $0x0a2e54203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rsi + r13 + 10], 4
	QUAD $0x0a1654203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rdx + 10], 5
	QUAD $0x0a3e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rdi + 10], 6
	QUAD $0x0a0e54203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r9 + 10], 7
	QUAD $0x0a1654203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r10 + 10], 8
	QUAD $0x0a0e54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rsi + rcx + 10], 9
	LONG $0x247c8b4c; BYTE $0x48               // mov    r15, qword [rsp + 72]
	QUAD $0x0a3e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r15 + 10], 10
	QUAD $0x0a3654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r14 + 10], 11
	LONG $0x246c8b4c; BYTE $0x38               // mov    r13, qword [rsp + 56]
	QUAD $0x0a2e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r13 + 10], 12
	QUAD $0x0a1e54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r11 + 10], 13
	QUAD $0x0a0654203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r8 + 10], 14
	WORD $0x894d; BYTE $0xc3                   // mov    r11, r8
	QUAD $0x0a0654203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + rax + 10], 15
	LONG $0x640f4566; BYTE $0xd1               // pcmpgtb    xmm10, xmm9
	QUAD $0x0000b095db0f4466; BYTE $0x00       // pand    xmm10, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xeb0f4466; BYTE $0xd4               // por    xmm10, xmm4
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x065cb60f; BYTE $0x17               // movzx    ebx, byte [rsi + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc3               // movd    xmm8, ebx
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00b024947f0f4466; WORD $0x0000     // movdqa    oword [rsp + 176], xmm10
	LONG $0x065cb60f; BYTE $0x18               // movzx    ebx, byte [rsi + rax + 24]
	LONG $0x6e0f4466; BYTE $0xd3               // movd    xmm10, ebx
	LONG $0x24748b4c; BYTE $0x20               // mov    r14, qword [rsp + 32]
	QUAD $0x0b365c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r14 + 11], 1
	WORD $0x894c; BYTE $0xe1                   // mov    rcx, r12
	QUAD $0x000000d024a4894c                   // mov    qword [rsp + 208], r12
	QUAD $0x0b265c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rsi + r12 + 11], 2
	LONG $0x24448b48; BYTE $0x68               // mov    rax, qword [rsp + 104]
	QUAD $0x0b065c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rax + 11], 3
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x0b1e5c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rbx + 11], 4
	QUAD $0x0b165c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rsi + rdx + 11], 5
	QUAD $0x0b3e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rdi + 11], 6
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	QUAD $0x0b0e5c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r9 + 11], 7
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	QUAD $0x0b165c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r10 + 11], 8
	LONG $0x24548b4c; BYTE $0x78               // mov    r10, qword [rsp + 120]
	QUAD $0x0b165c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r10 + 11], 9
	QUAD $0x0b3e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r15 + 11], 10
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x0b265c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r12 + 11], 11
	QUAD $0x0b2e5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r13 + 11], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0b1e5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rbx + 11], 13
	QUAD $0x0b1e5c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r11 + 11], 14
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x0b1e5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r11 + 11], 15
	QUAD $0x0c366c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r14 + 12], 1
	QUAD $0x0c0e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rcx + 12], 2
	QUAD $0x0c066c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rax + 12], 3
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x0c366c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r14 + 12], 4
	QUAD $0x0c166c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rdx + 12], 5
	QUAD $0x0c3e6c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rdi + 12], 6
	QUAD $0x0c066c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r8 + 12], 7
	QUAD $0x0c0e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r9 + 12], 8
	QUAD $0x0c166c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r10 + 12], 9
	QUAD $0x0c3e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r15 + 12], 10
	QUAD $0x0c266c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r12 + 12], 11
	QUAD $0x0c2e6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r13 + 12], 12
	QUAD $0x0c1e6c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rbx + 12], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0c1e6c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + rbx + 12], 14
	QUAD $0x0c1e6c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r11 + 12], 15
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0d0664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 13], 1
	QUAD $0x0d0e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rcx + 13], 2
	LONG $0x244c8b48; BYTE $0x68               // mov    rcx, qword [rsp + 104]
	QUAD $0x0d0e64203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rcx + 13], 3
	QUAD $0x0d3664203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rsi + r14 + 13], 4
	QUAD $0x0d1664203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rdx + 13], 5
	QUAD $0x0d3e64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rdi + 13], 6
	QUAD $0x0d0664203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r8 + 13], 7
	QUAD $0x0d0e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r9 + 13], 8
	QUAD $0x0d1664203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r10 + 13], 9
	QUAD $0x0d3e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r15 + 13], 10
	QUAD $0x0d2664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r12 + 13], 11
	QUAD $0x0d2e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r13 + 13], 12
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0d3e64203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rdi + 13], 13
	QUAD $0x0d1e64203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rbx + 13], 14
	QUAD $0x0d1e64203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r11 + 13], 15
	LONG $0x640f4566; BYTE $0xd9               // pcmpgtb    xmm11, xmm9
	QUAD $0x0000c09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0x640f4566; BYTE $0xe9               // pcmpgtb    xmm13, xmm9
	QUAD $0x0000d0addb0f4466; BYTE $0x00       // pand    xmm13, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	LONG $0x3e5cb60f; BYTE $0x19               // movzx    ebx, byte [rsi + rdi + 25]
	LONG $0xcb6e0f66                           // movd    xmm1, ebx
	LONG $0x640f4566; BYTE $0xe1               // pcmpgtb    xmm12, xmm9
	QUAD $0x0000e0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x3e5cb60f; BYTE $0x1a               // movzx    ebx, byte [rsi + rdi + 26]
	LONG $0x6e0f4466; BYTE $0xdb               // movd    xmm11, ebx
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	QUAD $0x010e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 14], 1
	QUAD $0x000000d0249c8b48                   // mov    rbx, qword [rsp + 208]
	QUAD $0x020e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 14], 2
	WORD $0x8949; BYTE $0xcb                   // mov    r11, rcx
	QUAD $0x030e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 14], 3
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x040e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 14], 4
	WORD $0x8948; BYTE $0xd1                   // mov    rcx, rdx
	QUAD $0x050e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 5
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x060e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 6
	QUAD $0x0e0664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r8 + 14], 7
	QUAD $0x0e0e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r9 + 14], 8
	QUAD $0x0e1664203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r10 + 14], 9
	QUAD $0x0e3e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r15 + 14], 10
	QUAD $0x0e2664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r12 + 14], 11
	QUAD $0x0e2e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r13 + 14], 12
	LONG $0x24748b4c; BYTE $0x10               // mov    r14, qword [rsp + 16]
	QUAD $0x0e3664203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r14 + 14], 13
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0e0e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 14
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0f0e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 15
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x0f3e74203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rdi + 15], 1
	QUAD $0x0f1e74203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rsi + rbx + 15], 2
	QUAD $0x0f1e74203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r11 + 15], 3
	QUAD $0x0f0674203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rax + 15], 4
	QUAD $0x0f0e74203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rsi + rcx + 15], 5
	QUAD $0x0f1674203a0f4466; BYTE $0x06       // pinsrb    xmm14, byte [rsi + rdx + 15], 6
	QUAD $0x0f0674203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rsi + r8 + 15], 7
	QUAD $0x0f0e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r9 + 15], 8
	QUAD $0x0f1674203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r10 + 15], 9
	QUAD $0x0f3e74203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + r15 + 15], 10
	QUAD $0x0f2674203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r12 + 15], 11
	QUAD $0x0f2e74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r13 + 15], 12
	QUAD $0x0f3674203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + r14 + 15], 13
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0f3e74203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + rdi + 15], 14
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	QUAD $0x0f3674203a0f4666; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + r14 + 15], 15
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x103e7c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rdi + 16], 1
	QUAD $0x101e7c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rbx + 16], 2
	QUAD $0x101e7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r11 + 16], 3
	QUAD $0x10067c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rax + 16], 4
	QUAD $0x100e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rcx + 16], 5
	QUAD $0x10167c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rdx + 16], 6
	QUAD $0x10067c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rsi + r8 + 16], 7
	QUAD $0x100e7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r9 + 16], 8
	QUAD $0x10167c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r10 + 16], 9
	QUAD $0x103e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r15 + 16], 10
	QUAD $0x10267c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r12 + 16], 11
	QUAD $0x102e7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r13 + 16], 12
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x103e7c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdi + 16], 13
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	QUAD $0x10367c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r14 + 16], 14
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x01113e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 17], 1
	QUAD $0x02111e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 17], 2
	QUAD $0x111e44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r11 + 17], 3
	QUAD $0x04110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 4
	QUAD $0x05110e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 17], 5
	QUAD $0x06111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 6
	QUAD $0x110644203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r8 + 17], 7
	QUAD $0x110e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r9 + 17], 8
	QUAD $0x111644203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r10 + 17], 9
	QUAD $0x113e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r15 + 17], 10
	QUAD $0x112644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r12 + 17], 11
	QUAD $0x112e44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r13 + 17], 12
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0d113e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 17], 13
	QUAD $0x113644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r14 + 17], 14
	QUAD $0x00b024a4eb0f4466; WORD $0x0000     // por    xmm12, oword [rsp + 176]
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	LONG $0x3e5cb60f; BYTE $0x1b               // movzx    ebx, byte [rsi + rdi + 27]
	LONG $0x6e0f4466; BYTE $0xcb               // movd    xmm9, ebx
	QUAD $0x009024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 144]
	LONG $0x640f4166; BYTE $0xe5               // pcmpgtb    xmm4, xmm13
	QUAD $0x000000f0a5db0f66                   // pand    xmm4, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0x640f4566; BYTE $0xf5               // pcmpgtb    xmm14, xmm13
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x3e5cb60f; BYTE $0x1c               // movzx    ebx, byte [rsi + rdi + 28]
	LONG $0xe36e0f66                           // movd    xmm4, ebx
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	QUAD $0x113644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r14 + 17], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	LONG $0x640f4166; BYTE $0xc5               // pcmpgtb    xmm0, xmm13
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xdb0f4566; BYTE $0xec               // pand    xmm13, xmm12
	LONG $0xf80f4466; BYTE $0xe8               // psubb    xmm13, xmm0
	QUAD $0x00b024ac7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 176], xmm13
	LONG $0x3e5cb60f; BYTE $0x1d               // movzx    ebx, byte [rsi + rdi + 29]
	LONG $0x6e0f4466; BYTE $0xeb               // movd    xmm13, ebx
	QUAD $0x10367c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r14 + 16], 15
	QUAD $0x00009024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 144]
	LONG $0x640f4466; BYTE $0xf8               // pcmpgtb    xmm15, xmm0
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x01123e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 18], 1
	QUAD $0x000000d0249c8b48                   // mov    rbx, qword [rsp + 208]
	QUAD $0x02121e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 18], 2
	QUAD $0x121e6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r11 + 18], 3
	QUAD $0x0412066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 18], 4
	QUAD $0x05120e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 18], 5
	QUAD $0x0612166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 18], 6
	QUAD $0x12066c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r8 + 18], 7
	QUAD $0x120e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r9 + 18], 8
	QUAD $0x12166c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r10 + 18], 9
	QUAD $0x123e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r15 + 18], 10
	QUAD $0x12266c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r12 + 18], 11
	QUAD $0x122e6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r13 + 18], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d121e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 18], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0e121e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 18], 14
	LONG $0xdb0f4566; BYTE $0xfc               // pand    xmm15, xmm12
	QUAD $0x12366c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r14 + 18], 15
	LONG $0xe8640f66                           // pcmpgtb    xmm5, xmm0
	QUAD $0x000000b0addb0f66                   // pand    xmm5, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xeb0f4166; BYTE $0xef               // por    xmm5, xmm15
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	LONG $0x065cb60f; BYTE $0x1e               // movzx    ebx, byte [rsi + rax + 30]
	LONG $0x6e0f4466; BYTE $0xe3               // movd    xmm12, ebx
	WORD $0x8948; BYTE $0xfb                   // mov    rbx, rdi
	QUAD $0x01133e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 19], 1
	QUAD $0x01143e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 20], 1
	QUAD $0x01153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 1
	QUAD $0x01163e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 22], 1
	QUAD $0x173e44203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rdi + 23], 1
	QUAD $0x183e54203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rdi + 24], 1
	QUAD $0x01193e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 25], 1
	QUAD $0x1a3e5c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rdi + 26], 1
	QUAD $0x1b3e4c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rdi + 27], 1
	QUAD $0x011c3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 28], 1
	QUAD $0x1d3e6c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rdi + 29], 1
	QUAD $0x1e3e64203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rdi + 30], 1
	LONG $0x067cb60f; BYTE $0x1f               // movzx    edi, byte [rsi + rax + 31]
	LONG $0xc76e0f66                           // movd    xmm0, edi
	QUAD $0x011f1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 31], 1
	QUAD $0x000000d024bc8b48                   // mov    rdi, qword [rsp + 208]
	QUAD $0x02133e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 19], 2
	QUAD $0x02143e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 20], 2
	QUAD $0x02153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 2
	QUAD $0x02163e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 22], 2
	QUAD $0x173e44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rdi + 23], 2
	QUAD $0x183e54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdi + 24], 2
	QUAD $0x02193e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 25], 2
	QUAD $0x1a3e5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rdi + 26], 2
	QUAD $0x1b3e4c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rdi + 27], 2
	QUAD $0x021c3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 28], 2
	QUAD $0x1d3e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rdi + 29], 2
	QUAD $0x1e3e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdi + 30], 2
	QUAD $0x021f3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 31], 2
	QUAD $0x131e7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r11 + 19], 3
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0413067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 19], 4
	QUAD $0x05130e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 19], 5
	QUAD $0x0613167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 19], 6
	QUAD $0x13067c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rsi + r8 + 19], 7
	QUAD $0x130e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r9 + 19], 8
	QUAD $0x13167c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r10 + 19], 9
	QUAD $0x133e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r15 + 19], 10
	QUAD $0x13267c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r12 + 19], 11
	QUAD $0x132e7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r13 + 19], 12
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0d133e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 19], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x0e131e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 19], 14
	QUAD $0x13367c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r14 + 19], 15
	QUAD $0x141e74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r11 + 20], 3
	QUAD $0x04140674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 20], 4
	QUAD $0x05140e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 20], 5
	QUAD $0x06141674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 20], 6
	QUAD $0x140674203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r8 + 20], 7
	QUAD $0x140e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r9 + 20], 8
	QUAD $0x141674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r10 + 20], 9
	QUAD $0x143e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r15 + 20], 10
	QUAD $0x142674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r12 + 20], 11
	QUAD $0x142e74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r13 + 20], 12
	QUAD $0x0d143e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 20], 13
	QUAD $0x0e141e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 20], 14
	QUAD $0x0000b024aceb0f66; BYTE $0x00       // por    xmm5, oword [rsp + 176]
	QUAD $0x143674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r14 + 20], 15
	QUAD $0x009024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 144]
	LONG $0x640f4166; BYTE $0xff               // pcmpgtb    xmm7, xmm15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0x640f4166; BYTE $0xf7               // pcmpgtb    xmm6, xmm15
	QUAD $0x000000d0b5db0f66                   // pand    xmm6, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0x151e54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r11 + 21], 3
	QUAD $0x04150654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 21], 4
	QUAD $0x05150e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 21], 5
	QUAD $0x06151654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 21], 6
	QUAD $0x150654203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rsi + r8 + 21], 7
	QUAD $0x150e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r9 + 21], 8
	QUAD $0x151654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r10 + 21], 9
	QUAD $0x153e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r15 + 21], 10
	QUAD $0x152654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r12 + 21], 11
	QUAD $0x152e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r13 + 21], 12
	QUAD $0x0d153e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 21], 13
	QUAD $0x0e151e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 21], 14
	QUAD $0x153654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r14 + 21], 15
	LONG $0x640f4166; BYTE $0xd7               // pcmpgtb    xmm2, xmm15
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xd7db0f66                           // pand    xmm2, xmm7
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	LONG $0xd5eb0f66                           // por    xmm2, xmm5
	QUAD $0x161e5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r11 + 22], 3
	QUAD $0x0416065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 22], 4
	QUAD $0x05160e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 22], 5
	QUAD $0x0616165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 22], 6
	QUAD $0x16065c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r8 + 22], 7
	QUAD $0x160e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r9 + 22], 8
	QUAD $0x16165c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r10 + 22], 9
	QUAD $0x163e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r15 + 22], 10
	QUAD $0x16265c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r12 + 22], 11
	QUAD $0x162e5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r13 + 22], 12
	QUAD $0x0d163e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 22], 13
	QUAD $0x0e161e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 22], 14
	QUAD $0x16365c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r14 + 22], 15
	QUAD $0x171e44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r11 + 23], 3
	QUAD $0x170644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rax + 23], 4
	QUAD $0x170e44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rcx + 23], 5
	QUAD $0x171644203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rdx + 23], 6
	QUAD $0x170644203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r8 + 23], 7
	QUAD $0x170e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r9 + 23], 8
	QUAD $0x171644203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r10 + 23], 9
	QUAD $0x173e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r15 + 23], 10
	QUAD $0x172644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r12 + 23], 11
	QUAD $0x172e44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r13 + 23], 12
	QUAD $0x173e44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rdi + 23], 13
	QUAD $0x171e44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rbx + 23], 14
	QUAD $0x173644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r14 + 23], 15
	LONG $0x640f4166; BYTE $0xdf               // pcmpgtb    xmm3, xmm15
	QUAD $0x000000f0ad6f0f66                   // movdqa    xmm5, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0xdddb0f66                           // pand    xmm3, xmm5
	LONG $0x640f4566; BYTE $0xc7               // pcmpgtb    xmm8, xmm15
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	QUAD $0x191e4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rsi + r11 + 25], 3
	QUAD $0x0419064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 25], 4
	QUAD $0x05190e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 25], 5
	QUAD $0x0619164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 25], 6
	QUAD $0x19064c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rsi + r8 + 25], 7
	QUAD $0x190e4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r9 + 25], 8
	QUAD $0x19164c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r10 + 25], 9
	QUAD $0x193e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r15 + 25], 10
	QUAD $0x19264c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r12 + 25], 11
	QUAD $0x192e4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r13 + 25], 12
	QUAD $0x0d193e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 25], 13
	QUAD $0x0e191e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 25], 14
	QUAD $0x19364c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r14 + 25], 15
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x640f4166; BYTE $0xcf               // pcmpgtb    xmm1, xmm15
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	QUAD $0x000000a09d6f0f66                   // movdqa    xmm3, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd1f80f66                           // psubb    xmm2, xmm1
	QUAD $0x181e54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r11 + 24], 3
	QUAD $0x180654203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rax + 24], 4
	QUAD $0x180e54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rcx + 24], 5
	QUAD $0x181654203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rdx + 24], 6
	QUAD $0x180654203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rsi + r8 + 24], 7
	QUAD $0x180e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r9 + 24], 8
	QUAD $0x181654203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r10 + 24], 9
	QUAD $0x183e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r15 + 24], 10
	QUAD $0x182654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r12 + 24], 11
	QUAD $0x182e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r13 + 24], 12
	QUAD $0x183e54203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rdi + 24], 13
	QUAD $0x181e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rbx + 24], 14
	QUAD $0x183654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r14 + 24], 15
	LONG $0x640f4566; BYTE $0xd7               // pcmpgtb    xmm10, xmm15
	LONG $0xdb0f4466; BYTE $0xd3               // pand    xmm10, xmm3
	QUAD $0x1a1e5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r11 + 26], 3
	QUAD $0x1a065c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rax + 26], 4
	QUAD $0x1a0e5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rsi + rcx + 26], 5
	QUAD $0x1a165c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rdx + 26], 6
	QUAD $0x1a065c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r8 + 26], 7
	QUAD $0x1a0e5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r9 + 26], 8
	QUAD $0x1a165c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r10 + 26], 9
	QUAD $0x1a3e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r15 + 26], 10
	QUAD $0x1a265c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r12 + 26], 11
	QUAD $0x1a2e5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r13 + 26], 12
	QUAD $0x1a3e5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdi + 26], 13
	QUAD $0x1a1e5c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rbx + 26], 14
	QUAD $0x1a365c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r14 + 26], 15
	LONG $0x640f4566; BYTE $0xdf               // pcmpgtb    xmm11, xmm15
	QUAD $0x0000b09ddb0f4466; BYTE $0x00       // pand    xmm11, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0xeb0f4466; BYTE $0xda               // por    xmm11, xmm2
	QUAD $0x1b1e4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r11 + 27], 3
	QUAD $0x1b064c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rax + 27], 4
	QUAD $0x1b0e4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rsi + rcx + 27], 5
	QUAD $0x1b164c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdx + 27], 6
	QUAD $0x1b064c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rsi + r8 + 27], 7
	QUAD $0x1b0e4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r9 + 27], 8
	QUAD $0x1b164c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r10 + 27], 9
	QUAD $0x1b3e4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r15 + 27], 10
	QUAD $0x1b264c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r12 + 27], 11
	QUAD $0x1b2e4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r13 + 27], 12
	QUAD $0x1b3e4c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + rdi + 27], 13
	QUAD $0x1b1e4c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + rbx + 27], 14
	QUAD $0x1b364c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r14 + 27], 15
	QUAD $0x1c1e64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r11 + 28], 3
	QUAD $0x041c0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 28], 4
	QUAD $0x051c0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 28], 5
	QUAD $0x061c1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 28], 6
	QUAD $0x1c0664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r8 + 28], 7
	QUAD $0x1c0e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r9 + 28], 8
	QUAD $0x1c1664203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r10 + 28], 9
	QUAD $0x1c3e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r15 + 28], 10
	QUAD $0x1c2664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r12 + 28], 11
	QUAD $0x1c2e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r13 + 28], 12
	QUAD $0x0d1c3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 28], 13
	QUAD $0x0e1c1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 28], 14
	QUAD $0x1c3664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r14 + 28], 15
	QUAD $0x1d1e6c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r11 + 29], 3
	QUAD $0x1d066c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rsi + rax + 29], 4
	QUAD $0x1d0e6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rcx + 29], 5
	QUAD $0x1d166c203a0f4466; BYTE $0x06       // pinsrb    xmm13, byte [rsi + rdx + 29], 6
	QUAD $0x1d066c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r8 + 29], 7
	QUAD $0x1d0e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r9 + 29], 8
	QUAD $0x1d166c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r10 + 29], 9
	QUAD $0x1d3e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r15 + 29], 10
	QUAD $0x1d266c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r12 + 29], 11
	QUAD $0x1d2e6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r13 + 29], 12
	QUAD $0x1d3e6c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rdi + 29], 13
	QUAD $0x1d1e6c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + rbx + 29], 14
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0x640f4566; BYTE $0xcf               // pcmpgtb    xmm9, xmm15
	QUAD $0x0000c08ddb0f4466; BYTE $0x00       // pand    xmm9, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0x640f4166; BYTE $0xe7               // pcmpgtb    xmm4, xmm15
	QUAD $0x000000d0a5db0f66                   // pand    xmm4, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	QUAD $0x1d366c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r14 + 29], 15
	LONG $0x640f4566; BYTE $0xef               // pcmpgtb    xmm13, xmm15
	LONG $0xdb0f4466; BYTE $0xef               // pand    xmm13, xmm7
	LONG $0xeb0f4466; BYTE $0xec               // por    xmm13, xmm4
	QUAD $0x1e1e64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r11 + 30], 3
	QUAD $0x1f1e44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r11 + 31], 3
	QUAD $0x1e0664203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rax + 30], 4
	QUAD $0x041f0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 31], 4
	QUAD $0x1e0e64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rcx + 30], 5
	QUAD $0x051f0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 31], 5
	QUAD $0x1e1664203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rsi + rdx + 30], 6
	QUAD $0x061f1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 31], 6
	QUAD $0x1e0664203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r8 + 30], 7
	QUAD $0x1f0644203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r8 + 31], 7
	QUAD $0x1e0e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r9 + 30], 8
	QUAD $0x1f0e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r9 + 31], 8
	QUAD $0x1e1664203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r10 + 30], 9
	QUAD $0x1f1644203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r10 + 31], 9
	QUAD $0x1e3e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r15 + 30], 10
	QUAD $0x1f3e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r15 + 31], 10
	QUAD $0x1e2664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r12 + 30], 11
	QUAD $0x1f2644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r12 + 31], 11
	QUAD $0x1e2e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r13 + 30], 12
	QUAD $0x1f2e44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r13 + 31], 12
	QUAD $0x1e3e64203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rdi + 30], 13
	QUAD $0x0d1f3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 31], 13
	QUAD $0x1e1e64203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rbx + 30], 14
	QUAD $0x0e1f1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 31], 14
	QUAD $0x1e3664203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r14 + 30], 15
	QUAD $0x1f3644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r14 + 31], 15
	LONG $0xeb0f4566; BYTE $0xeb               // por    xmm13, xmm11
	LONG $0x640f4566; BYTE $0xe7               // pcmpgtb    xmm12, xmm15
	LONG $0xdb0f4466; BYTE $0xe5               // pand    xmm12, xmm5
	LONG $0x640f4166; BYTE $0xc7               // pcmpgtb    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xc6db0f66                           // pand    xmm0, xmm6
	LONG $0xeb0f4166; BYTE $0xc4               // por    xmm0, xmm12
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000a024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 160]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd9610f66                           // punpcklwd    xmm3, xmm1
	LONG $0xd1690f66                           // punpckhwd    xmm2, xmm1
	LONG $0x680f4466; BYTE $0xc0               // punpckhbw    xmm8, xmm0
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x000000f0248c8b48                   // mov    rcx, qword [rsp + 240]
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	LONG $0x647f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm4
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm2
	LONG $0x1c7f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB7_85
	QUAD $0x0000012024948b4c                   // mov    r10, qword [rsp + 288]
	QUAD $0x000000e824943b4c                   // cmp    r10, qword [rsp + 232]
	LONG $0x24648a44; BYTE $0x08               // mov    r12b, byte [rsp + 8]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	JNE  LBB7_87
	JMP  LBB7_90

LBB7_66:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000014024848948             // mov    qword [rsp + 320], rax
	QUAD $0x000000e824bc894c             // mov    qword [rsp + 232], r15
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x78         // mov    qword [rsp + 120], rax
	LONG $0xc2b60f41                     // movzx    eax, r10b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000120248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 288], xmm1
	WORD $0xc031                         // xor    eax, eax

LBB7_67:
	QUAD $0x000000b024848948                   // mov    qword [rsp + 176], rax
	QUAD $0x000000b024848b48                   // mov    rax, qword [rsp + 176]
	LONG $0x05e0c148                           // shl    rax, 5
	LONG $0x24448948; BYTE $0x20               // mov    qword [rsp + 32], rax
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	LONG $0x24448948; BYTE $0x38               // mov    qword [rsp + 56], rax
	LONG $0x060cb60f                           // movzx    ecx, byte [rsi + rax]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x064cb60f; BYTE $0x01               // movzx    ecx, byte [rsi + rax + 1]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x064cb60f; BYTE $0x02               // movzx    ecx, byte [rsi + rax + 2]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x064cb60f; BYTE $0x03               // movzx    ecx, byte [rsi + rax + 3]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x064cb60f; BYTE $0x04               // movzx    ecx, byte [rsi + rax + 4]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x064cb60f; BYTE $0x05               // movzx    ecx, byte [rsi + rax + 5]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x064cb60f; BYTE $0x06               // movzx    ecx, byte [rsi + rax + 6]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x064cb60f; BYTE $0x07               // movzx    ecx, byte [rsi + rax + 7]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	QUAD $0x0000c0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm1
	LONG $0x064cb60f; BYTE $0x08               // movzx    ecx, byte [rsi + rax + 8]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x064cb60f; BYTE $0x09               // movzx    ecx, byte [rsi + rax + 9]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	QUAD $0x0000d0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm1
	LONG $0x064cb60f; BYTE $0x0a               // movzx    ecx, byte [rsi + rax + 10]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x064cb60f; BYTE $0x0b               // movzx    ecx, byte [rsi + rax + 11]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x064cb60f; BYTE $0x0c               // movzx    ecx, byte [rsi + rax + 12]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	QUAD $0x000130248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm1
	LONG $0x064cb60f; BYTE $0x10               // movzx    ecx, byte [rsi + rax + 16]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	QUAD $0x000000a024848948                   // mov    qword [rsp + 160], rax
	LONG $0x064cb60f; BYTE $0x18               // movzx    ecx, byte [rsi + rax + 24]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	LONG $0x20cc8349                           // or    r12, 32
	LONG $0x2464894c; BYTE $0x60               // mov    qword [rsp + 96], r12
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x244c8948; BYTE $0x20               // mov    qword [rsp + 32], rcx
	LONG $0x60ce8349                           // or    r14, 96
	LONG $0x80ca8148; WORD $0x0000; BYTE $0x00 // or    rdx, 128
	LONG $0xa0cf8148; WORD $0x0000; BYTE $0x00 // or    rdi, 160
	LONG $0xc0cd8149; WORD $0x0000; BYTE $0x00 // or    r13, 192
	LONG $0x246c894c; BYTE $0x68               // mov    qword [rsp + 104], r13
	LONG $0xe0c98149; WORD $0x0000; BYTE $0x00 // or    r9, 224
	LONG $0x00ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 256
	LONG $0x2454894c; BYTE $0x70               // mov    qword [rsp + 112], r10
	LONG $0x20cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 288
	LONG $0x40cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 320
	LONG $0x60c88149; WORD $0x0001; BYTE $0x00 // or    r8, 352
	LONG $0x2444894c; BYTE $0x28               // mov    qword [rsp + 40], r8
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	LONG $0x80c88149; WORD $0x0001; BYTE $0x00 // or    r8, 384
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	LONG $0xa0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 416
	LONG $0x245c8948; BYTE $0x10               // mov    qword [rsp + 16], rbx
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x245c8948; BYTE $0x18               // mov    qword [rsp + 24], rbx
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	LONG $0x24448948; BYTE $0x48               // mov    qword [rsp + 72], rax
	QUAD $0x012614203a0f4666                   // pinsrb    xmm10, byte [rsi + r12], 1
	QUAD $0x020e14203a0f4466                   // pinsrb    xmm10, byte [rsi + rcx], 2
	QUAD $0x033614203a0f4666                   // pinsrb    xmm10, byte [rsi + r14], 3
	LONG $0x2474894c; BYTE $0x40               // mov    qword [rsp + 64], r14
	QUAD $0x041614203a0f4466                   // pinsrb    xmm10, byte [rsi + rdx], 4
	QUAD $0x053e14203a0f4466                   // pinsrb    xmm10, byte [rsi + rdi], 5
	QUAD $0x062e14203a0f4666                   // pinsrb    xmm10, byte [rsi + r13], 6
	QUAD $0x070e14203a0f4666                   // pinsrb    xmm10, byte [rsi + r9], 7
	QUAD $0x081614203a0f4666                   // pinsrb    xmm10, byte [rsi + r10], 8
	QUAD $0x091e14203a0f4666                   // pinsrb    xmm10, byte [rsi + r11], 9
	QUAD $0x0a3e14203a0f4666                   // pinsrb    xmm10, byte [rsi + r15], 10
	LONG $0x24648b4c; BYTE $0x28               // mov    r12, qword [rsp + 40]
	QUAD $0x0b2614203a0f4666                   // pinsrb    xmm10, byte [rsi + r12], 11
	QUAD $0x0c0614203a0f4666                   // pinsrb    xmm10, byte [rsi + r8], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d1e14203a0f4466                   // pinsrb    xmm10, byte [rsi + rbx], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e0614203a0f4466                   // pinsrb    xmm10, byte [rsi + rax], 14
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x0f1614203a0f4666                   // pinsrb    xmm10, byte [rsi + r10], 15
	LONG $0x6f0f4566; BYTE $0xc2               // movdqa    xmm8, xmm10
	QUAD $0x012024a46f0f4466; WORD $0x0000     // movdqa    xmm12, oword [rsp + 288]
	LONG $0xda0f4566; BYTE $0xc4               // pminub    xmm8, xmm12
	LONG $0x740f4566; BYTE $0xc2               // pcmpeqb    xmm8, xmm10
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x01010664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 1], 1
	QUAD $0x02010e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 1], 2
	QUAD $0x013664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r14 + 1], 3
	QUAD $0x04011664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 1], 4
	QUAD $0x05013e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 1], 5
	QUAD $0x012e64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r13 + 1], 6
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	QUAD $0x010e64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r9 + 1], 7
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x08011e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 1], 8
	QUAD $0x011e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r11 + 1], 9
	QUAD $0x013e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r15 + 1], 10
	QUAD $0x012664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r12 + 1], 11
	QUAD $0x010664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r8 + 1], 12
	LONG $0x244c8b4c; BYTE $0x10               // mov    r9, qword [rsp + 16]
	QUAD $0x010e64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r9 + 1], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e010664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 1], 14
	QUAD $0x011664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r10 + 1], 15
	LONG $0x244c8b4c; BYTE $0x60               // mov    r9, qword [rsp + 96]
	QUAD $0x020e74203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r9 + 2], 1
	QUAD $0x02020e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 2], 2
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x03020674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 2], 3
	QUAD $0x04021674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 2], 4
	QUAD $0x05023e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 2], 5
	QUAD $0x022e74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r13 + 2], 6
	QUAD $0x023674203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r14 + 2], 7
	QUAD $0x08021e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 2], 8
	QUAD $0x021e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r11 + 2], 9
	QUAD $0x023e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r15 + 2], 10
	QUAD $0x022674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r12 + 2], 11
	QUAD $0x020674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r8 + 2], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d020674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 2], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e020674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 2], 14
	QUAD $0x021674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r10 + 2], 15
	QUAD $0x080e74203a0f4666; BYTE $0x01       // pinsrb    xmm14, byte [rsi + r9 + 8], 1
	QUAD $0x080e74203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rsi + rcx + 8], 2
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x080674203a0f4466; BYTE $0x03       // pinsrb    xmm14, byte [rsi + rax + 8], 3
	QUAD $0x081674203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rdx + 8], 4
	QUAD $0x083e74203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rsi + rdi + 8], 5
	QUAD $0x082e74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r13 + 8], 6
	QUAD $0x083674203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rsi + r14 + 8], 7
	QUAD $0x081e74203a0f4466; BYTE $0x08       // pinsrb    xmm14, byte [rsi + rbx + 8], 8
	QUAD $0x081e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r11 + 8], 9
	QUAD $0x083e74203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + r15 + 8], 10
	QUAD $0x082674203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r12 + 8], 11
	QUAD $0x080674203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r8 + 8], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x080674203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + rax + 8], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x080674203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + rax + 8], 14
	QUAD $0x081674203a0f4666; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + r10 + 8], 15
	LONG $0x6f0f4566; BYTE $0xd6               // movdqa    xmm10, xmm14
	LONG $0xda0f4566; BYTE $0xd4               // pminub    xmm10, xmm12
	LONG $0x740f4566; BYTE $0xd6               // pcmpeqb    xmm10, xmm14
	QUAD $0x100e6c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r9 + 16], 1
	QUAD $0x100e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rcx + 16], 2
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x10066c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rsi + rax + 16], 3
	QUAD $0x10166c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rsi + rdx + 16], 4
	WORD $0x8948; BYTE $0xd0                   // mov    rax, rdx
	LONG $0x24548948; BYTE $0x58               // mov    qword [rsp + 88], rdx
	QUAD $0x103e6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rdi + 16], 5
	LONG $0x247c8948; BYTE $0x50               // mov    qword [rsp + 80], rdi
	QUAD $0x102e6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r13 + 16], 6
	QUAD $0x10366c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r14 + 16], 7
	QUAD $0x101e6c203a0f4466; BYTE $0x08       // pinsrb    xmm13, byte [rsi + rbx + 16], 8
	WORD $0x8949; BYTE $0xdd                   // mov    r13, rbx
	QUAD $0x101e6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r11 + 16], 9
	QUAD $0x00000080249c894c                   // mov    qword [rsp + 128], r11
	QUAD $0x103e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r15 + 16], 10
	LONG $0x247c894c; BYTE $0x30               // mov    qword [rsp + 48], r15
	QUAD $0x10266c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r12 + 16], 11
	QUAD $0x10066c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r8 + 16], 12
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x2444894c; BYTE $0x38               // mov    qword [rsp + 56], r8
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x10166c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rdx + 16], 13
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x10166c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r10 + 16], 14
	LONG $0x24448b4c; BYTE $0x48               // mov    r8, qword [rsp + 72]
	QUAD $0x10066c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + r8 + 16], 15
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0xda0f4166; BYTE $0xdc               // pminub    xmm3, xmm12
	LONG $0x740f4166; BYTE $0xdd               // pcmpeqb    xmm3, xmm13
	QUAD $0x000110249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm3
	QUAD $0x180e7c203a0f4666; BYTE $0x01       // pinsrb    xmm15, byte [rsi + r9 + 24], 1
	QUAD $0x180e7c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rcx + 24], 2
	LONG $0x244c8b4c; BYTE $0x40               // mov    r9, qword [rsp + 64]
	QUAD $0x180e7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r9 + 24], 3
	QUAD $0x18067c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rax + 24], 4
	QUAD $0x183e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rdi + 24], 5
	LONG $0x24448b48; BYTE $0x68               // mov    rax, qword [rsp + 104]
	QUAD $0x18067c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rax + 24], 6
	QUAD $0x18367c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rsi + r14 + 24], 7
	QUAD $0x182e7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r13 + 24], 8
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x181e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r11 + 24], 9
	QUAD $0x183e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r15 + 24], 10
	QUAD $0x18267c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r12 + 24], 11
	WORD $0x894c; BYTE $0xe1                   // mov    rcx, r12
	QUAD $0x181e7c203a0f4466; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + rbx + 24], 12
	QUAD $0x18167c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdx + 24], 13
	QUAD $0x18167c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r10 + 24], 14
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x18067c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r8 + 24], 15
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xda0f4166; BYTE $0xdc               // pminub    xmm3, xmm12
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x0000f0249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm3
	LONG $0x6f0f4466; BYTE $0xf4               // movdqa    xmm14, xmm4
	LONG $0xda0f4566; BYTE $0xf4               // pminub    xmm14, xmm12
	LONG $0x740f4466; BYTE $0xf4               // pcmpeqb    xmm14, xmm4
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	QUAD $0x000000a0a56f0f66                   // movdqa    xmm4, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xdf0f4466; BYTE $0xec               // pandn    xmm13, xmm4
	LONG $0xfc0f4566; BYTE $0xee               // paddb    xmm13, xmm14
	LONG $0x6f0f4466; BYTE $0xf6               // movdqa    xmm14, xmm6
	LONG $0xda0f4566; BYTE $0xf4               // pminub    xmm14, xmm12
	LONG $0x740f4466; BYTE $0xf6               // pcmpeqb    xmm14, xmm6
	QUAD $0x000000a024948b48                   // mov    rdx, qword [rsp + 160]
	LONG $0x1654b60f; BYTE $0x0d               // movzx    edx, byte [rsi + rdx + 13]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x01033e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 3], 1
	LONG $0x245c8b4c; BYTE $0x20               // mov    r11, qword [rsp + 32]
	QUAD $0x031e6c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r11 + 3], 2
	QUAD $0x030e6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r9 + 3], 3
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x04031e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 3], 4
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x0503166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 3], 5
	LONG $0x24548b48; BYTE $0x68               // mov    rdx, qword [rsp + 104]
	QUAD $0x0603166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 3], 6
	QUAD $0x0000009024b4894c                   // mov    qword [rsp + 144], r14
	QUAD $0x03366c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r14 + 3], 7
	QUAD $0x0803066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 3], 8
	QUAD $0x0000008024bc8b4c                   // mov    r15, qword [rsp + 128]
	QUAD $0x033e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r15 + 3], 9
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x03266c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r12 + 3], 10
	QUAD $0x0b030e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 3], 11
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x0c03066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 3], 12
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x03166c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r10 + 3], 13
	WORD $0x894d; BYTE $0xee                   // mov    r14, r13
	QUAD $0x032e6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r13 + 3], 14
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x032e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r13 + 3], 15
	QUAD $0x043e4c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rdi + 4], 1
	QUAD $0x041e4c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rsi + r11 + 4], 2
	QUAD $0x040e4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r9 + 4], 3
	QUAD $0x041e4c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rbx + 4], 4
	LONG $0x24448b4c; BYTE $0x50               // mov    r8, qword [rsp + 80]
	QUAD $0x04064c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rsi + r8 + 4], 5
	QUAD $0x04164c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdx + 4], 6
	QUAD $0x00000090248c8b48                   // mov    rcx, qword [rsp + 144]
	QUAD $0x040e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rcx + 4], 7
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x040e4c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rsi + rcx + 4], 8
	QUAD $0x043e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r15 + 4], 9
	QUAD $0x04264c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r12 + 4], 10
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x040e4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + rcx + 4], 11
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	QUAD $0x04064c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + rax + 4], 12
	QUAD $0x04164c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r10 + 4], 13
	QUAD $0x04364c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r14 + 4], 14
	QUAD $0x042e4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r13 + 4], 15
	QUAD $0x01053e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 5], 1
	QUAD $0x051e7c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rsi + r11 + 5], 2
	QUAD $0x050e7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r9 + 5], 3
	QUAD $0x04051e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 5], 4
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0505067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 5], 5
	QUAD $0x0605167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 5], 6
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	QUAD $0x0705067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 5], 7
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x08050e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 5], 8
	QUAD $0x053e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r15 + 5], 9
	QUAD $0x05267c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r12 + 5], 10
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0b05067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 5], 11
	QUAD $0x05067c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r8 + 5], 12
	QUAD $0x05167c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r10 + 5], 13
	QUAD $0x05367c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r14 + 5], 14
	QUAD $0x052e7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r13 + 5], 15
	QUAD $0x01063e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 6], 1
	QUAD $0x061e44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r11 + 6], 2
	QUAD $0x060e44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r9 + 6], 3
	QUAD $0x04061e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 6], 4
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x05063e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 6], 5
	QUAD $0x06061644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 6], 6
	QUAD $0x00000090248c8b4c                   // mov    r9, qword [rsp + 144]
	QUAD $0x060e44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r9 + 6], 7
	QUAD $0x08060e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 6], 8
	QUAD $0x063e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r15 + 6], 9
	QUAD $0x062644203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r12 + 6], 10
	QUAD $0x0b060644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 6], 11
	QUAD $0x060644203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r8 + 6], 12
	QUAD $0x061644203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r10 + 6], 13
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	QUAD $0x063644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r14 + 6], 14
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xdf0f4466; BYTE $0xf4               // pandn    xmm14, xmm4
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	LONG $0x6f0f4466; BYTE $0xfd               // movdqa    xmm15, xmm5
	LONG $0xda0f4566; BYTE $0xfc               // pminub    xmm15, xmm12
	LONG $0x740f4466; BYTE $0xfd               // pcmpeqb    xmm15, xmm5
	QUAD $0x000000a0249c8b48                   // mov    rbx, qword [rsp + 160]
	LONG $0x1e54b60f; BYTE $0x0e               // movzx    edx, byte [rsi + rbx + 14]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	QUAD $0x000000c0a56f0f66                   // movdqa    xmm4, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0xdf0f4466; BYTE $0xfc               // pandn    xmm15, xmm4
	LONG $0xeb0f4566; BYTE $0xfe               // por    xmm15, xmm14
	LONG $0x1e54b60f; BYTE $0x0f               // movzx    edx, byte [rsi + rbx + 15]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0xdb760f66                           // pcmpeqd    xmm3, xmm3
	LONG $0xf80f4466; BYTE $0xeb               // psubb    xmm13, xmm3
	LONG $0x760f4566; BYTE $0xf6               // pcmpeqd    xmm14, xmm14
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x6f0f4166; BYTE $0xe1               // movdqa    xmm4, xmm9
	LONG $0xda0f4166; BYTE $0xe4               // pminub    xmm4, xmm12
	LONG $0x740f4166; BYTE $0xe1               // pcmpeqb    xmm4, xmm9
	LONG $0x6f0f4466; BYTE $0xcf               // movdqa    xmm9, xmm7
	LONG $0xda0f4566; BYTE $0xcc               // pminub    xmm9, xmm12
	LONG $0x740f4466; BYTE $0xcf               // pcmpeqb    xmm9, xmm7
	LONG $0x1e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rbx + 17]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	QUAD $0x062e44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r13 + 6], 15
	QUAD $0x000000d08d6f0f66                   // movdqa    xmm1, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xe1df0f66                           // pandn    xmm4, xmm1
	QUAD $0x000000e08d6f0f66                   // movdqa    xmm1, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xdf0f4466; BYTE $0xc9               // pandn    xmm9, xmm1
	LONG $0xeb0f4466; BYTE $0xcc               // por    xmm9, xmm4
	LONG $0xe06f0f66                           // movdqa    xmm4, xmm0
	LONG $0xda0f4166; BYTE $0xe4               // pminub    xmm4, xmm12
	LONG $0xe0740f66                           // pcmpeqb    xmm4, xmm0
	LONG $0x1e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rbx + 18]
	LONG $0xca6e0f66                           // movd    xmm1, edx
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	LONG $0x24548b4c; BYTE $0x60               // mov    r10, qword [rsp + 96]
	QUAD $0x071644203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rsi + r10 + 7], 1
	LONG $0x245c8b4c; BYTE $0x20               // mov    r11, qword [rsp + 32]
	QUAD $0x071e44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r11 + 7], 2
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x073644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r14 + 7], 3
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x04070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 4
	QUAD $0x05073e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 7], 5
	LONG $0x247c8b4c; BYTE $0x68               // mov    r15, qword [rsp + 104]
	QUAD $0x073e44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r15 + 7], 6
	QUAD $0x070e44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r9 + 7], 7
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x08070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 8
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x09070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 9
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x0a070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 10
	LONG $0x24448b4c; BYTE $0x28               // mov    r8, qword [rsp + 40]
	QUAD $0x070644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r8 + 7], 11
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x0c070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 12
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0d071644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 7], 13
	QUAD $0x072644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r12 + 7], 14
	QUAD $0x072e44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r13 + 7], 15
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0xe3df0f66                           // pandn    xmm4, xmm3
	LONG $0xeb0f4166; BYTE $0xe1               // por    xmm4, xmm9
	LONG $0x6f0f4466; BYTE $0xc8               // movdqa    xmm9, xmm0
	LONG $0xda0f4566; BYTE $0xcc               // pminub    xmm9, xmm12
	LONG $0x740f4466; BYTE $0xc8               // pcmpeqb    xmm9, xmm0
	LONG $0x1e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rbx + 19]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	LONG $0xef0f4566; BYTE $0xce               // pxor    xmm9, xmm14
	LONG $0x710f4166; WORD $0x07f1             // psllw    xmm9, 7
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xdb0f4466; BYTE $0xc8               // pand    xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xcc               // por    xmm9, xmm4
	LONG $0x6f0f4166; BYTE $0xe1               // movdqa    xmm4, xmm9
	LONG $0x1e54b60f; BYTE $0x14               // movzx    edx, byte [rsi + rbx + 20]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x0000d024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 208]
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	QUAD $0x091644203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rsi + r10 + 9], 1
	QUAD $0x091e44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r11 + 9], 2
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	QUAD $0x093644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r14 + 9], 3
	LONG $0x24448b48; BYTE $0x58               // mov    rax, qword [rsp + 88]
	QUAD $0x04090644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 9], 4
	QUAD $0x05093e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 9], 5
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	QUAD $0x093e44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r15 + 9], 6
	QUAD $0x0000009024948b48                   // mov    rdx, qword [rsp + 144]
	QUAD $0x07091644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 9], 7
	LONG $0x24748b4c; BYTE $0x70               // mov    r14, qword [rsp + 112]
	QUAD $0x093644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r14 + 9], 8
	QUAD $0x00000080249c8b4c                   // mov    r11, qword [rsp + 128]
	QUAD $0x091e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r11 + 9], 9
	LONG $0x247c8b4c; BYTE $0x30               // mov    r15, qword [rsp + 48]
	QUAD $0x093e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r15 + 9], 10
	QUAD $0x090644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r8 + 9], 11
	QUAD $0x0c090e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 9], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d091e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 9], 13
	LONG $0x24548b4c; BYTE $0x18               // mov    r10, qword [rsp + 24]
	QUAD $0x091644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r10 + 9], 14
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0f090644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 9], 15
	QUAD $0x0a2654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r12 + 10], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x020a0654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 10], 2
	QUAD $0x0a2e54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r13 + 10], 3
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x0a2654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r12 + 10], 4
	QUAD $0x050a3e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 10], 5
	QUAD $0x0a0e54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r9 + 10], 6
	QUAD $0x070a1654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 10], 7
	WORD $0x8948; BYTE $0xd7                   // mov    rdi, rdx
	QUAD $0x0a3654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r14 + 10], 8
	QUAD $0x0a1e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r11 + 10], 9
	QUAD $0x0a3e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r15 + 10], 10
	QUAD $0x0a0654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r8 + 10], 11
	QUAD $0x0c0a0e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 10], 12
	QUAD $0x0d0a1e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 10], 13
	QUAD $0x0a1654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r10 + 10], 14
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x0a2e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r13 + 10], 15
	LONG $0xeb0f4166; BYTE $0xe7               // por    xmm4, xmm15
	QUAD $0x0000d024a47f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm4
	LONG $0xe06f0f66                           // movdqa    xmm4, xmm0
	LONG $0xda0f4166; BYTE $0xe4               // pminub    xmm4, xmm12
	LONG $0xe0740f66                           // pcmpeqb    xmm4, xmm0
	LONG $0x6f0f4466; BYTE $0xec               // movdqa    xmm13, xmm4
	QUAD $0x0000a0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xdf0f4566; BYTE $0xee               // pandn    xmm13, xmm14
	LONG $0xfc0f4466; BYTE $0xec               // paddb    xmm13, xmm4
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0xda0f4166; BYTE $0xc4               // pminub    xmm0, xmm12
	LONG $0xc2740f66                           // pcmpeqb    xmm0, xmm2
	QUAD $0x000000a024848b48                   // mov    rax, qword [rsp + 160]
	LONG $0x0654b60f; BYTE $0x15               // movzx    edx, byte [rsi + rax + 21]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0xdf0f4566; BYTE $0xd6               // pandn    xmm10, xmm14
	LONG $0x245c8b4c; BYTE $0x60               // mov    r11, qword [rsp + 96]
	QUAD $0x0b1e5c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r11 + 11], 1
	LONG $0x24548b4c; BYTE $0x20               // mov    r10, qword [rsp + 32]
	QUAD $0x0b165c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rsi + r10 + 11], 2
	LONG $0x24748b4c; BYTE $0x40               // mov    r14, qword [rsp + 64]
	QUAD $0x0b365c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r14 + 11], 3
	WORD $0x894d; BYTE $0xe0                   // mov    r8, r12
	QUAD $0x0b265c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rsi + r12 + 11], 4
	LONG $0x244c8b4c; BYTE $0x50               // mov    r9, qword [rsp + 80]
	QUAD $0x0b0e5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rsi + r9 + 11], 5
	LONG $0x244c8b48; BYTE $0x68               // mov    rcx, qword [rsp + 104]
	QUAD $0x0b0e5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rsi + rcx + 11], 6
	QUAD $0x0b3e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rdi + 11], 7
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	LONG $0x247c8b4c; BYTE $0x70               // mov    r15, qword [rsp + 112]
	QUAD $0x0b3e5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r15 + 11], 8
	QUAD $0x00000080249c8b48                   // mov    rbx, qword [rsp + 128]
	QUAD $0x0b1e5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rsi + rbx + 11], 9
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x0b165c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + rdx + 11], 10
	LONG $0x24548b48; BYTE $0x28               // mov    rdx, qword [rsp + 40]
	QUAD $0x0b165c203a0f4466; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + rdx + 11], 11
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	QUAD $0x0b3e5c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + rdi + 11], 12
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0b165c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdx + 11], 13
	LONG $0x24548b48; BYTE $0x18               // mov    rdx, qword [rsp + 24]
	QUAD $0x0b165c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rdx + 11], 14
	QUAD $0x0b2e5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r13 + 11], 15
	QUAD $0x000000b085df0f66                   // pandn    xmm0, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xeb0f4166; BYTE $0xc2               // por    xmm0, xmm10
	LONG $0x6f0f4566; BYTE $0xd3               // movdqa    xmm10, xmm11
	LONG $0xda0f4566; BYTE $0xd4               // pminub    xmm10, xmm12
	LONG $0x740f4566; BYTE $0xd3               // pcmpeqb    xmm10, xmm11
	LONG $0x0654b60f; BYTE $0x16               // movzx    edx, byte [rsi + rax + 22]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	QUAD $0x0000c095df0f4466; BYTE $0x00       // pandn    xmm10, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0xeb0f4466; BYTE $0xd0               // por    xmm10, xmm0
	LONG $0x0654b60f; BYTE $0x17               // movzx    edx, byte [rsi + rax + 23]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	WORD $0x894c; BYTE $0xd8                   // mov    rax, r11
	QUAD $0x00013024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 304]
	QUAD $0x0c1e44203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rsi + r11 + 12], 1
	QUAD $0x0c1644203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r10 + 12], 2
	WORD $0x894d; BYTE $0xd3                   // mov    r11, r10
	WORD $0x894c; BYTE $0xf2                   // mov    rdx, r14
	QUAD $0x0c3644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r14 + 12], 3
	QUAD $0x0c0644203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rsi + r8 + 12], 4
	QUAD $0x0c0e44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r9 + 12], 5
	QUAD $0x060c0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 12], 6
	QUAD $0x0c2644203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r12 + 12], 7
	QUAD $0x0c3e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r15 + 12], 8
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x090c1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 12], 9
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x0a0c1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 12], 10
	LONG $0x24748b4c; BYTE $0x28               // mov    r14, qword [rsp + 40]
	QUAD $0x0c3644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r14 + 12], 11
	QUAD $0x0c0c3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 12], 12
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x0d0c1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 12], 13
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x0c0e44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r9 + 12], 14
	WORD $0x894d; BYTE $0xea                   // mov    r10, r13
	QUAD $0x0c2e44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r13 + 12], 15
	QUAD $0x010d0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 13], 1
	QUAD $0x0d1e74203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r11 + 13], 2
	QUAD $0x030d1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 13], 3
	QUAD $0x0d0674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r8 + 13], 4
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x050d0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 13], 5
	QUAD $0x060d0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 13], 6
	QUAD $0x00000090249c8b4c                   // mov    r11, qword [rsp + 144]
	QUAD $0x0d1e74203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r11 + 13], 7
	QUAD $0x0d3e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r15 + 13], 8
	QUAD $0x0d2674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r12 + 13], 9
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x0a0d1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 13], 10
	QUAD $0x0d3674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r14 + 13], 11
	QUAD $0x0c0d3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 13], 12
	QUAD $0x0d0d1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 13], 13
	QUAD $0x0d0e74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r9 + 13], 14
	QUAD $0x0d2e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r13 + 13], 15
	WORD $0x894d; BYTE $0xe9                   // mov    r9, r13
	QUAD $0x000100adf80f4466; BYTE $0x00       // psubb    xmm13, oword 256[rbp] /* [rip + .LCPI7_16] */
	LONG $0xeb0f4566; BYTE $0xd5               // por    xmm10, xmm13
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0x6f0f4566; BYTE $0xec               // movdqa    xmm13, xmm12
	LONG $0xda0f4166; BYTE $0xd4               // pminub    xmm2, xmm12
	LONG $0xd0740f66                           // pcmpeqb    xmm2, xmm0
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0xda0f4166; BYTE $0xc4               // pminub    xmm0, xmm12
	LONG $0xc6740f66                           // pcmpeqb    xmm0, xmm6
	QUAD $0x000000a024948b48                   // mov    rdx, qword [rsp + 160]
	LONG $0x1654b60f; BYTE $0x19               // movzx    edx, byte [rsi + rdx + 25]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	LONG $0x245c8b48; BYTE $0x60               // mov    rbx, qword [rsp + 96]
	QUAD $0x010e1e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 14], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0e2e6c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r13 + 14], 2
	LONG $0x24548b48; BYTE $0x40               // mov    rdx, qword [rsp + 64]
	QUAD $0x030e166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 14], 3
	QUAD $0x0e066c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r8 + 14], 4
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	QUAD $0x050e066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 14], 5
	QUAD $0x060e0e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 14], 6
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x0e1e6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r11 + 14], 7
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	QUAD $0x0e3e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r15 + 14], 8
	WORD $0x894c; BYTE $0xe7                   // mov    rdi, r12
	QUAD $0x0e266c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r12 + 14], 9
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x0e1e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r11 + 14], 10
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x0e3e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r15 + 14], 11
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	QUAD $0x0e266c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r12 + 14], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d0e066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 14], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e0e066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 14], 14
	QUAD $0x0e0e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r9 + 14], 15
	QUAD $0x0f1e44203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rbx + 15], 1
	QUAD $0x0f2e44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rsi + r13 + 15], 2
	QUAD $0x0f1644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rdx + 15], 3
	LONG $0x246c8b4c; BYTE $0x58               // mov    r13, qword [rsp + 88]
	QUAD $0x0f2e44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rsi + r13 + 15], 4
	QUAD $0x0f0644203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r8 + 15], 5
	QUAD $0x0f0e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rcx + 15], 6
	QUAD $0x0f1644203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r10 + 15], 7
	QUAD $0x0f3644203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r14 + 15], 8
	QUAD $0x0f3e44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rsi + rdi + 15], 9
	QUAD $0x0f1e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r11 + 15], 10
	QUAD $0x0f3e44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r15 + 15], 11
	QUAD $0x0f2644203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r12 + 15], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0f0644203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rax + 15], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f0644203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rax + 15], 14
	QUAD $0x0f0e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r9 + 15], 15
	QUAD $0x01111e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 17], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0211067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 17], 2
	QUAD $0x0311167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 17], 3
	QUAD $0x112e7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r13 + 17], 4
	QUAD $0x11067c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r8 + 17], 5
	QUAD $0x06110e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 17], 6
	QUAD $0x11167c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rsi + r10 + 17], 7
	QUAD $0x11367c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r14 + 17], 8
	QUAD $0x09113e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 17], 9
	QUAD $0x111e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r11 + 17], 10
	QUAD $0x113e7c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r15 + 17], 11
	QUAD $0x11267c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r12 + 17], 12
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x112e7c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r13 + 17], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e11067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 17], 14
	QUAD $0x110e7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r9 + 17], 15
	QUAD $0x01121e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 18], 1
	LONG $0x245c8b48; BYTE $0x20               // mov    rbx, qword [rsp + 32]
	QUAD $0x02121e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 18], 2
	QUAD $0x0312164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 18], 3
	LONG $0x24448b48; BYTE $0x58               // mov    rax, qword [rsp + 88]
	QUAD $0x0412064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 18], 4
	QUAD $0x12064c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r8 + 18], 5
	QUAD $0x06120e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 18], 6
	QUAD $0x12164c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rsi + r10 + 18], 7
	QUAD $0x12364c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r14 + 18], 8
	WORD $0x894d; BYTE $0xf2                   // mov    r10, r14
	QUAD $0x09123e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 18], 9
	QUAD $0x121e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r11 + 18], 10
	QUAD $0x123e4c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r15 + 18], 11
	QUAD $0x12264c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r12 + 18], 12
	QUAD $0x122e4c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r13 + 18], 13
	QUAD $0x000000d095df0f66                   // pandn    xmm2, oword 208[rbp] /* [rip + .LCPI7_13] */
	QUAD $0x000000e085df0f66                   // pandn    xmm0, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xc2eb0f66                           // por    xmm0, xmm2
	LONG $0xd56f0f66                           // movdqa    xmm2, xmm5
	LONG $0xda0f4166; BYTE $0xd5               // pminub    xmm2, xmm13
	LONG $0xd5740f66                           // pcmpeqb    xmm2, xmm5
	QUAD $0x000000a024848b48                   // mov    rax, qword [rsp + 160]
	LONG $0x0654b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rax + 26]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x120e4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rsi + r9 + 18], 14
	QUAD $0x000000f095df0f66                   // pandn    xmm2, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0xd0eb0f66                           // por    xmm2, xmm0
	LONG $0x6f0f4166; BYTE $0xf0               // movdqa    xmm6, xmm8
	LONG $0xda0f4166; BYTE $0xf5               // pminub    xmm6, xmm13
	LONG $0x740f4166; BYTE $0xf0               // pcmpeqb    xmm6, xmm8
	LONG $0x0654b60f; BYTE $0x1b               // movzx    edx, byte [rsi + rax + 27]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x24448b4c; BYTE $0x48               // mov    r8, qword [rsp + 72]
	QUAD $0x12064c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r8 + 18], 15
	QUAD $0x00000100b5ef0f66                   // pxor    xmm6, oword 256[rbp] /* [rip + .LCPI7_16] */
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0x75db0f66; BYTE $0x60               // pand    xmm6, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0x0654b60f; BYTE $0x1c               // movzx    edx, byte [rsi + rax + 28]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	QUAD $0x0000c024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm6
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xda0f4166; BYTE $0xd5               // pminub    xmm2, xmm13
	LONG $0xd7740f66                           // pcmpeqb    xmm2, xmm7
	LONG $0x6f0f4466; BYTE $0xf2               // movdqa    xmm14, xmm2
	QUAD $0x0000a0b5df0f4466; BYTE $0x00       // pandn    xmm14, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xfc0f4466; BYTE $0xf2               // paddb    xmm14, xmm2
	LONG $0x6f0f4466; BYTE $0xd1               // movdqa    xmm10, xmm1
	LONG $0xda0f4566; BYTE $0xd5               // pminub    xmm10, xmm13
	LONG $0x740f4466; BYTE $0xd1               // pcmpeqb    xmm10, xmm1
	LONG $0x0654b60f; BYTE $0x1d               // movzx    edx, byte [rsi + rax + 29]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x0654b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rax + 30]
	LONG $0x064cb60f; BYTE $0x1f               // movzx    ecx, byte [rsi + rax + 31]
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x0113065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 19], 1
	QUAD $0x14064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 20], 1
	QUAD $0x01150664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 21], 1
	QUAD $0x16067c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rax + 22], 1
	QUAD $0x17065c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rax + 23], 1
	QUAD $0x190664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 25], 1
	QUAD $0x011a066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 26], 1
	QUAD $0x011b0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 27], 1
	QUAD $0x1c0644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rax + 28], 1
	QUAD $0x011d0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 29], 1
	LONG $0xca6e0f66                           // movd    xmm1, edx
	QUAD $0x011e064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 30], 1
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	QUAD $0x011f067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 31], 1
	WORD $0x8948; BYTE $0xd8                   // mov    rax, rbx
	QUAD $0x02131e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 19], 2
	QUAD $0x141e4c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rbx + 20], 2
	QUAD $0x02151e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 21], 2
	QUAD $0x161e7c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rbx + 22], 2
	QUAD $0x171e5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rbx + 23], 2
	QUAD $0x191e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rbx + 25], 2
	QUAD $0x021a1e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 26], 2
	QUAD $0x021b1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 27], 2
	QUAD $0x1c1e44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rbx + 28], 2
	QUAD $0x021d1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 29], 2
	QUAD $0x021e1e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 30], 2
	QUAD $0x021f1e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 31], 2
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0313065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 19], 3
	LONG $0x24548b48; BYTE $0x58               // mov    rdx, qword [rsp + 88]
	QUAD $0x0413165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 19], 4
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x05130e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 19], 5
	LONG $0x247c8b48; BYTE $0x68               // mov    rdi, qword [rsp + 104]
	QUAD $0x06133e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 19], 6
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x13365c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rsi + r14 + 19], 7
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	QUAD $0x13165c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r10 + 19], 8
	QUAD $0x00000080249c8b4c                   // mov    r11, qword [rsp + 128]
	QUAD $0x131e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r11 + 19], 9
	LONG $0x247c8b4c; BYTE $0x30               // mov    r15, qword [rsp + 48]
	QUAD $0x133e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r15 + 19], 10
	LONG $0x24548b4c; BYTE $0x28               // mov    r10, qword [rsp + 40]
	QUAD $0x13165c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r10 + 19], 11
	LONG $0x245c8b48; BYTE $0x38               // mov    rbx, qword [rsp + 56]
	QUAD $0x0c131e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 19], 12
	QUAD $0x132e5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r13 + 19], 13
	QUAD $0x130e5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r9 + 19], 14
	QUAD $0x13065c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r8 + 19], 15
	QUAD $0x14064c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rsi + rax + 20], 3
	QUAD $0x14164c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rdx + 20], 4
	QUAD $0x140e4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rsi + rcx + 20], 5
	QUAD $0x143e4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdi + 20], 6
	QUAD $0x14364c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rsi + r14 + 20], 7
	QUAD $0x14264c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r12 + 20], 8
	QUAD $0x141e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r11 + 20], 9
	QUAD $0x143e4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r15 + 20], 10
	QUAD $0x14164c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r10 + 20], 11
	QUAD $0x141e4c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + rbx + 20], 12
	QUAD $0x142e4c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r13 + 20], 13
	QUAD $0x140e4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r9 + 20], 14
	QUAD $0x14064c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r8 + 20], 15
	QUAD $0x03150664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 21], 3
	QUAD $0x04151664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 21], 4
	QUAD $0x05150e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 21], 5
	QUAD $0x06153e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 21], 6
	QUAD $0x153664203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rsi + r14 + 21], 7
	QUAD $0x152664203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r12 + 21], 8
	QUAD $0x151e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r11 + 21], 9
	QUAD $0x153e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r15 + 21], 10
	QUAD $0x151664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r10 + 21], 11
	QUAD $0x0c151e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 21], 12
	WORD $0x8949; BYTE $0xd8                   // mov    r8, rbx
	QUAD $0x152e64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r13 + 21], 13
	QUAD $0x150e64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r9 + 21], 14
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x0f151e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 21], 15
	QUAD $0x16067c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rax + 22], 3
	QUAD $0x16167c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rdx + 22], 4
	QUAD $0x160e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rcx + 22], 5
	QUAD $0x163e7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rdi + 22], 6
	QUAD $0x16367c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rsi + r14 + 22], 7
	QUAD $0x16267c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r12 + 22], 8
	QUAD $0x161e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r11 + 22], 9
	QUAD $0x163e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r15 + 22], 10
	QUAD $0x00011024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 272]
	QUAD $0x000000a095df0f66                   // pandn    xmm2, oword 160[rbp] /* [rip + .LCPI7_10] */
	QUAD $0x16167c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r10 + 22], 11
	QUAD $0x0000b095df0f4466; BYTE $0x00       // pandn    xmm10, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xeb0f4466; BYTE $0xd2               // por    xmm10, xmm2
	QUAD $0x16067c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r8 + 22], 12
	LONG $0xd36f0f66                           // movdqa    xmm2, xmm3
	LONG $0xda0f4166; BYTE $0xd5               // pminub    xmm2, xmm13
	LONG $0xd3740f66                           // pcmpeqb    xmm2, xmm3
	QUAD $0x162e7c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r13 + 22], 13
	QUAD $0x000000c095df0f66                   // pandn    xmm2, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0xeb0f4166; BYTE $0xd2               // por    xmm2, xmm10
	QUAD $0x160e7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r9 + 22], 14
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x000100b5f80f4466; BYTE $0x00       // psubb    xmm14, oword 256[rbp] /* [rip + .LCPI7_16] */
	LONG $0xeb0f4166; BYTE $0xd6               // por    xmm2, xmm14
	LONG $0x6f0f4566; BYTE $0xd1               // movdqa    xmm10, xmm9
	LONG $0xda0f4566; BYTE $0xd5               // pminub    xmm10, xmm13
	LONG $0x740f4566; BYTE $0xd1               // pcmpeqb    xmm10, xmm9
	LONG $0xdc6f0f66                           // movdqa    xmm3, xmm4
	LONG $0x6f0f4566; BYTE $0xcd               // movdqa    xmm9, xmm13
	LONG $0xda0f4166; BYTE $0xdd               // pminub    xmm3, xmm13
	LONG $0xdc740f66                           // pcmpeqb    xmm3, xmm4
	QUAD $0x161e7c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + rbx + 22], 15
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI7_13] */
	LONG $0xdf0f4566; BYTE $0xd5               // pandn    xmm10, xmm13
	QUAD $0x000000e0a56f0f66                   // movdqa    xmm4, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xdcdf0f66                           // pandn    xmm3, xmm4
	LONG $0xeb0f4166; BYTE $0xda               // por    xmm3, xmm10
	LONG $0x6f0f4166; BYTE $0xe7               // movdqa    xmm4, xmm15
	LONG $0xda0f4166; BYTE $0xe1               // pminub    xmm4, xmm9
	LONG $0x6f0f4566; BYTE $0xe9               // movdqa    xmm13, xmm9
	LONG $0x740f4166; BYTE $0xe7               // pcmpeqb    xmm4, xmm15
	QUAD $0x17065c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rsi + rax + 23], 3
	QUAD $0x17165c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rdx + 23], 4
	QUAD $0x170e5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rsi + rcx + 23], 5
	WORD $0x8949; BYTE $0xc8                   // mov    r8, rcx
	LONG $0x244c8b4c; BYTE $0x68               // mov    r9, qword [rsp + 104]
	QUAD $0x170e5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r9 + 23], 6
	QUAD $0x17365c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r14 + 23], 7
	QUAD $0x17265c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r12 + 23], 8
	QUAD $0x171e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r11 + 23], 9
	QUAD $0x173e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r15 + 23], 10
	QUAD $0x17165c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r10 + 23], 11
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x170e5c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + rcx + 23], 12
	QUAD $0x172e5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r13 + 23], 13
	QUAD $0x173e5c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rdi + 23], 14
	QUAD $0x171e5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rbx + 23], 15
	QUAD $0x0000f0bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 240[rbp] /* [rip + .LCPI7_15] */
	LONG $0xdf0f4166; BYTE $0xe7               // pandn    xmm4, xmm15
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x6f0f4166; BYTE $0xdb               // movdqa    xmm3, xmm11
	LONG $0xda0f4166; BYTE $0xd9               // pminub    xmm3, xmm9
	LONG $0x740f4166; BYTE $0xdb               // pcmpeqb    xmm3, xmm11
	QUAD $0x000001009def0f66                   // pxor    xmm3, oword 256[rbp] /* [rip + .LCPI7_16] */
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0x6f0f4466; WORD $0x605d             // movdqa    xmm11, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x190664203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rax + 25], 3
	QUAD $0x191664203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rdx + 25], 4
	QUAD $0x190664203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r8 + 25], 5
	QUAD $0x190e64203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r9 + 25], 6
	QUAD $0x193664203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r14 + 25], 7
	QUAD $0x192664203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r12 + 25], 8
	QUAD $0x191e64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r11 + 25], 9
	QUAD $0x193e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r15 + 25], 10
	QUAD $0x191664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r10 + 25], 11
	QUAD $0x190e64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + rcx + 25], 12
	QUAD $0x192e64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r13 + 25], 13
	QUAD $0x193e64203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rdi + 25], 14
	QUAD $0x191e64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rbx + 25], 15
	QUAD $0x031a066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 26], 3
	QUAD $0x041a166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 26], 4
	QUAD $0x1a066c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r8 + 26], 5
	QUAD $0x1a0e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r9 + 26], 6
	QUAD $0x1a366c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rsi + r14 + 26], 7
	QUAD $0x1a266c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r12 + 26], 8
	QUAD $0x1a1e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r11 + 26], 9
	QUAD $0x1a3e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r15 + 26], 10
	QUAD $0x1a166c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r10 + 26], 11
	QUAD $0x0c1a0e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 26], 12
	QUAD $0x1a2e6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r13 + 26], 13
	QUAD $0x0e1a3e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 26], 14
	QUAD $0x0f1a1e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 26], 15
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6f0f4166; BYTE $0xd4               // movdqa    xmm2, xmm12
	LONG $0xda0f4166; BYTE $0xd1               // pminub    xmm2, xmm9
	LONG $0x740f4166; BYTE $0xd4               // pcmpeqb    xmm2, xmm12
	LONG $0x6f0f4466; BYTE $0xca               // movdqa    xmm9, xmm2
	QUAD $0x0000a0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 160[rbp] /* [rip + .LCPI7_10] */
	LONG $0xdf0f4566; BYTE $0xca               // pandn    xmm9, xmm10
	LONG $0xfc0f4466; BYTE $0xca               // paddb    xmm9, xmm2
	LONG $0xe56f0f66                           // movdqa    xmm4, xmm5
	LONG $0xda0f4166; BYTE $0xe5               // pminub    xmm4, xmm13
	LONG $0xe5740f66                           // pcmpeqb    xmm4, xmm5
	QUAD $0x0000f024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 240]
	LONG $0xdf0f4166; BYTE $0xd2               // pandn    xmm2, xmm10
	QUAD $0x031b0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 27], 3
	QUAD $0x041b1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 27], 4
	QUAD $0x1b0644203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r8 + 27], 5
	QUAD $0x1b0e44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r9 + 27], 6
	QUAD $0x1b3644203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rsi + r14 + 27], 7
	QUAD $0x1b2644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r12 + 27], 8
	QUAD $0x1b1e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r11 + 27], 9
	QUAD $0x1b3e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r15 + 27], 10
	QUAD $0x1b1644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r10 + 27], 11
	QUAD $0x0c1b0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 27], 12
	QUAD $0x1b2e44203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r13 + 27], 13
	QUAD $0x0e1b3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 27], 14
	QUAD $0x0f1b1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 27], 15
	QUAD $0x000000b0a5df0f66                   // pandn    xmm4, oword 176[rbp] /* [rip + .LCPI7_11] */
	LONG $0xe2eb0f66                           // por    xmm4, xmm2
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0xda0f4166; BYTE $0xd5               // pminub    xmm2, xmm13
	LONG $0xd0740f66                           // pcmpeqb    xmm2, xmm0
	QUAD $0x000000c095df0f66                   // pandn    xmm2, oword 192[rbp] /* [rip + .LCPI7_12] */
	LONG $0xd4eb0f66                           // por    xmm2, xmm4
	QUAD $0x1c0644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rax + 28], 3
	QUAD $0x1c1644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rdx + 28], 4
	QUAD $0x1c0644203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r8 + 28], 5
	QUAD $0x1c0e44203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r9 + 28], 6
	QUAD $0x1c3644203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rsi + r14 + 28], 7
	QUAD $0x1c2644203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r12 + 28], 8
	QUAD $0x1c1e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r11 + 28], 9
	QUAD $0x1c3e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r15 + 28], 10
	QUAD $0x1c1644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r10 + 28], 11
	QUAD $0x1c0e44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rcx + 28], 12
	QUAD $0x1c2e44203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r13 + 28], 13
	QUAD $0x1c3e44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rdi + 28], 14
	QUAD $0x1c1e44203a0f4466; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + rbx + 28], 15
	QUAD $0x031d0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 29], 3
	QUAD $0x041d1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 29], 4
	QUAD $0x1d0674203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r8 + 29], 5
	QUAD $0x1d0e74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r9 + 29], 6
	QUAD $0x1d3674203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rsi + r14 + 29], 7
	QUAD $0x1d2674203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r12 + 29], 8
	QUAD $0x1d1e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r11 + 29], 9
	QUAD $0x1d3e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r15 + 29], 10
	QUAD $0x1d1674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r10 + 29], 11
	QUAD $0x0c1d0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 29], 12
	QUAD $0x1d2e74203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r13 + 29], 13
	QUAD $0x0e1d3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 29], 14
	QUAD $0x0f1d1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 29], 15
	LONG $0x760f4566; BYTE $0xd2               // pcmpeqd    xmm10, xmm10
	LONG $0xf80f4566; BYTE $0xca               // psubb    xmm9, xmm10
	LONG $0xeb0f4166; BYTE $0xd1               // por    xmm2, xmm9
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xda0f4166; BYTE $0xc5               // pminub    xmm0, xmm13
	LONG $0x740f4166; BYTE $0xc0               // pcmpeqb    xmm0, xmm8
	LONG $0xe66f0f66                           // movdqa    xmm4, xmm6
	LONG $0xda0f4166; BYTE $0xe5               // pminub    xmm4, xmm13
	LONG $0xe6740f66                           // pcmpeqb    xmm4, xmm6
	QUAD $0x031e064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 30], 3
	QUAD $0x031f067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 31], 3
	QUAD $0x041e164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 30], 4
	QUAD $0x041f167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 31], 4
	QUAD $0x1e064c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r8 + 30], 5
	QUAD $0x1f067c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r8 + 31], 5
	QUAD $0x1e0e4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r9 + 30], 6
	QUAD $0x1f0e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r9 + 31], 6
	QUAD $0x1e364c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rsi + r14 + 30], 7
	QUAD $0x1f367c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rsi + r14 + 31], 7
	QUAD $0x1e264c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r12 + 30], 8
	QUAD $0x1f267c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r12 + 31], 8
	QUAD $0x1e1e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r11 + 30], 9
	QUAD $0x1f1e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r11 + 31], 9
	QUAD $0x1e3e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r15 + 30], 10
	QUAD $0x1f3e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r15 + 31], 10
	LONG $0x24048b48                           // mov    rax, qword [rsp]
	QUAD $0x1e164c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r10 + 30], 11
	QUAD $0x1f167c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r10 + 31], 11
	QUAD $0x0c1e0e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 30], 12
	QUAD $0x0c1f0e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 31], 12
	QUAD $0x1e2e4c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r13 + 30], 13
	QUAD $0x1f2e7c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r13 + 31], 13
	QUAD $0x0e1e3e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 30], 14
	QUAD $0x0e1f3e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 31], 14
	QUAD $0x0f1e1e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 30], 15
	QUAD $0x0f1f1e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 31], 15
	QUAD $0x000000d085df0f66                   // pandn    xmm0, oword 208[rbp] /* [rip + .LCPI7_13] */
	QUAD $0x000000e0a5df0f66                   // pandn    xmm4, oword 224[rbp] /* [rip + .LCPI7_14] */
	LONG $0xe0eb0f66                           // por    xmm4, xmm0
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0xda0f4166; BYTE $0xc5               // pminub    xmm0, xmm13
	LONG $0xc1740f66                           // pcmpeqb    xmm0, xmm1
	LONG $0xdf0f4166; BYTE $0xc7               // pandn    xmm0, xmm15
	LONG $0xc4eb0f66                           // por    xmm0, xmm4
	LONG $0xcf6f0f66                           // movdqa    xmm1, xmm7
	LONG $0xda0f4166; BYTE $0xcd               // pminub    xmm1, xmm13
	LONG $0xcf740f66                           // pcmpeqb    xmm1, xmm7
	LONG $0xef0f4166; BYTE $0xca               // pxor    xmm1, xmm10
	LONG $0xf1710f66; BYTE $0x07               // psllw    xmm1, 7
	LONG $0xdb0f4166; BYTE $0xcb               // pand    xmm1, xmm11
	LONG $0xc8eb0f66                           // por    xmm1, xmm0
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0xc1600f66                           // punpcklbw    xmm0, xmm1
	QUAD $0x0000d024ac6f0f66; BYTE $0x00       // movdqa    xmm5, oword [rsp + 208]
	LONG $0xd56f0f66                           // movdqa    xmm2, xmm5
	QUAD $0x0000c024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 192]
	LONG $0xd6600f66                           // punpcklbw    xmm2, xmm6
	LONG $0xe26f0f66                           // movdqa    xmm4, xmm2
	LONG $0xe0610f66                           // punpcklwd    xmm4, xmm0
	LONG $0xd0690f66                           // punpckhwd    xmm2, xmm0
	LONG $0xd9680f66                           // punpckhbw    xmm3, xmm1
	LONG $0xee680f66                           // punpckhbw    xmm5, xmm6
	LONG $0xc56f0f66                           // movdqa    xmm0, xmm5
	LONG $0xc3610f66                           // punpcklwd    xmm0, xmm3
	LONG $0xeb690f66                           // punpckhwd    xmm5, xmm3
	QUAD $0x000000b0248c8b48                   // mov    rcx, qword [rsp + 176]
	LONG $0x6c7f0ff3; WORD $0x3088             // movdqu    oword [rax + 4*rcx + 48], xmm5
	LONG $0x447f0ff3; WORD $0x2088             // movdqu    oword [rax + 4*rcx + 32], xmm0
	LONG $0x547f0ff3; WORD $0x1088             // movdqu    oword [rax + 4*rcx + 16], xmm2
	LONG $0x24048948                           // mov    qword [rsp], rax
	LONG $0x247f0ff3; BYTE $0x88               // movdqu    oword [rax + 4*rcx], xmm4
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB7_67
	QUAD $0x0000010824bc8b4c                   // mov    r15, qword [rsp + 264]
	QUAD $0x000000e824bc3b4c                   // cmp    r15, qword [rsp + 232]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	LONG $0x24548a44; BYTE $0x08               // mov    r10b, byte [rsp + 8]
	QUAD $0x0000014024a48b4c                   // mov    r12, qword [rsp + 320]
	JNE  LBB7_69
	JMP  LBB7_72

LBB7_124:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	LONG $0x24448948; BYTE $0x38         // mov    qword [rsp + 56], rax
	LONG $0x247c894c; BYTE $0x28         // mov    qword [rsp + 40], r15
	LONG $0x24048b48                     // mov    rax, qword [rsp]
	LONG $0xb8048d4a                     // lea    rax, [rax + 4*r15]
	LONG $0x24448948; BYTE $0x08         // mov    qword [rsp + 8], rax
	QUAD $0x0000f024846e0f66; BYTE $0x00 // movd    xmm0, dword [rsp + 240]
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	WORD $0x3145; BYTE $0xff             // xor    r15d, r15d
	QUAD $0x000080bd6f0f4466; BYTE $0x00 // movdqa    xmm15, oword 128[rbp] /* [rip + .LCPI7_8] */
	LONG $0x6f0f4466; WORD $0x104d       // movdqa    xmm9, oword 16[rbp] /* [rip + .LCPI7_1] */
	LONG $0x6f0f4466; WORD $0x2055       // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI7_2] */
	LONG $0x6f0f4466; WORD $0x305d       // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI7_3] */
	LONG $0x6f0f4466; WORD $0x4065       // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI7_4] */
	LONG $0x6f0f4466; WORD $0x506d       // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI7_5] */
	LONG $0x6f0f4466; WORD $0x6075       // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI7_6] */

LBB7_125:
	LONG $0x247c894c; BYTE $0x10               // mov    qword [rsp + 16], r15
	LONG $0x06e7c149                           // shl    r15, 6
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	WORD $0x894d; BYTE $0xfd                   // mov    r13, r15
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	WORD $0x894c; BYTE $0xff                   // mov    rdi, r15
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	LONG $0x34b70f46; BYTE $0x3e               // movzx    r14d, word [rsi + r15]
	LONG $0x44b70f42; WORD $0x023e             // movzx    eax, word [rsi + r15 + 2]
	LONG $0x5cb70f46; WORD $0x043e             // movzx    r11d, word [rsi + r15 + 4]
	LONG $0x54b70f42; WORD $0x063e             // movzx    edx, word [rsi + r15 + 6]
	LONG $0x54b70f46; WORD $0x083e             // movzx    r10d, word [rsi + r15 + 8]
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x6e0f4166; BYTE $0xe6               // movd    xmm4, r14d
	LONG $0xc40f4266; WORD $0x0624; BYTE $0x01 // pinsrw    xmm4, word [rsi + r8], 1
	LONG $0xc40f4266; WORD $0x0e24; BYTE $0x02 // pinsrw    xmm4, word [rsi + r9], 2
	LONG $0xc40f4266; WORD $0x2624; BYTE $0x03 // pinsrw    xmm4, word [rsi + r12], 3
	LONG $0xc40f4266; WORD $0x2e24; BYTE $0x04 // pinsrw    xmm4, word [rsi + r13], 4
	LONG $0x24c40f66; WORD $0x050e             // pinsrw    xmm4, word [rsi + rcx], 5
	LONG $0x24c40f66; WORD $0x063e             // pinsrw    xmm4, word [rsi + rdi], 6
	LONG $0x24c40f66; WORD $0x071e             // pinsrw    xmm4, word [rsi + rbx], 7
	LONG $0x74b70f46; WORD $0x0a3e             // movzx    r14d, word [rsi + r15 + 10]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x01020674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 2], 1
	QUAD $0x02020e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 2], 2
	QUAD $0x03022674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 2], 3
	LONG $0x44b70f42; WORD $0x0c3e             // movzx    eax, word [rsi + r15 + 12]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x04022e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 2], 4
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x5cb70f46; WORD $0x0e3e             // movzx    r11d, word [rsi + r15 + 14]
	LONG $0x74c40f66; WORD $0x020e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 2], 5
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0x54b70f42; WORD $0x103e             // movzx    edx, word [rsi + r15 + 16]
	LONG $0x74c40f66; WORD $0x023e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 2], 6
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x44b70f42; WORD $0x123e             // movzx    eax, word [rsi + r15 + 18]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x74c40f66; WORD $0x021e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 2], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xcef80f66                           // psubb    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf6               // movd    xmm6, r14d
	LONG $0x54b70f46; WORD $0x143e             // movzx    r10d, word [rsi + r15 + 20]
	LONG $0xe0650f66                           // pcmpgtw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	QUAD $0x01040654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 4], 1
	QUAD $0x02040e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 4], 2
	QUAD $0x03042654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 4], 3
	QUAD $0x04042e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x043e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 4], 6
	LONG $0x54c40f66; WORD $0x041e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 4], 7
	QUAD $0x0106066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 6], 1
	QUAD $0x02060e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 6], 2
	QUAD $0x0306266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 6], 3
	QUAD $0x04062e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 6], 4
	LONG $0x6cc40f66; WORD $0x060e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 6], 5
	LONG $0x6cc40f66; WORD $0x063e; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdi + 6], 6
	LONG $0x6cc40f66; WORD $0x061e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 6], 7
	QUAD $0x0108065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 8], 1
	QUAD $0x02080e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 8], 2
	QUAD $0x0308265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 8], 3
	QUAD $0x04082e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 8], 4
	LONG $0x5cc40f66; WORD $0x080e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 8], 5
	LONG $0x5cc40f66; WORD $0x083e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 8], 6
	LONG $0x5cc40f66; WORD $0x081e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 8], 7
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x7c6e0f66; WORD $0x2024             // movd    xmm7, dword [rsp + 32]
	LONG $0x44b70f42; WORD $0x163e             // movzx    eax, word [rsi + r15 + 22]
	LONG $0xd0650f66                           // pcmpgtw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0xdb0f4166; BYTE $0xd1               // pand    xmm2, xmm9
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f46; WORD $0x183e             // movzx    r11d, word [rsi + r15 + 24]
	LONG $0xe8650f66                           // pcmpgtw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0xd8650f66                           // pcmpgtw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x54b70f42; WORD $0x1a3e             // movzx    edx, word [rsi + r15 + 26]
	QUAD $0x010a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 10], 1
	QUAD $0x020a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 10], 2
	QUAD $0x030a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 10], 3
	QUAD $0x040a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 10], 4
	LONG $0x74c40f66; WORD $0x0a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 10], 5
	LONG $0x74c40f66; WORD $0x0a3e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 10], 6
	LONG $0x74c40f66; WORD $0x0a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 10], 7
	QUAD $0x010c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 12], 1
	QUAD $0x020c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 12], 2
	QUAD $0x030c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 12], 3
	QUAD $0x040c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 12], 4
	LONG $0x7cc40f66; WORD $0x0c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 12], 5
	LONG $0x7cc40f66; WORD $0x0c3e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 12], 6
	LONG $0x7cc40f66; WORD $0x0c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 12], 7
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4466; WORD $0x2444; BYTE $0x18 // movd    xmm8, dword [rsp + 24]
	LONG $0x74b70f46; WORD $0x1c3e             // movzx    r14d, word [rsi + r15 + 28]
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8650f66                           // pcmpgtw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xea               // movd    xmm5, r10d
	LONG $0x54b70f46; WORD $0x1e3e             // movzx    r10d, word [rsi + r15 + 30]
	QUAD $0x010e0664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 14], 1
	QUAD $0x020e0e64c40f4266                   // pinsrw    xmm4, word [rsi + r9 + 14], 2
	QUAD $0x030e2664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 14], 3
	QUAD $0x040e2e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 14], 4
	LONG $0x64c40f66; WORD $0x0e0e; BYTE $0x05 // pinsrw    xmm4, word [rsi + rcx + 14], 5
	LONG $0x64c40f66; WORD $0x0e3e; BYTE $0x06 // pinsrw    xmm4, word [rsi + rdi + 14], 6
	LONG $0x64c40f66; WORD $0x0e1e; BYTE $0x07 // pinsrw    xmm4, word [rsi + rbx + 14], 7
	QUAD $0x01120644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 18], 1
	QUAD $0x02120e44c40f4666                   // pinsrw    xmm8, word [rsi + r9 + 18], 2
	QUAD $0x03122644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 18], 3
	QUAD $0x04122e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 18], 4
	QUAD $0x05120e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 18], 5
	QUAD $0x06123e44c40f4466                   // pinsrw    xmm8, word [rsi + rdi + 18], 6
	QUAD $0x07121e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 18], 7
	LONG $0xe0650f66                           // pcmpgtw    xmm4, xmm0
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x203e             // movzx    eax, word [rsi + r15 + 32]
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x650f4466; BYTE $0xc0               // pcmpgtw    xmm8, xmm0
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf80f4166; BYTE $0xf8               // psubb    xmm7, xmm8
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	LONG $0x5cb70f46; WORD $0x223e             // movzx    r11d, word [rsi + r15 + 34]
	QUAD $0x0110064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 16], 1
	QUAD $0x02100e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 16], 2
	QUAD $0x0310264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 16], 3
	QUAD $0x04102e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 16], 4
	LONG $0x4cc40f66; WORD $0x100e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 16], 5
	LONG $0x4cc40f66; WORD $0x103e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 16], 6
	LONG $0x4cc40f66; WORD $0x101e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 16], 7
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0x54b70f42; WORD $0x243e             // movzx    edx, word [rsi + r15 + 36]
	LONG $0x30245489                           // mov    dword [rsp + 48], edx
	QUAD $0x0114066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 20], 1
	QUAD $0x02140e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 20], 2
	QUAD $0x0314266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 20], 3
	QUAD $0x04142e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 20], 4
	LONG $0x6cc40f66; WORD $0x140e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 20], 5
	LONG $0x6cc40f66; WORD $0x143e; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdi + 20], 6
	LONG $0x6cc40f66; WORD $0x141e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 20], 7
	LONG $0xe8650f66                           // pcmpgtw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe9               // pand    xmm5, xmm9
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6e0f4166; BYTE $0xfe               // movd    xmm7, r14d
	LONG $0x54b70f42; WORD $0x263e             // movzx    edx, word [rsi + r15 + 38]
	LONG $0x18245489                           // mov    dword [rsp + 24], edx
	QUAD $0x01160654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 22], 1
	QUAD $0x02160e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 22], 2
	QUAD $0x03162654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 22], 3
	QUAD $0x04162e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 22], 4
	LONG $0x54c40f66; WORD $0x160e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 22], 5
	LONG $0x54c40f66; WORD $0x163e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 22], 6
	LONG $0x54c40f66; WORD $0x161e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 22], 7
	QUAD $0x0118065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 24], 1
	QUAD $0x02180e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 24], 2
	QUAD $0x0318265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 24], 3
	QUAD $0x04182e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 24], 4
	LONG $0x5cc40f66; WORD $0x180e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 24], 5
	LONG $0x5cc40f66; WORD $0x183e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 24], 6
	LONG $0x5cc40f66; WORD $0x181e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 24], 7
	LONG $0xd0650f66                           // pcmpgtw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0xd8650f66                           // pcmpgtw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x04               // psllw    xmm3, 4
	LONG $0xdb0f4166; BYTE $0xdb               // pand    xmm3, xmm11
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x74b70f46; WORD $0x283e             // movzx    r14d, word [rsi + r15 + 40]
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x2a3e             // movzx    eax, word [rsi + r15 + 42]
	LONG $0x20244489                           // mov    dword [rsp + 32], eax
	QUAD $0x011a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 26], 1
	QUAD $0x021a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 26], 2
	QUAD $0x031a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 26], 3
	QUAD $0x041a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 26], 4
	LONG $0x74c40f66; WORD $0x1a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 26], 5
	LONG $0x74c40f66; WORD $0x1a3e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 26], 6
	LONG $0x74c40f66; WORD $0x1a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 26], 7
	QUAD $0x011c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 28], 1
	QUAD $0x021c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 28], 2
	QUAD $0x031c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 28], 3
	QUAD $0x041c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 28], 4
	LONG $0x7cc40f66; WORD $0x1c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 28], 5
	LONG $0x7cc40f66; WORD $0x1c3e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 28], 6
	LONG $0x7cc40f66; WORD $0x1c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 28], 7
	QUAD $0x011e0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 30], 1
	QUAD $0x021e0e54c40f4266                   // pinsrw    xmm2, word [rsi + r9 + 30], 2
	QUAD $0x031e2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 30], 3
	QUAD $0x041e2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 30], 4
	LONG $0x54c40f66; WORD $0x1e0e; BYTE $0x05 // pinsrw    xmm2, word [rsi + rcx + 30], 5
	LONG $0x54c40f66; WORD $0x1e3e; BYTE $0x06 // pinsrw    xmm2, word [rsi + rdi + 30], 6
	LONG $0x54c40f66; WORD $0x1e1e; BYTE $0x07 // pinsrw    xmm2, word [rsi + rbx + 30], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xf8650f66                           // pcmpgtw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x54b70f46; WORD $0x2c3e             // movzx    r10d, word [rsi + r15 + 44]
	LONG $0xd0650f66                           // pcmpgtw    xmm2, xmm0
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07               // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x746e0f66; WORD $0x3024             // movd    xmm6, dword [rsp + 48]
	LONG $0x54b70f42; WORD $0x2e3e             // movzx    edx, word [rsi + r15 + 46]
	QUAD $0x0120066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 32], 1
	QUAD $0x02200e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 32], 2
	QUAD $0x0320266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 32], 3
	QUAD $0x04202e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 32], 4
	LONG $0x6cc40f66; WORD $0x200e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 32], 5
	LONG $0x6cc40f66; WORD $0x203e; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdi + 32], 6
	QUAD $0x0122064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 34], 1
	QUAD $0x02220e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 34], 2
	QUAD $0x0322264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 34], 3
	QUAD $0x04222e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 34], 4
	LONG $0x4cc40f66; WORD $0x220e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 34], 5
	LONG $0x4cc40f66; WORD $0x223e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 34], 6
	LONG $0x4cc40f66; WORD $0x221e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 34], 7
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0x5c6e0f66; WORD $0x1824             // movd    xmm3, dword [rsp + 24]
	LONG $0x5cb70f46; WORD $0x303e             // movzx    r11d, word [rsi + r15 + 48]
	LONG $0x6cc40f66; WORD $0x201e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 32], 7
	LONG $0xe8650f66                           // pcmpgtw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	QUAD $0x01240674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 36], 1
	QUAD $0x02240e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 36], 2
	QUAD $0x03242674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 36], 3
	QUAD $0x04242e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 36], 4
	LONG $0x74c40f66; WORD $0x240e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 36], 5
	LONG $0x74c40f66; WORD $0x243e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 36], 6
	LONG $0x74c40f66; WORD $0x241e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 36], 7
	QUAD $0x0126065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 38], 1
	QUAD $0x02260e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 38], 2
	QUAD $0x0326265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 38], 3
	QUAD $0x04262e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 38], 4
	LONG $0x5cc40f66; WORD $0x260e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 38], 5
	LONG $0x5cc40f66; WORD $0x263e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 38], 6
	LONG $0x5cc40f66; WORD $0x261e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 38], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x6e0f4166; BYTE $0xee               // movd    xmm5, r14d
	QUAD $0x0128066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 40], 1
	QUAD $0x02280e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 40], 2
	QUAD $0x0328266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 40], 3
	QUAD $0x04282e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 40], 4
	LONG $0x6cc40f66; WORD $0x280e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 40], 5
	LONG $0x6cc40f66; WORD $0x283e; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdi + 40], 6
	LONG $0x44b70f42; WORD $0x323e             // movzx    eax, word [rsi + r15 + 50]
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf1               // pand    xmm6, xmm9
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	LONG $0x4c6e0f66; WORD $0x2024             // movd    xmm1, dword [rsp + 32]
	LONG $0x74b70f46; WORD $0x343e             // movzx    r14d, word [rsi + r15 + 52]
	LONG $0x6cc40f66; WORD $0x281e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 40], 7
	LONG $0xd8650f66                           // pcmpgtw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0xdb0f4166; BYTE $0xda               // pand    xmm3, xmm10
	LONG $0xe8650f66                           // pcmpgtw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	LONG $0x6e0f4166; BYTE $0xfa               // movd    xmm7, r10d
	LONG $0x54b70f46; WORD $0x363e             // movzx    r10d, word [rsi + r15 + 54]
	QUAD $0x012a064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 42], 1
	QUAD $0x022a0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 42], 2
	QUAD $0x032a264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 42], 3
	QUAD $0x042a2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 42], 4
	LONG $0x4cc40f66; WORD $0x2a0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 42], 5
	LONG $0x4cc40f66; WORD $0x2a3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 42], 6
	LONG $0x4cc40f66; WORD $0x2a1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 42], 7
	QUAD $0x012c067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 44], 1
	QUAD $0x022c0e7cc40f4266                   // pinsrw    xmm7, word [rsi + r9 + 44], 2
	QUAD $0x032c267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 44], 3
	QUAD $0x042c2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 44], 4
	LONG $0x7cc40f66; WORD $0x2c0e; BYTE $0x05 // pinsrw    xmm7, word [rsi + rcx + 44], 5
	LONG $0x7cc40f66; WORD $0x2c3e; BYTE $0x06 // pinsrw    xmm7, word [rsi + rdi + 44], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0xda6e0f66                           // movd    xmm3, edx
	LONG $0x54b70f42; WORD $0x383e             // movzx    edx, word [rsi + r15 + 56]
	LONG $0x7cc40f66; WORD $0x2c1e; BYTE $0x07 // pinsrw    xmm7, word [rsi + rbx + 44], 7
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x05               // psllw    xmm1, 5
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xf8650f66                           // pcmpgtw    xmm7, xmm0
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0xdb0f4166; BYTE $0xfd               // pand    xmm7, xmm13
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	LONG $0x5cb70f46; WORD $0x3a3e             // movzx    r11d, word [rsi + r15 + 58]
	QUAD $0x012e065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 46], 1
	QUAD $0x022e0e5cc40f4266                   // pinsrw    xmm3, word [rsi + r9 + 46], 2
	QUAD $0x032e265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 46], 3
	QUAD $0x042e2e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 46], 4
	LONG $0x5cc40f66; WORD $0x2e0e; BYTE $0x05 // pinsrw    xmm3, word [rsi + rcx + 46], 5
	LONG $0x5cc40f66; WORD $0x2e3e; BYTE $0x06 // pinsrw    xmm3, word [rsi + rdi + 46], 6
	LONG $0x5cc40f66; WORD $0x2e1e; BYTE $0x07 // pinsrw    xmm3, word [rsi + rbx + 46], 7
	LONG $0xd8650f66                           // pcmpgtw    xmm3, xmm0
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x3c3e             // movzx    eax, word [rsi + r15 + 60]
	LONG $0x7cb70f46; WORD $0x3e3e             // movzx    r15d, word [rsi + r15 + 62]
	QUAD $0x0132064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 50], 1
	QUAD $0x02320e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 50], 2
	QUAD $0x0332264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 50], 3
	QUAD $0x04322e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 50], 4
	LONG $0x4cc40f66; WORD $0x320e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 50], 5
	LONG $0x4cc40f66; WORD $0x323e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 50], 6
	LONG $0x4cc40f66; WORD $0x321e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 50], 7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	LONG $0x24348b4c                           // mov    r14, qword [rsp]
	QUAD $0x01300674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 48], 1
	QUAD $0x02300e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 48], 2
	QUAD $0x03302674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 48], 3
	QUAD $0x04302e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 48], 4
	LONG $0x74c40f66; WORD $0x300e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 48], 5
	LONG $0x74c40f66; WORD $0x303e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 48], 6
	LONG $0x74c40f66; WORD $0x301e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 48], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x0134064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 52], 1
	QUAD $0x02340e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 52], 2
	QUAD $0x0334264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 52], 3
	QUAD $0x04342e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 52], 4
	LONG $0x4cc40f66; WORD $0x340e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 52], 5
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x4cc40f66; WORD $0x343e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 52], 6
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf2               // movd    xmm6, r10d
	LONG $0x4cc40f66; WORD $0x341e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 52], 7
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x02               // psllw    xmm1, 2
	LONG $0xdb0f4166; BYTE $0xc9               // pand    xmm1, xmm9
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0xea6e0f66                           // movd    xmm5, edx
	QUAD $0x01360674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 54], 1
	QUAD $0x02360e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 54], 2
	QUAD $0x03362674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 54], 3
	QUAD $0x04362e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x363e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 54], 6
	LONG $0x74c40f66; WORD $0x361e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 54], 7
	QUAD $0x0138066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 56], 1
	QUAD $0x02380e6cc40f4266                   // pinsrw    xmm5, word [rsi + r9 + 56], 2
	QUAD $0x0338266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 56], 3
	QUAD $0x04382e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 56], 4
	LONG $0x6cc40f66; WORD $0x380e; BYTE $0x05 // pinsrw    xmm5, word [rsi + rcx + 56], 5
	LONG $0x6cc40f66; WORD $0x383e; BYTE $0x06 // pinsrw    xmm5, word [rsi + rdi + 56], 6
	LONG $0x6cc40f66; WORD $0x381e; BYTE $0x07 // pinsrw    xmm5, word [rsi + rbx + 56], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x03               // psllw    xmm6, 3
	LONG $0xdb0f4166; BYTE $0xf2               // pand    xmm6, xmm10
	LONG $0xe8650f66                           // pcmpgtw    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6e0f4166; BYTE $0xf3               // movd    xmm6, r11d
	QUAD $0x013a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 58], 1
	QUAD $0x023a0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 58], 2
	QUAD $0x033a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 58], 3
	QUAD $0x043a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 58], 4
	LONG $0x74c40f66; WORD $0x3a0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 58], 5
	LONG $0x74c40f66; WORD $0x3a3e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 58], 6
	LONG $0x74c40f66; WORD $0x3a1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 58], 7
	LONG $0xe9eb0f66                           // por    xmm5, xmm1
	LONG $0xc86e0f66                           // movd    xmm1, eax
	QUAD $0x013c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 60], 1
	QUAD $0x023c0e4cc40f4266                   // pinsrw    xmm1, word [rsi + r9 + 60], 2
	QUAD $0x033c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 60], 3
	QUAD $0x043c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 60], 4
	LONG $0x4cc40f66; WORD $0x3c0e; BYTE $0x05 // pinsrw    xmm1, word [rsi + rcx + 60], 5
	LONG $0x4cc40f66; WORD $0x3c3e; BYTE $0x06 // pinsrw    xmm1, word [rsi + rdi + 60], 6
	LONG $0x4cc40f66; WORD $0x3c1e; BYTE $0x07 // pinsrw    xmm1, word [rsi + rbx + 60], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf               // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x06               // psllw    xmm1, 6
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6e0f4166; BYTE $0xf7               // movd    xmm6, r15d
	QUAD $0x013e0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 62], 1
	QUAD $0x023e0e74c40f4266                   // pinsrw    xmm6, word [rsi + r9 + 62], 2
	QUAD $0x033e2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 62], 3
	QUAD $0x043e2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 62], 4
	LONG $0x74c40f66; WORD $0x3e0e; BYTE $0x05 // pinsrw    xmm6, word [rsi + rcx + 62], 5
	LONG $0x74c40f66; WORD $0x3e3e; BYTE $0x06 // pinsrw    xmm6, word [rsi + rdi + 62], 6
	LONG $0x74c40f66; WORD $0x3e1e; BYTE $0x07 // pinsrw    xmm6, word [rsi + rbx + 62], 7
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0xdb0f4166; BYTE $0xf6               // pand    xmm6, xmm14
	LONG $0xf1eb0f66                           // por    xmm6, xmm1
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	LONG $0xeb6f0f66                           // movdqa    xmm5, xmm3
	LONG $0xee6c0f66                           // punpcklqdq    xmm5, xmm6
	QUAD $0x00000090bd6f0f66                   // movdqa    xmm7, oword 144[rbp] /* [rip + .LCPI7_9] */
	LONG $0x00380f66; BYTE $0xef               // pshufb    xmm5, xmm7
	LONG $0x00380f66; BYTE $0xcf               // pshufb    xmm1, xmm7
	LONG $0xcd610f66                           // punpcklwd    xmm1, xmm5
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe2600f66                           // punpcklbw    xmm4, xmm2
	LONG $0xe3610f66                           // punpcklwd    xmm4, xmm3
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	LONG $0x7f0f41f3; WORD $0x8e24             // movdqu    oword [r14 + 4*rcx], xmm4
	LONG $0x2434894c                           // mov    qword [rsp], r14
	LONG $0x7f0f41f3; WORD $0x8e4c; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	LONG $0x244c3b48; BYTE $0x28               // cmp    rcx, qword [rsp + 40]
	JNE  LBB7_125
	QUAD $0x0000011024bc8b4c                   // mov    r15, qword [rsp + 272]
	LONG $0x247c3b4c; BYTE $0x28               // cmp    r15, qword [rsp + 40]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	LONG $0x24748b4c; BYTE $0x08               // mov    r14, qword [rsp + 8]
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	JNE  LBB7_127
	JMP  LBB7_130

LBB7_182:
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	LONG $0xfce08348                           // and    rax, -4
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	LONG $0x07e2c148                           // shl    rdx, 7
	WORD $0x0148; BYTE $0xf2                   // add    rdx, rsi
	LONG $0x240c8b48                           // mov    rcx, qword [rsp]
	LONG $0x813c8d4c                           // lea    r15, [rcx + 4*rax]
	LONG $0xeb280f45                           // movaps    xmm13, xmm11
	LONG $0xebc60f45; BYTE $0x00               // shufps    xmm13, xmm11, 0
	LONG $0xfcc68148; WORD $0x0001; BYTE $0x00 // add    rsi, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI7_0] */
	LONG $0x243c8b48                           // mov    rdi, qword [rsp]

LBB7_183:
	QUAD $0xfffffe049e100ff3                           // movss    xmm3, dword [rsi - 508]
	QUAD $0xfffe0896100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 504]
	QUAD $0xfffe0c8e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 500]
	QUAD $0xfffffe108e100ff3                           // movss    xmm1, dword [rsi - 496]
	QUAD $0xfffe849e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 380], 16
	QUAD $0xffff049e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 252], 32
	LONG $0x213a0f66; WORD $0x845e; BYTE $0x30         // insertps    xmm3, dword [rsi - 124], 48
	QUAD $0xfe8896213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 376], 16
	QUAD $0xff0896213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 248], 32
	QUAD $0x308856213a0f4466                           // insertps    xmm10, dword [rsi - 120], 48
	QUAD $0xfe8c8e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 372], 16
	QUAD $0xff0c8e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 244], 32
	QUAD $0x308c4e213a0f4466                           // insertps    xmm9, dword [rsi - 116], 48
	QUAD $0xfffe908e213a0f66; WORD $0x10ff             // insertps    xmm1, dword [rsi - 368], 16
	QUAD $0xffff108e213a0f66; WORD $0x20ff             // insertps    xmm1, dword [rsi - 240], 32
	LONG $0x213a0f66; WORD $0x904e; BYTE $0x30         // insertps    xmm1, dword [rsi - 112], 48
	QUAD $0xfffe1486100f44f3; BYTE $0xff               // movss    xmm8, dword [rsi - 492]
	QUAD $0xfe9486213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm8, dword [rsi - 364], 16
	QUAD $0xff1486213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm8, dword [rsi - 236], 32
	LONG $0xe5280f45                                   // movaps    xmm12, xmm13
	QUAD $0x309446213a0f4466                           // insertps    xmm8, dword [rsi - 108], 48
	QUAD $0xfffffe1896100ff3                           // movss    xmm2, dword [rsi - 488]
	QUAD $0xfffe9896213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 360], 16
	QUAD $0xffff1896213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 232], 32
	LONG $0xe3c20f44; BYTE $0x01                       // cmpltps    xmm12, xmm3
	LONG $0x213a0f66; WORD $0x9856; BYTE $0x30         // insertps    xmm2, dword [rsi - 104], 48
	QUAD $0xfffffe1c9e100ff3                           // movss    xmm3, dword [rsi - 484]
	QUAD $0xfffe9c9e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 356], 16
	QUAD $0xffff1c9e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 228], 32
	LONG $0x6b0f4566; BYTE $0xe4                       // packssdw    xmm12, xmm12
	LONG $0x213a0f66; WORD $0x9c5e; BYTE $0x30         // insertps    xmm3, dword [rsi - 100], 48
	QUAD $0xfffffe24a6100ff3                           // movss    xmm4, dword [rsi - 476]
	QUAD $0xfffea4a6213a0f66; WORD $0x10ff             // insertps    xmm4, dword [rsi - 348], 16
	QUAD $0xffff24a6213a0f66; WORD $0x20ff             // insertps    xmm4, dword [rsi - 220], 32
	LONG $0x630f4566; BYTE $0xe4                       // packsswb    xmm12, xmm12
	LONG $0x213a0f66; WORD $0xa466; BYTE $0x30         // insertps    xmm4, dword [rsi - 92], 48
	LONG $0xfd280f41                                   // movaps    xmm7, xmm13
	QUAD $0xfffffe44ae100ff3                           // movss    xmm5, dword [rsi - 444]
	QUAD $0xfffec4ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 316], 16
	QUAD $0xffff44ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 188], 32
	LONG $0x01fcc20f                                   // cmpltps    xmm7, xmm4
	LONG $0x213a0f66; WORD $0xc46e; BYTE $0x30         // insertps    xmm5, dword [rsi - 60], 48
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	QUAD $0xfffffe6486100ff3                           // movss    xmm0, dword [rsi - 412]
	QUAD $0xfffee486213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 284], 16
	QUAD $0xffff6486213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 156], 32
	LONG $0x01f5c20f                                   // cmpltps    xmm6, xmm5
	LONG $0x213a0f66; WORD $0xe446; BYTE $0x30         // insertps    xmm0, dword [rsi - 28], 48
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x01e0c20f                                   // cmpltps    xmm4, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc2c20f41; BYTE $0x01                       // cmpltps    xmm0, xmm10
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0x6f0f4466; BYTE $0xf0                       // movdqa    xmm14, xmm0
	LONG $0xdb0f4566; BYTE $0xf7                       // pand    xmm14, xmm15
	LONG $0xf80f4466; BYTE $0xf0                       // psubb    xmm14, xmm0
	QUAD $0xfffe2096100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 480]
	QUAD $0xfea096213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 352], 16
	LONG $0xdb0f4566; BYTE $0xe7                       // pand    xmm12, xmm15
	QUAD $0xff2096213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 224], 32
	LONG $0xeb0f4566; BYTE $0xf4                       // por    xmm14, xmm12
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xe9c20f41; BYTE $0x01                       // cmpltps    xmm5, xmm9
	QUAD $0x30a056213a0f4466                           // insertps    xmm10, dword [rsi - 96], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02                       // psllw    xmm5, 2
	LONG $0x456f0f66; BYTE $0x10                       // movdqa    xmm0, oword 16[rbp] /* [rip + .LCPI7_1] */
	LONG $0xe8db0f66                                   // pand    xmm5, xmm0
	LONG $0xeb0f4166; BYTE $0xee                       // por    xmm5, xmm14
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c1c20f                                   // cmpltps    xmm0, xmm1
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0xc8c20f41; BYTE $0x01                       // cmpltps    xmm1, xmm8
	QUAD $0xfffe288e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 472]
	QUAD $0xfea88e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 344], 16
	QUAD $0xff288e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 216], 32
	QUAD $0x30a84e213a0f4466                           // insertps    xmm9, dword [rsi - 88], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0x6f0f4466; WORD $0x2075                     // movdqa    xmm14, oword 32[rbp] /* [rip + .LCPI7_2] */
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x6f0f4466; WORD $0x3075                     // movdqa    xmm14, oword 48[rbp] /* [rip + .LCPI7_3] */
	LONG $0xdb0f4166; BYTE $0xce                       // pand    xmm1, xmm14
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffe2ca6100f44f3; BYTE $0xff               // movss    xmm12, dword [rsi - 468]
	QUAD $0xfeaca6213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm12, dword [rsi - 340], 16
	QUAD $0xff2ca6213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm12, dword [rsi - 212], 32
	QUAD $0x30ac66213a0f4466                           // insertps    xmm12, dword [rsi - 84], 48
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c2c20f                                   // cmpltps    xmm0, xmm2
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0x01ebc20f                                   // cmpltps    xmm5, xmm3
	QUAD $0xfffffe3096100ff3                           // movss    xmm2, dword [rsi - 464]
	QUAD $0xfffeb096213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 336], 16
	QUAD $0xffff3096213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 208], 32
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0x213a0f66; WORD $0xb056; BYTE $0x30         // insertps    xmm2, dword [rsi - 80], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0x6f0f4466; WORD $0x4075                     // movdqa    xmm14, oword 64[rbp] /* [rip + .LCPI7_4] */
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x06                       // psllw    xmm5, 6
	LONG $0x5d6f0f66; BYTE $0x50                       // movdqa    xmm3, oword 80[rbp] /* [rip + .LCPI7_5] */
	LONG $0xebdb0f66                                   // pand    xmm5, xmm3
	LONG $0xe8eb0f66                                   // por    xmm5, xmm0
	LONG $0xc5280f45                                   // movaps    xmm8, xmm13
	LONG $0xc2c20f45; BYTE $0x01                       // cmpltps    xmm8, xmm10
	QUAD $0xfffffe349e100ff3                           // movss    xmm3, dword [rsi - 460]
	QUAD $0xfffeb49e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 332], 16
	QUAD $0xffff349e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 204], 32
	LONG $0x213a0f66; WORD $0xb45e; BYTE $0x30         // insertps    xmm3, dword [rsi - 76], 48
	LONG $0x6b0f4566; BYTE $0xc0                       // packssdw    xmm8, xmm8
	LONG $0x630f4566; BYTE $0xc0                       // packsswb    xmm8, xmm8
	LONG $0x710f4166; WORD $0x07f0                     // psllw    xmm8, 7
	LONG $0x456f0f66; BYTE $0x60                       // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xdb0f4466; BYTE $0xc0                       // pand    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc5                       // por    xmm8, xmm5
	QUAD $0xfffe3896100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 456]
	QUAD $0xfeb896213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 328], 16
	QUAD $0xff3896213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 200], 32
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	QUAD $0x30b856213a0f4466                           // insertps    xmm10, dword [rsi - 72], 48
	LONG $0xeb0f4466; BYTE $0xc1                       // por    xmm8, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc1c20f41; BYTE $0x01                       // cmpltps    xmm0, xmm9
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xc86f0f66                                   // movdqa    xmm1, xmm0
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xc8f80f66                                   // psubb    xmm1, xmm0
	QUAD $0xfffe3c8e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 452]
	QUAD $0xfebc8e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 324], 16
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	QUAD $0xff3c8e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 196], 32
	LONG $0xcfeb0f66                                   // por    xmm1, xmm7
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xecc20f41; BYTE $0x01                       // cmpltps    xmm5, xmm12
	QUAD $0x30bc4e213a0f4466                           // insertps    xmm9, dword [rsi - 68], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02                       // psllw    xmm5, 2
	LONG $0x6ddb0f66; BYTE $0x10                       // pand    xmm5, oword 16[rbp] /* [rip + .LCPI7_1] */
	LONG $0xe9eb0f66                                   // por    xmm5, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c2c20f                                   // cmpltps    xmm0, xmm2
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x01cbc20f                                   // cmpltps    xmm1, xmm3
	QUAD $0xfffffe409e100ff3                           // movss    xmm3, dword [rsi - 448]
	QUAD $0xfffec09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 320], 16
	QUAD $0xffff409e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 192], 32
	LONG $0x213a0f66; WORD $0xc05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 64], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0x6f0f4466; WORD $0x2065                     // movdqa    xmm12, oword 32[rbp] /* [rip + .LCPI7_2] */
	LONG $0xdb0f4166; BYTE $0xc4                       // pand    xmm0, xmm12
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x4ddb0f66; BYTE $0x30                       // pand    xmm1, oword 48[rbp] /* [rip + .LCPI7_3] */
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffffe4896100ff3                           // movss    xmm2, dword [rsi - 440]
	QUAD $0xfffec896213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 312], 16
	QUAD $0xffff4896213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 184], 32
	LONG $0x213a0f66; WORD $0xc856; BYTE $0x30         // insertps    xmm2, dword [rsi - 56], 48
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc2c20f41; BYTE $0x01                       // cmpltps    xmm0, xmm10
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xe9c20f41; BYTE $0x01                       // cmpltps    xmm5, xmm9
	QUAD $0xfffffe4cbe100ff3                           // movss    xmm7, dword [rsi - 436]
	QUAD $0xfffeccbe213a0f66; WORD $0x10ff             // insertps    xmm7, dword [rsi - 308], 16
	QUAD $0xffff4cbe213a0f66; WORD $0x20ff             // insertps    xmm7, dword [rsi - 180], 32
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0x213a0f66; WORD $0xcc7e; BYTE $0x30         // insertps    xmm7, dword [rsi - 52], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x06                       // psllw    xmm5, 6
	LONG $0x6ddb0f66; BYTE $0x50                       // pand    xmm5, oword 80[rbp] /* [rip + .LCPI7_5] */
	LONG $0xe8eb0f66                                   // por    xmm5, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c3c20f                                   // cmpltps    xmm0, xmm3
	QUAD $0xfffffe509e100ff3                           // movss    xmm3, dword [rsi - 432]
	QUAD $0xfffed09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 304], 16
	QUAD $0xffff509e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 176], 32
	LONG $0x213a0f66; WORD $0xd05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 48], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xf0710f66; BYTE $0x07                       // psllw    xmm0, 7
	LONG $0x6f0f4466; WORD $0x6055                     // movdqa    xmm10, oword 96[rbp] /* [rip + .LCPI7_6] */
	LONG $0xdb0f4166; BYTE $0xc2                       // pand    xmm0, xmm10
	LONG $0xc5eb0f66                                   // por    xmm0, xmm5
	QUAD $0xfffffe54ae100ff3                           // movss    xmm5, dword [rsi - 428]
	QUAD $0xfffed4ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 300], 16
	QUAD $0xffff54ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 172], 32
	LONG $0x213a0f66; WORD $0xd46e; BYTE $0x30         // insertps    xmm5, dword [rsi - 44], 48
	LONG $0xc1eb0f66                                   // por    xmm0, xmm1
	QUAD $0xfffe588e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 424]
	QUAD $0xfed88e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 296], 16
	QUAD $0xff588e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 168], 32
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	QUAD $0x30d84e213a0f4466                           // insertps    xmm9, dword [rsi - 40], 48
	LONG $0x620f4466; BYTE $0xc0                       // punpckldq    xmm8, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c2c20f                                   // cmpltps    xmm0, xmm2
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xc86f0f66                                   // movdqa    xmm1, xmm0
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xc8f80f66                                   // psubb    xmm1, xmm0
	QUAD $0xfffffe5c96100ff3                           // movss    xmm2, dword [rsi - 420]
	QUAD $0xfffedc96213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 292], 16
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	QUAD $0xffff5c96213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 164], 32
	LONG $0xceeb0f66                                   // por    xmm1, xmm6
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	LONG $0x01f7c20f                                   // cmpltps    xmm6, xmm7
	LONG $0x213a0f66; WORD $0xdc56; BYTE $0x30         // insertps    xmm2, dword [rsi - 36], 48
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02                       // psllw    xmm6, 2
	LONG $0x456f0f66; BYTE $0x10                       // movdqa    xmm0, oword 16[rbp] /* [rip + .LCPI7_1] */
	LONG $0xf0db0f66                                   // pand    xmm6, xmm0
	LONG $0xf1eb0f66                                   // por    xmm6, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c3c20f                                   // cmpltps    xmm0, xmm3
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x01cdc20f                                   // cmpltps    xmm1, xmm5
	QUAD $0xfffffe609e100ff3                           // movss    xmm3, dword [rsi - 416]
	QUAD $0xfffee09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 288], 16
	QUAD $0xffff609e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 160], 32
	LONG $0x213a0f66; WORD $0xe05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 32], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0xdb0f4166; BYTE $0xc4                       // pand    xmm0, xmm12
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x6f0f4466; WORD $0x3065                     // movdqa    xmm12, oword 48[rbp] /* [rip + .LCPI7_3] */
	LONG $0xdb0f4166; BYTE $0xcc                       // pand    xmm1, xmm12
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffffe68ae100ff3                           // movss    xmm5, dword [rsi - 408]
	QUAD $0xfffee8ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 280], 16
	QUAD $0xffff68ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 152], 32
	LONG $0x213a0f66; WORD $0xe86e; BYTE $0x30         // insertps    xmm5, dword [rsi - 24], 48
	LONG $0xceeb0f66                                   // por    xmm1, xmm6
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc1c20f41; BYTE $0x01                       // cmpltps    xmm0, xmm9
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	LONG $0x01f2c20f                                   // cmpltps    xmm6, xmm2
	QUAD $0xfffffe6cbe100ff3                           // movss    xmm7, dword [rsi - 404]
	QUAD $0xfffeecbe213a0f66; WORD $0x10ff             // insertps    xmm7, dword [rsi - 276], 16
	QUAD $0xffff6cbe213a0f66; WORD $0x20ff             // insertps    xmm7, dword [rsi - 148], 32
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0x213a0f66; WORD $0xec7e; BYTE $0x30         // insertps    xmm7, dword [rsi - 20], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x06                       // psllw    xmm6, 6
	LONG $0x6f0f4466; WORD $0x504d                     // movdqa    xmm9, oword 80[rbp] /* [rip + .LCPI7_5] */
	LONG $0xdb0f4166; BYTE $0xf1                       // pand    xmm6, xmm9
	LONG $0xf0eb0f66                                   // por    xmm6, xmm0
	LONG $0xd5280f41                                   // movaps    xmm2, xmm13
	LONG $0x01d3c20f                                   // cmpltps    xmm2, xmm3
	QUAD $0xfffffe7086100ff3                           // movss    xmm0, dword [rsi - 400]
	QUAD $0xfffef086213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 272], 16
	QUAD $0xffff7086213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 144], 32
	LONG $0x213a0f66; WORD $0xf046; BYTE $0x30         // insertps    xmm0, dword [rsi - 16], 48
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07                       // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd2                       // pand    xmm2, xmm10
	LONG $0xd6eb0f66                                   // por    xmm2, xmm6
	QUAD $0xfffffe74b6100ff3                           // movss    xmm6, dword [rsi - 396]
	QUAD $0xfffef4b6213a0f66; WORD $0x10ff             // insertps    xmm6, dword [rsi - 268], 16
	QUAD $0xffff74b6213a0f66; WORD $0x20ff             // insertps    xmm6, dword [rsi - 140], 32
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0x213a0f66; WORD $0xf476; BYTE $0x30         // insertps    xmm6, dword [rsi - 12], 48
	LONG $0xd1eb0f66                                   // por    xmm2, xmm1
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x01cdc20f                                   // cmpltps    xmm1, xmm5
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                                   // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xe9f80f66                                   // psubb    xmm5, xmm1
	QUAD $0xfffffe789e100ff3                           // movss    xmm3, dword [rsi - 392]
	QUAD $0xfffef89e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 264], 16
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	QUAD $0xffff789e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 136], 32
	LONG $0xeceb0f66                                   // por    xmm5, xmm4
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x01e7c20f                                   // cmpltps    xmm4, xmm7
	LONG $0x213a0f66; WORD $0xf85e; BYTE $0x30         // insertps    xmm3, dword [rsi - 8], 48
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x02                       // psllw    xmm4, 2
	LONG $0x65db0f66; BYTE $0x10                       // pand    xmm4, oword 16[rbp] /* [rip + .LCPI7_1] */
	LONG $0xe5eb0f66                                   // por    xmm4, xmm5
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0x01e8c20f                                   // cmpltps    xmm5, xmm0
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x01cec20f                                   // cmpltps    xmm1, xmm6
	QUAD $0xfffffe7c86100ff3                           // movss    xmm0, dword [rsi - 388]
	QUAD $0xfffefc86213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 260], 16
	QUAD $0xffff7c86213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 132], 32
	LONG $0x213a0f66; WORD $0xfc46; BYTE $0x30         // insertps    xmm0, dword [rsi - 4], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03                       // psllw    xmm5, 3
	LONG $0x6ddb0f66; BYTE $0x20                       // pand    xmm5, oword 32[rbp] /* [rip + .LCPI7_2] */
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0xdb0f4166; BYTE $0xcc                       // pand    xmm1, xmm12
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	QUAD $0xfffffe80ae100ff3                           // movss    xmm5, dword [rsi - 384]
	QUAD $0xffff00ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 256], 16
	LONG $0x213a0f66; WORD $0x806e; BYTE $0x20         // insertps    xmm5, dword [rsi - 128], 32
	LONG $0xcceb0f66                                   // por    xmm1, xmm4
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x01e3c20f                                   // cmpltps    xmm4, xmm3
	LONG $0xdd280f41                                   // movaps    xmm3, xmm13
	LONG $0x01d8c20f                                   // cmpltps    xmm3, xmm0
	LONG $0x213a0f66; WORD $0x302e                     // insertps    xmm5, dword [rsi], 48
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x05                       // psllw    xmm4, 5
	LONG $0xdb0f4166; BYTE $0xe6                       // pand    xmm4, xmm14
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06                       // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xd9                       // pand    xmm3, xmm9
	LONG $0xdceb0f66                                   // por    xmm3, xmm4
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x01c5c20f                                   // cmpltps    xmm0, xmm5
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xf0710f66; BYTE $0x07                       // psllw    xmm0, 7
	LONG $0xdb0f4166; BYTE $0xc2                       // pand    xmm0, xmm10
	LONG $0xc3eb0f66                                   // por    xmm0, xmm3
	LONG $0xc1eb0f66                                   // por    xmm0, xmm1
	LONG $0xd0620f66                                   // punpckldq    xmm2, xmm0
	LONG $0x600f4466; BYTE $0xc2                       // punpcklbw    xmm8, xmm2
	LONG $0x380f4466; WORD $0x4500; BYTE $0x70         // pshufb    xmm8, oword 112[rbp] /* [rip + .LCPI7_7] */
	LONG $0x7f0f44f3; WORD $0x8f04                     // movdqu    oword [rdi + 4*rcx], xmm8
	LONG $0x04c18348                                   // add    rcx, 4
	LONG $0x00c68148; WORD $0x0002; BYTE $0x00         // add    rsi, 512
	WORD $0x3948; BYTE $0xc8                           // cmp    rax, rcx
	JNE  LBB7_183
	WORD $0x3949; BYTE $0xc2                           // cmp    r10, rax
	JNE  LBB7_185
	JMP  LBB7_188

DATA LCDATA6<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA6<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA6<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA6<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA6<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA6<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA6<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA6<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA6<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA6<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA6<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA6<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA6<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA6<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA6<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA6<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA6<>+0x080(SB)/8, $0x0101010101010101
DATA LCDATA6<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA6<>+0x090(SB)/8, $0x0f070e060d050c04
DATA LCDATA6<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA6<>+0x0a0(SB)/8, $0x0101010101010101
DATA LCDATA6<>+0x0a8(SB)/8, $0x0101010101010101
DATA LCDATA6<>+0x0b0(SB)/8, $0x0404040404040404
DATA LCDATA6<>+0x0b8(SB)/8, $0x0404040404040404
DATA LCDATA6<>+0x0c0(SB)/8, $0x0808080808080808
DATA LCDATA6<>+0x0c8(SB)/8, $0x0808080808080808
DATA LCDATA6<>+0x0d0(SB)/8, $0x1010101010101010
DATA LCDATA6<>+0x0d8(SB)/8, $0x1010101010101010
DATA LCDATA6<>+0x0e0(SB)/8, $0x2020202020202020
DATA LCDATA6<>+0x0e8(SB)/8, $0x2020202020202020
DATA LCDATA6<>+0x0f0(SB)/8, $0x4040404040404040
DATA LCDATA6<>+0x0f8(SB)/8, $0x4040404040404040
DATA LCDATA6<>+0x100(SB)/8, $0xffffffffffffffff
DATA LCDATA6<>+0x108(SB)/8, $0xffffffffffffffff
GLOBL LCDATA6<>(SB), 8, $272

TEXT ·_comparison_greater_scalar_arr_sse4(SB), $360-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 336(SP)
	LEAQ LCDATA6<>(SB), BP

	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	WORD $0x8949; BYTE $0xce // mov    r14, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB8_16
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB8_31
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB8_81
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB8_92
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB8_182
	WORD $0x8b44; BYTE $0x2e // mov    r13d, dword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_9
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_7:
	WORD $0x3944; BYTE $0x2a                   // cmp    dword [rdx], r13d
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	WORD $0xf619                               // sbb    esi, esi
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB8_7
	LONG $0x01c68349                           // add    r14, 1

LBB8_9:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_13
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11

LBB8_11:
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	QUAD $0x000000c02494970f                   // seta    byte [rsp + 192]
	LONG $0x046a3b44                           // cmp    r13d, dword [rdx + 4]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x086a3b44                           // cmp    r13d, dword [rdx + 8]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x0c6a3b44                           // cmp    r13d, dword [rdx + 12]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x106a3b44                           // cmp    r13d, dword [rdx + 16]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x146a3b44                           // cmp    r13d, dword [rdx + 20]
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x186a3b44                           // cmp    r13d, dword [rdx + 24]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x1c6a3b44                           // cmp    r13d, dword [rdx + 28]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x206a3b44                           // cmp    r13d, dword [rdx + 32]
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x246a3b44                           // cmp    r13d, dword [rdx + 36]
	LONG $0xd6970f40                           // seta    sil
	LONG $0x286a3b44                           // cmp    r13d, dword [rdx + 40]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x2c6a3b44                           // cmp    r13d, dword [rdx + 44]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x306a3b44                           // cmp    r13d, dword [rdx + 48]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x346a3b44                           // cmp    r13d, dword [rdx + 52]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x386a3b44                           // cmp    r13d, dword [rdx + 56]
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x3c6a3b44                           // cmp    r13d, dword [rdx + 60]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x406a3b44                           // cmp    r13d, dword [rdx + 64]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x446a3b44                           // cmp    r13d, dword [rdx + 68]
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x486a3b44                           // cmp    r13d, dword [rdx + 72]
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x4c6a3b44                           // cmp    r13d, dword [rdx + 76]
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0x506a3b44                           // cmp    r13d, dword [rdx + 80]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0x546a3b44                           // cmp    r13d, dword [rdx + 84]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0x586a3b44                           // cmp    r13d, dword [rdx + 88]
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x5c6a3b44                           // cmp    r13d, dword [rdx + 92]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x606a3b44                           // cmp    r13d, dword [rdx + 96]
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0x646a3b44                           // cmp    r13d, dword [rdx + 100]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0x686a3b44                           // cmp    r13d, dword [rdx + 104]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0x6c6a3b44                           // cmp    r13d, dword [rdx + 108]
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x706a3b44                           // cmp    r13d, dword [rdx + 112]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x746a3b44                           // cmp    r13d, dword [rdx + 116]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x786a3b44                           // cmp    r13d, dword [rdx + 120]
	LONG $0x2414970f                           // seta    byte [rsp]
	LONG $0x7c6a3b44                           // cmp    r13d, dword [rdx + 124]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe                   // or    r14b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x40               // movzx    esi, byte [rsp + 64]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x240cb60f                           // movzx    ecx, byte [rsp]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	WORD $0xc308                               // or    bl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                           // mov    byte [r14 + 3], bl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_11
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000f0249c8b4c                   // mov    r11, qword [rsp + 240]

LBB8_13:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_162
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB8_164

LBB8_16:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB8_45
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB8_104
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB8_115
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB8_182
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff2         // movsd    xmm0, qword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_24
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_22:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	WORD $0x970f; BYTE $0xd3     // seta    bl
	LONG $0x08c28348             // add    rdx, 8
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x363c8841             // mov    byte [r14 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB8_22
	LONG $0x01c68349             // add    r14, 1

LBB8_24:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_28
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11
	QUAD $0x000000c0249c894c // mov    qword [rsp + 192], r11

LBB8_26:
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	LONG $0xd6970f40                           // seta    sil
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	LONG $0xd7970f41                           // seta    r15b
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	LONG $0x2414970f                           // seta    byte [rsp]
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x78               // add    r8b, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x68               // add    sil, byte [rsp + 104]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf9                   // or    r9b, dil
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	QUAD $0x000000b024b4b60f                   // movzx    esi, byte [rsp + 176]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x40               // movzx    esi, byte [rsp + 64]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x240cb60f                           // movzx    ecx, byte [rsp]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	WORD $0xc308                               // or    bl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                           // mov    byte [r14 + 3], bl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB8_26
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000d0249c8b4c                   // mov    r11, qword [rsp + 208]

LBB8_28:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_166
	WORD $0xff31             // xor    edi, edi
	JMP  LBB8_168

LBB8_31:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB8_58
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB8_182
	WORD $0x8a44; BYTE $0x1e // mov    r11b, byte [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_37
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_35:
	WORD $0x3a44; BYTE $0x1a     // cmp    r11b, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x363c8841             // mov    byte [r14 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB8_35
	LONG $0x01c68349             // add    r14, 1

LBB8_37:
	LONG $0x05ffc149         // sar    r15, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_127
	LONG $0x10ff8349         // cmp    r15, 16
	LONG $0x241c8844         // mov    byte [rsp], r11b
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x0000010024bc894c // mov    qword [rsp + 256], r15
	JB   LBB8_41
	WORD $0x894c; BYTE $0xf8 // mov    rax, r15
	LONG $0x05e0c148         // shl    rax, 5
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB8_191
	LONG $0xbe048d4b         // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc2 // cmp    rdx, rax
	JAE  LBB8_191

LBB8_41:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x2474894c; BYTE $0x58 // mov    qword [rsp + 88], r14

LBB8_42:
	WORD $0x894d; BYTE $0xfe // mov    r14, r15
	QUAD $0x000000e824b42b4c // sub    r14, qword [rsp + 232]
	QUAD $0x000000d024b4894c // mov    qword [rsp + 208], r14

LBB8_43:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3a44; BYTE $0x1e                   // cmp    r11b, byte [rsi]
	QUAD $0x000000c024949f0f                   // setg    byte [rsp + 192]
	LONG $0x015e3a44                           // cmp    r11b, byte [rsi + 1]
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x025e3a44                           // cmp    r11b, byte [rsi + 2]
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x03                   // cmp    al, byte [rsi + 3]
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x04                   // cmp    al, byte [rsi + 4]
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x05                   // cmp    al, byte [rsi + 5]
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x06                   // cmp    al, byte [rsi + 6]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x07                   // cmp    al, byte [rsi + 7]
	LONG $0xd59f0f41                           // setg    r13b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x08                   // cmp    al, byte [rsi + 8]
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x09                   // cmp    al, byte [rsi + 9]
	LONG $0xd69f0f40                           // setg    sil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0a                   // cmp    al, byte [rcx + 10]
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0b                   // cmp    al, byte [rcx + 11]
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0c                   // cmp    al, byte [rcx + 12]
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0d                   // cmp    al, byte [rcx + 13]
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0e                   // cmp    al, byte [rcx + 14]
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0f                   // cmp    al, byte [rcx + 15]
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x10                   // cmp    dl, byte [rcx + 16]
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x11                   // cmp    dl, byte [rcx + 17]
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x12                   // cmp    dl, byte [rcx + 18]
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x13                   // cmp    dl, byte [rcx + 19]
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x14                   // cmp    dl, byte [rcx + 20]
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x15                   // cmp    dl, byte [rcx + 21]
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x16                   // cmp    dl, byte [rcx + 22]
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x17                   // cmp    dl, byte [rcx + 23]
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x18                   // cmp    dl, byte [rcx + 24]
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x19                   // cmp    dl, byte [rcx + 25]
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1a                   // cmp    dl, byte [rcx + 26]
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1b                   // cmp    dl, byte [rcx + 27]
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1c                   // cmp    dl, byte [rcx + 28]
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1d                   // cmp    dl, byte [rcx + 29]
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1e                   // cmp    dl, byte [rcx + 30]
	QUAD $0x0000008024949f0f                   // setg    byte [rsp + 128]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1f                   // cmp    dl, byte [rcx + 31]
	WORD $0x9f0f; BYTE $0xd2                   // setg    dl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x1cb60f44; BYTE $0x24               // movzx    r11d, byte [rsp]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xfb                   // or    bl, r15b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xce                   // or    r14b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xdb00                               // add    bl, bl
	LONG $0xb0249c02; WORD $0x0000; BYTE $0x00 // add    bl, byte [rsp + 176]
	WORD $0xde89                               // mov    esi, ebx
	QUAD $0x00000090249cb60f                   // movzx    ebx, byte [rsp + 144]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x247c8b48; BYTE $0x58               // mov    rdi, qword [rsp + 88]
	WORD $0x8844; BYTE $0x2f                   // mov    byte [rdi], r13b
	LONG $0x2474b60f; BYTE $0x48               // movzx    esi, byte [rsp + 72]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xf2                   // or    r10b, sil
	WORD $0x4788; BYTE $0x01                   // mov    byte [rdi + 1], al
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02578844                           // mov    byte [rdi + 2], r10b
	WORD $0x5788; BYTE $0x03                   // mov    byte [rdi + 3], dl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c78348                           // add    rdi, 4
	LONG $0x247c8948; BYTE $0x58               // mov    qword [rsp + 88], rdi
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_43
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	JMP  LBB8_128

LBB8_45:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB8_70
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB8_182
	WORD $0x8b4c; BYTE $0x2e // mov    r13, qword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_51
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_49:
	WORD $0x394c; BYTE $0x2a                   // cmp    qword [rdx], r13
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	WORD $0xf619                               // sbb    esi, esi
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB8_49
	LONG $0x01c68349                           // add    r14, 1

LBB8_51:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_55
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11

LBB8_53:
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	QUAD $0x000000c02494970f                   // seta    byte [rsp + 192]
	LONG $0x086a3b4c                           // cmp    r13, qword [rdx + 8]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x106a3b4c                           // cmp    r13, qword [rdx + 16]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x186a3b4c                           // cmp    r13, qword [rdx + 24]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x206a3b4c                           // cmp    r13, qword [rdx + 32]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x286a3b4c                           // cmp    r13, qword [rdx + 40]
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x306a3b4c                           // cmp    r13, qword [rdx + 48]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x386a3b4c                           // cmp    r13, qword [rdx + 56]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x406a3b4c                           // cmp    r13, qword [rdx + 64]
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x486a3b4c                           // cmp    r13, qword [rdx + 72]
	LONG $0xd6970f40                           // seta    sil
	LONG $0x506a3b4c                           // cmp    r13, qword [rdx + 80]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x586a3b4c                           // cmp    r13, qword [rdx + 88]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x606a3b4c                           // cmp    r13, qword [rdx + 96]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x686a3b4c                           // cmp    r13, qword [rdx + 104]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x706a3b4c                           // cmp    r13, qword [rdx + 112]
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x786a3b4c                           // cmp    r13, qword [rdx + 120]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	LONG $0x80aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 128]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x88aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 136]
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x90aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 144]
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x98aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 152]
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0xa0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 160]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0xa8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 168]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0xb0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 176]
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0xb8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 184]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0xc0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 192]
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0xc8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 200]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0xd0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 208]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0xd8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 216]
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0xe0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 224]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0xe8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 232]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0xf0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 240]
	LONG $0x2414970f                           // seta    byte [rsp]
	LONG $0xf8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 248]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe                   // or    r14b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x40               // movzx    esi, byte [rsp + 64]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x240cb60f                           // movzx    ecx, byte [rsp]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	WORD $0xc308                               // or    bl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                           // mov    byte [r14 + 3], bl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_53
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000f0249c8b4c                   // mov    r11, qword [rsp + 240]

LBB8_55:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_143
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB8_145

LBB8_58:
	WORD $0x8a44; BYTE $0x1e // mov    r11b, byte [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_62
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_60:
	WORD $0x3844; BYTE $0x1a     // cmp    byte [rdx], r11b
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	WORD $0xf619                 // sbb    esi, esi
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xce     // xor    sil, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2040; BYTE $0xf3     // and    bl, sil
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB8_60
	LONG $0x01c68349             // add    r14, 1

LBB8_62:
	LONG $0x05ffc149         // sar    r15, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_131
	LONG $0x10ff8349         // cmp    r15, 16
	LONG $0x241c8844         // mov    byte [rsp], r11b
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x0000010024bc894c // mov    qword [rsp + 256], r15
	JB   LBB8_66
	WORD $0x894c; BYTE $0xf8 // mov    rax, r15
	LONG $0x05e0c148         // shl    rax, 5
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB8_194
	LONG $0xbe048d4b         // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc2 // cmp    rdx, rax
	JAE  LBB8_194

LBB8_66:
	WORD $0xc031                 // xor    eax, eax
	QUAD $0x000000e824848948     // mov    qword [rsp + 232], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	LONG $0x2474894c; BYTE $0x30 // mov    qword [rsp + 48], r14

LBB8_67:
	WORD $0x894d; BYTE $0xfe // mov    r14, r15
	QUAD $0x000000e824b42b4c // sub    r14, qword [rsp + 232]
	QUAD $0x000000d024b4894c // mov    qword [rsp + 208], r14

LBB8_68:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3a44; BYTE $0x1e                   // cmp    r11b, byte [rsi]
	QUAD $0x000000c02494970f                   // seta    byte [rsp + 192]
	LONG $0x015e3a44                           // cmp    r11b, byte [rsi + 1]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x025e3a44                           // cmp    r11b, byte [rsi + 2]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x03                   // cmp    al, byte [rsi + 3]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x04                   // cmp    al, byte [rsi + 4]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x05                   // cmp    al, byte [rsi + 5]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x06                   // cmp    al, byte [rsi + 6]
	WORD $0x970f; BYTE $0xd3                   // seta    bl
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x07                   // cmp    al, byte [rsi + 7]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x08                   // cmp    al, byte [rsi + 8]
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x463a; BYTE $0x09                   // cmp    al, byte [rsi + 9]
	LONG $0xd6970f40                           // seta    sil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0a                   // cmp    al, byte [rcx + 10]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0b                   // cmp    al, byte [rcx + 11]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0c                   // cmp    al, byte [rcx + 12]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0d                   // cmp    al, byte [rcx + 13]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0e                   // cmp    al, byte [rcx + 14]
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x413a; BYTE $0x0f                   // cmp    al, byte [rcx + 15]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x10                   // cmp    dl, byte [rcx + 16]
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x11                   // cmp    dl, byte [rcx + 17]
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x12                   // cmp    dl, byte [rcx + 18]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x13                   // cmp    dl, byte [rcx + 19]
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x14                   // cmp    dl, byte [rcx + 20]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x15                   // cmp    dl, byte [rcx + 21]
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x16                   // cmp    dl, byte [rcx + 22]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x17                   // cmp    dl, byte [rcx + 23]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x18                   // cmp    dl, byte [rcx + 24]
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x19                   // cmp    dl, byte [rcx + 25]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1a                   // cmp    dl, byte [rcx + 26]
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1b                   // cmp    dl, byte [rcx + 27]
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1c                   // cmp    dl, byte [rcx + 28]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1d                   // cmp    dl, byte [rcx + 29]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1e                   // cmp    dl, byte [rcx + 30]
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	LONG $0x2414b60f                           // movzx    edx, byte [rsp]
	WORD $0x513a; BYTE $0x1f                   // cmp    dl, byte [rcx + 31]
	WORD $0x970f; BYTE $0xd2                   // seta    dl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x1cb60f44; BYTE $0x24               // movzx    r11d, byte [rsp]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	LONG $0x245cb60f; BYTE $0x78               // movzx    ebx, byte [rsp + 120]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xfb                   // or    bl, r15b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x245cb60f; BYTE $0x38               // movzx    ebx, byte [rsp + 56]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xce                   // or    r14b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x0841; BYTE $0xdd                   // or    r13b, bl
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x245cb60f; BYTE $0x60               // movzx    ebx, byte [rsp + 96]
	WORD $0xdb00                               // add    bl, bl
	LONG $0xb0249c02; WORD $0x0000; BYTE $0x00 // add    bl, byte [rsp + 176]
	WORD $0xde89                               // mov    esi, ebx
	QUAD $0x00000090249cb60f                   // movzx    ebx, byte [rsp + 144]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	QUAD $0x000000a0249cb60f                   // movzx    ebx, byte [rsp + 160]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	WORD $0x8844; BYTE $0x2f                   // mov    byte [rdi], r13b
	LONG $0x2474b60f; BYTE $0x50               // movzx    esi, byte [rsp + 80]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xf2                   // or    r10b, sil
	WORD $0x4788; BYTE $0x01                   // mov    byte [rdi + 1], al
	WORD $0x0841; BYTE $0xda                   // or    r10b, bl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x40244402                           // add    al, byte [rsp + 64]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02578844                           // mov    byte [rdi + 2], r10b
	WORD $0x5788; BYTE $0x03                   // mov    byte [rdi + 3], dl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c78348                           // add    rdi, 4
	LONG $0x247c8948; BYTE $0x30               // mov    qword [rsp + 48], rdi
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_68
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	JMP  LBB8_132

LBB8_70:
	WORD $0x8b44; BYTE $0x2e // mov    r13d, dword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_74
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_72:
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x36               // movzx    r8d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x363c8841                           // mov    byte [r14 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB8_72
	LONG $0x01c68349                           // add    r14, 1

LBB8_74:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_78
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11

LBB8_76:
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	WORD $0x3b44; BYTE $0x2a                   // cmp    r13d, dword [rdx]
	QUAD $0x000000c024949f0f                   // setg    byte [rsp + 192]
	LONG $0x046a3b44                           // cmp    r13d, dword [rdx + 4]
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x086a3b44                           // cmp    r13d, dword [rdx + 8]
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x0c6a3b44                           // cmp    r13d, dword [rdx + 12]
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x106a3b44                           // cmp    r13d, dword [rdx + 16]
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x146a3b44                           // cmp    r13d, dword [rdx + 20]
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x186a3b44                           // cmp    r13d, dword [rdx + 24]
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x1c6a3b44                           // cmp    r13d, dword [rdx + 28]
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x206a3b44                           // cmp    r13d, dword [rdx + 32]
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x246a3b44                           // cmp    r13d, dword [rdx + 36]
	LONG $0xd69f0f40                           // setg    sil
	LONG $0x286a3b44                           // cmp    r13d, dword [rdx + 40]
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x2c6a3b44                           // cmp    r13d, dword [rdx + 44]
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x306a3b44                           // cmp    r13d, dword [rdx + 48]
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x346a3b44                           // cmp    r13d, dword [rdx + 52]
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x386a3b44                           // cmp    r13d, dword [rdx + 56]
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x3c6a3b44                           // cmp    r13d, dword [rdx + 60]
	WORD $0x9f0f; BYTE $0xd1                   // setg    cl
	LONG $0x406a3b44                           // cmp    r13d, dword [rdx + 64]
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x446a3b44                           // cmp    r13d, dword [rdx + 68]
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x486a3b44                           // cmp    r13d, dword [rdx + 72]
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0x4c6a3b44                           // cmp    r13d, dword [rdx + 76]
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0x506a3b44                           // cmp    r13d, dword [rdx + 80]
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0x546a3b44                           // cmp    r13d, dword [rdx + 84]
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0x586a3b44                           // cmp    r13d, dword [rdx + 88]
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0x5c6a3b44                           // cmp    r13d, dword [rdx + 92]
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0x606a3b44                           // cmp    r13d, dword [rdx + 96]
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0x646a3b44                           // cmp    r13d, dword [rdx + 100]
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0x686a3b44                           // cmp    r13d, dword [rdx + 104]
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0x6c6a3b44                           // cmp    r13d, dword [rdx + 108]
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0x706a3b44                           // cmp    r13d, dword [rdx + 112]
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0x746a3b44                           // cmp    r13d, dword [rdx + 116]
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0x786a3b44                           // cmp    r13d, dword [rdx + 120]
	LONG $0x24149f0f                           // setg    byte [rsp]
	LONG $0x7c6a3b44                           // cmp    r13d, dword [rdx + 124]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe                   // or    r14b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x40               // movzx    esi, byte [rsp + 64]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x240cb60f                           // movzx    ecx, byte [rsp]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	WORD $0xc308                               // or    bl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                           // mov    byte [r14 + 3], bl
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_76
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000f0249c8b4c                   // mov    r11, qword [rsp + 240]

LBB8_78:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_147
	WORD $0xff31             // xor    edi, edi
	JMP  LBB8_149

LBB8_81:
	LONG $0x2eb70f44         // movzx    r13d, word [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_85
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_83:
	LONG $0x2a394466                           // cmp    word [rdx], r13w
	LONG $0x02528d48                           // lea    rdx, [rdx + 2]
	WORD $0xf619                               // sbb    esi, esi
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB8_83
	LONG $0x01c68349                           // add    r14, 1

LBB8_85:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_89
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11

LBB8_87:
	QUAD $0x0000008024b4894c             // mov    qword [rsp + 128], r14
	LONG $0x2a3b4466                     // cmp    r13w, word [rdx]
	LONG $0x2454970f; BYTE $0x60         // seta    byte [rsp + 96]
	LONG $0x6a3b4466; BYTE $0x02         // cmp    r13w, word [rdx + 2]
	LONG $0xd7970f40                     // seta    dil
	LONG $0x6a3b4466; BYTE $0x04         // cmp    r13w, word [rdx + 4]
	LONG $0xd6970f41                     // seta    r14b
	LONG $0x6a3b4466; BYTE $0x06         // cmp    r13w, word [rdx + 6]
	QUAD $0x000000c02494970f             // seta    byte [rsp + 192]
	LONG $0x6a3b4466; BYTE $0x08         // cmp    r13w, word [rdx + 8]
	LONG $0x2454970f; BYTE $0x78         // seta    byte [rsp + 120]
	LONG $0x6a3b4466; BYTE $0x0a         // cmp    r13w, word [rdx + 10]
	LONG $0x2454970f; BYTE $0x68         // seta    byte [rsp + 104]
	LONG $0x6a3b4466; BYTE $0x0c         // cmp    r13w, word [rdx + 12]
	WORD $0x970f; BYTE $0xd0             // seta    al
	LONG $0x6a3b4466; BYTE $0x0e         // cmp    r13w, word [rdx + 14]
	LONG $0xd3970f41                     // seta    r11b
	LONG $0x6a3b4466; BYTE $0x10         // cmp    r13w, word [rdx + 16]
	LONG $0x2454970f; BYTE $0x38         // seta    byte [rsp + 56]
	LONG $0x6a3b4466; BYTE $0x12         // cmp    r13w, word [rdx + 18]
	LONG $0xd6970f40                     // seta    sil
	LONG $0x6a3b4466; BYTE $0x14         // cmp    r13w, word [rdx + 20]
	LONG $0xd0970f41                     // seta    r8b
	LONG $0x6a3b4466; BYTE $0x16         // cmp    r13w, word [rdx + 22]
	LONG $0xd1970f41                     // seta    r9b
	LONG $0x6a3b4466; BYTE $0x18         // cmp    r13w, word [rdx + 24]
	LONG $0xd2970f41                     // seta    r10b
	LONG $0x6a3b4466; BYTE $0x1a         // cmp    r13w, word [rdx + 26]
	LONG $0xd4970f41                     // seta    r12b
	LONG $0x6a3b4466; BYTE $0x1c         // cmp    r13w, word [rdx + 28]
	LONG $0x2454970f; BYTE $0x70         // seta    byte [rsp + 112]
	LONG $0x6a3b4466; BYTE $0x1e         // cmp    r13w, word [rdx + 30]
	WORD $0x970f; BYTE $0xd1             // seta    cl
	LONG $0x6a3b4466; BYTE $0x20         // cmp    r13w, word [rdx + 32]
	LONG $0x2454970f; BYTE $0x28         // seta    byte [rsp + 40]
	LONG $0x6a3b4466; BYTE $0x22         // cmp    r13w, word [rdx + 34]
	QUAD $0x000000b02494970f             // seta    byte [rsp + 176]
	LONG $0x6a3b4466; BYTE $0x24         // cmp    r13w, word [rdx + 36]
	QUAD $0x000000902494970f             // seta    byte [rsp + 144]
	LONG $0x6a3b4466; BYTE $0x26         // cmp    r13w, word [rdx + 38]
	QUAD $0x000000a02494970f             // seta    byte [rsp + 160]
	LONG $0x6a3b4466; BYTE $0x28         // cmp    r13w, word [rdx + 40]
	LONG $0x2454970f; BYTE $0x58         // seta    byte [rsp + 88]
	LONG $0x6a3b4466; BYTE $0x2a         // cmp    r13w, word [rdx + 42]
	LONG $0x2454970f; BYTE $0x50         // seta    byte [rsp + 80]
	LONG $0x6a3b4466; BYTE $0x2c         // cmp    r13w, word [rdx + 44]
	LONG $0x2454970f; BYTE $0x48         // seta    byte [rsp + 72]
	LONG $0x6a3b4466; BYTE $0x2e         // cmp    r13w, word [rdx + 46]
	LONG $0xd7970f41                     // seta    r15b
	LONG $0x6a3b4466; BYTE $0x30         // cmp    r13w, word [rdx + 48]
	LONG $0x2414970f                     // seta    byte [rsp]
	LONG $0x6a3b4466; BYTE $0x32         // cmp    r13w, word [rdx + 50]
	LONG $0x2454970f; BYTE $0x40         // seta    byte [rsp + 64]
	LONG $0x6a3b4466; BYTE $0x34         // cmp    r13w, word [rdx + 52]
	LONG $0x2454970f; BYTE $0x30         // seta    byte [rsp + 48]
	LONG $0x6a3b4466; BYTE $0x36         // cmp    r13w, word [rdx + 54]
	LONG $0x2454970f; BYTE $0x20         // seta    byte [rsp + 32]
	LONG $0x6a3b4466; BYTE $0x38         // cmp    r13w, word [rdx + 56]
	LONG $0x2454970f; BYTE $0x18         // seta    byte [rsp + 24]
	LONG $0x6a3b4466; BYTE $0x3a         // cmp    r13w, word [rdx + 58]
	LONG $0x2454970f; BYTE $0x08         // seta    byte [rsp + 8]
	LONG $0x6a3b4466; BYTE $0x3c         // cmp    r13w, word [rdx + 60]
	LONG $0x2454970f; BYTE $0x10         // seta    byte [rsp + 16]
	LONG $0x6a3b4466; BYTE $0x3e         // cmp    r13w, word [rdx + 62]
	WORD $0x970f; BYTE $0xd3             // seta    bl
	WORD $0x0040; BYTE $0xff             // add    dil, dil
	LONG $0x247c0240; BYTE $0x60         // add    dil, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x06             // shl    al, 6
	LONG $0x07e3c041                     // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3             // or    r11b, al
	LONG $0x02e6c041                     // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe             // or    r14b, dil
	WORD $0x0040; BYTE $0xf6             // add    sil, sil
	LONG $0x24740240; BYTE $0x38         // add    sil, byte [rsp + 56]
	QUAD $0x000000c02484b60f             // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0x0844; BYTE $0xf0             // or    al, r14b
	WORD $0xc789                         // mov    edi, eax
	LONG $0x02e0c041                     // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0             // or    r8b, sil
	LONG $0x2444b60f; BYTE $0x78         // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0x0840; BYTE $0xf8             // or    al, dil
	WORD $0xc789                         // mov    edi, eax
	LONG $0x03e1c041                     // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1             // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x68         // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0x0840; BYTE $0xf8             // or    al, dil
	LONG $0x04e2c041                     // shl    r10b, 4
	WORD $0x0845; BYTE $0xca             // or    r10b, r9b
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4             // or    r12b, r10b
	LONG $0x2474b60f; BYTE $0x70         // movzx    esi, byte [rsp + 112]
	LONG $0x06e6c040                     // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07             // shl    cl, 7
	WORD $0x0840; BYTE $0xf1             // or    cl, sil
	WORD $0x0841; BYTE $0xc3             // or    r11b, al
	WORD $0x0844; BYTE $0xe1             // or    cl, r12b
	QUAD $0x0000008024b48b4c             // mov    r14, qword [rsp + 128]
	QUAD $0x000000b02484b60f             // movzx    eax, byte [rsp + 176]
	WORD $0xc000                         // add    al, al
	LONG $0x28244402                     // add    al, byte [rsp + 40]
	WORD $0xc689                         // mov    esi, eax
	QUAD $0x000000902484b60f             // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0xc689                         // mov    esi, eax
	QUAD $0x000000a02484b60f             // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0xc689                         // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x58         // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0xc689                         // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50         // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0x8845; BYTE $0x1e             // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x48         // movzx    esi, byte [rsp + 72]
	LONG $0x06e6c040                     // shl    sil, 6
	LONG $0x07e7c041                     // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7             // or    r15b, sil
	LONG $0x014e8841                     // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7             // or    r15b, al
	LONG $0x2444b60f; BYTE $0x40         // movzx    eax, byte [rsp + 64]
	WORD $0xc000                         // add    al, al
	WORD $0x0402; BYTE $0x24             // add    al, byte [rsp]
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30         // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20         // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18         // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xc808                         // or    al, cl
	LONG $0x244cb60f; BYTE $0x10         // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x06             // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07             // shl    bl, 7
	WORD $0xcb08                         // or    bl, cl
	WORD $0xc308                         // or    bl, al
	LONG $0x027e8845                     // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                     // mov    byte [r14 + 3], bl
	LONG $0x40c28348                     // add    rdx, 64
	LONG $0x04c68349                     // add    r14, 4
	QUAD $0x000000d024848348; BYTE $0xff // add    qword [rsp + 208], -1
	JNE  LBB8_87
	QUAD $0x0000008824948b4c             // mov    r10, qword [rsp + 136]
	QUAD $0x000000f0249c8b4c             // mov    r11, qword [rsp + 240]

LBB8_89:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_170
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB8_172

LBB8_92:
	LONG $0x2eb70f44         // movzx    r13d, word [rsi]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_96
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_94:
	LONG $0x2a3b4466             // cmp    r13w, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x363c8841             // mov    byte [r14 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB8_94
	LONG $0x01c68349             // add    r14, 1

LBB8_96:
	LONG $0x05ffc149         // sar    r15, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_135
	LONG $0x08ff8349         // cmp    r15, 8
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f024bc894c // mov    qword [rsp + 240], r15
	JB   LBB8_100
	WORD $0x894c; BYTE $0xf8 // mov    rax, r15
	LONG $0x06e0c148         // shl    rax, 6
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB8_197
	LONG $0xbe048d4b         // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xd0 // cmp    rax, rdx
	JBE  LBB8_197

LBB8_100:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx
	WORD $0x894d; BYTE $0xf4     // mov    r12, r14

LBB8_101:
	LONG $0x2424894c             // mov    qword [rsp], r12
	WORD $0x894d; BYTE $0xfe     // mov    r14, r15
	LONG $0x24742b4c; BYTE $0x20 // sub    r14, qword [rsp + 32]
	QUAD $0x000000d024b4894c     // mov    qword [rsp + 208], r14

LBB8_102:
	WORD $0x8949; BYTE $0xf3             // mov    r11, rsi
	LONG $0x2e3b4466                     // cmp    r13w, word [rsi]
	QUAD $0x000000c024949f0f             // setg    byte [rsp + 192]
	LONG $0x6e3b4466; BYTE $0x02         // cmp    r13w, word [rsi + 2]
	LONG $0xd79f0f40                     // setg    dil
	LONG $0x6e3b4466; BYTE $0x04         // cmp    r13w, word [rsi + 4]
	LONG $0xd69f0f41                     // setg    r14b
	LONG $0x6e3b4466; BYTE $0x06         // cmp    r13w, word [rsi + 6]
	LONG $0x24549f0f; BYTE $0x78         // setg    byte [rsp + 120]
	LONG $0x6e3b4466; BYTE $0x08         // cmp    r13w, word [rsi + 8]
	QUAD $0x0000009024949f0f             // setg    byte [rsp + 144]
	LONG $0x6e3b4466; BYTE $0x0a         // cmp    r13w, word [rsi + 10]
	LONG $0x24549f0f; BYTE $0x48         // setg    byte [rsp + 72]
	LONG $0x6e3b4466; BYTE $0x0c         // cmp    r13w, word [rsi + 12]
	WORD $0x9f0f; BYTE $0xd0             // setg    al
	LONG $0x6e3b4466; BYTE $0x0e         // cmp    r13w, word [rsi + 14]
	LONG $0xd29f0f41                     // setg    r10b
	LONG $0x6e3b4466; BYTE $0x10         // cmp    r13w, word [rsi + 16]
	LONG $0x24549f0f; BYTE $0x70         // setg    byte [rsp + 112]
	LONG $0x6e3b4466; BYTE $0x12         // cmp    r13w, word [rsi + 18]
	WORD $0x9f0f; BYTE $0xd1             // setg    cl
	LONG $0x6e3b4466; BYTE $0x14         // cmp    r13w, word [rsi + 20]
	WORD $0x9f0f; BYTE $0xd2             // setg    dl
	LONG $0x6e3b4466; BYTE $0x16         // cmp    r13w, word [rsi + 22]
	LONG $0xd69f0f40                     // setg    sil
	LONG $0x6b3b4566; BYTE $0x18         // cmp    r13w, word [r11 + 24]
	LONG $0xd19f0f41                     // setg    r9b
	LONG $0x6b3b4566; BYTE $0x1a         // cmp    r13w, word [r11 + 26]
	LONG $0xd49f0f41                     // setg    r12b
	LONG $0x6b3b4566; BYTE $0x1c         // cmp    r13w, word [r11 + 28]
	LONG $0x24549f0f; BYTE $0x68         // setg    byte [rsp + 104]
	LONG $0x6b3b4566; BYTE $0x1e         // cmp    r13w, word [r11 + 30]
	LONG $0xd09f0f41                     // setg    r8b
	LONG $0x6b3b4566; BYTE $0x20         // cmp    r13w, word [r11 + 32]
	LONG $0x24549f0f; BYTE $0x58         // setg    byte [rsp + 88]
	LONG $0x6b3b4566; BYTE $0x22         // cmp    r13w, word [r11 + 34]
	QUAD $0x000000b024949f0f             // setg    byte [rsp + 176]
	LONG $0x6b3b4566; BYTE $0x24         // cmp    r13w, word [r11 + 36]
	LONG $0x24549f0f; BYTE $0x60         // setg    byte [rsp + 96]
	LONG $0x6b3b4566; BYTE $0x26         // cmp    r13w, word [r11 + 38]
	QUAD $0x000000a024949f0f             // setg    byte [rsp + 160]
	LONG $0x6b3b4566; BYTE $0x28         // cmp    r13w, word [r11 + 40]
	LONG $0x24549f0f; BYTE $0x50         // setg    byte [rsp + 80]
	LONG $0x6b3b4566; BYTE $0x2a         // cmp    r13w, word [r11 + 42]
	LONG $0x24549f0f; BYTE $0x38         // setg    byte [rsp + 56]
	LONG $0x6b3b4566; BYTE $0x2c         // cmp    r13w, word [r11 + 44]
	LONG $0x24549f0f; BYTE $0x40         // setg    byte [rsp + 64]
	LONG $0x6b3b4566; BYTE $0x2e         // cmp    r13w, word [r11 + 46]
	LONG $0xd79f0f41                     // setg    r15b
	LONG $0x6b3b4566; BYTE $0x30         // cmp    r13w, word [r11 + 48]
	LONG $0x24549f0f; BYTE $0x18         // setg    byte [rsp + 24]
	LONG $0x6b3b4566; BYTE $0x32         // cmp    r13w, word [r11 + 50]
	LONG $0x24549f0f; BYTE $0x28         // setg    byte [rsp + 40]
	LONG $0x6b3b4566; BYTE $0x34         // cmp    r13w, word [r11 + 52]
	LONG $0x24549f0f; BYTE $0x30         // setg    byte [rsp + 48]
	LONG $0x6b3b4566; BYTE $0x36         // cmp    r13w, word [r11 + 54]
	LONG $0x24549f0f; BYTE $0x20         // setg    byte [rsp + 32]
	LONG $0x6b3b4566; BYTE $0x38         // cmp    r13w, word [r11 + 56]
	LONG $0x24549f0f; BYTE $0x08         // setg    byte [rsp + 8]
	LONG $0x6b3b4566; BYTE $0x3a         // cmp    r13w, word [r11 + 58]
	LONG $0x24549f0f; BYTE $0x10         // setg    byte [rsp + 16]
	LONG $0x6b3b4566; BYTE $0x3c         // cmp    r13w, word [r11 + 60]
	QUAD $0x0000008024949f0f             // setg    byte [rsp + 128]
	LONG $0x6b3b4566; BYTE $0x3e         // cmp    r13w, word [r11 + 62]
	WORD $0x9f0f; BYTE $0xd3             // setg    bl
	WORD $0x0040; BYTE $0xff             // add    dil, dil
	QUAD $0x000000c024bc0240             // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06             // shl    al, 6
	LONG $0x07e2c041                     // shl    r10b, 7
	WORD $0x0841; BYTE $0xc2             // or    r10b, al
	LONG $0x02e6c041                     // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe             // or    r14b, dil
	WORD $0xc900                         // add    cl, cl
	LONG $0x70244c02                     // add    cl, byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x78         // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0x0844; BYTE $0xf0             // or    al, r14b
	WORD $0xe2c0; BYTE $0x02             // shl    dl, 2
	WORD $0xca08                         // or    dl, cl
	QUAD $0x00000090248cb60f             // movzx    ecx, byte [rsp + 144]
	WORD $0xe1c0; BYTE $0x04             // shl    cl, 4
	WORD $0xc108                         // or    cl, al
	WORD $0xcf89                         // mov    edi, ecx
	LONG $0x03e6c040                     // shl    sil, 3
	WORD $0x0840; BYTE $0xd6             // or    sil, dl
	LONG $0x244cb60f; BYTE $0x48         // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x05             // shl    cl, 5
	WORD $0x0840; BYTE $0xf9             // or    cl, dil
	LONG $0x04e1c041                     // shl    r9b, 4
	WORD $0x0841; BYTE $0xf1             // or    r9b, sil
	LONG $0x05e4c041                     // shl    r12b, 5
	WORD $0x0845; BYTE $0xcc             // or    r12b, r9b
	LONG $0x2454b60f; BYTE $0x68         // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x06             // shl    dl, 6
	LONG $0x07e0c041                     // shl    r8b, 7
	WORD $0x0841; BYTE $0xd0             // or    r8b, dl
	WORD $0x0841; BYTE $0xca             // or    r10b, cl
	WORD $0x0845; BYTE $0xe0             // or    r8b, r12b
	QUAD $0x000000b0248cb60f             // movzx    ecx, byte [rsp + 176]
	WORD $0xc900                         // add    cl, cl
	LONG $0x58244c02                     // add    cl, byte [rsp + 88]
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x60         // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x02             // shl    cl, 2
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	QUAD $0x000000a0248cb60f             // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x03             // shl    cl, 3
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x50         // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x04             // shl    cl, 4
	WORD $0xd108                         // or    cl, dl
	WORD $0xca89                         // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x38         // movzx    ecx, byte [rsp + 56]
	WORD $0xe1c0; BYTE $0x05             // shl    cl, 5
	WORD $0xd108                         // or    cl, dl
	WORD $0xce89                         // mov    esi, ecx
	LONG $0x240c8b48                     // mov    rcx, qword [rsp]
	WORD $0x8844; BYTE $0x11             // mov    byte [rcx], r10b
	LONG $0x2454b60f; BYTE $0x40         // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x06             // shl    dl, 6
	LONG $0x07e7c041                     // shl    r15b, 7
	WORD $0x0841; BYTE $0xd7             // or    r15b, dl
	LONG $0x01418844                     // mov    byte [rcx + 1], r8b
	WORD $0x0841; BYTE $0xf7             // or    r15b, sil
	LONG $0x2444b60f; BYTE $0x28         // movzx    eax, byte [rsp + 40]
	WORD $0xc000                         // add    al, al
	LONG $0x18244402                     // add    al, byte [rsp + 24]
	WORD $0xc289                         // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x30         // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xd008                         // or    al, dl
	WORD $0xc289                         // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x20         // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xd008                         // or    al, dl
	WORD $0xc289                         // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xd008                         // or    al, dl
	WORD $0xc289                         // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x10         // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xd008                         // or    al, dl
	QUAD $0x000000802494b60f             // movzx    edx, byte [rsp + 128]
	WORD $0xe2c0; BYTE $0x06             // shl    dl, 6
	WORD $0xe3c0; BYTE $0x07             // shl    bl, 7
	WORD $0xd308                         // or    bl, dl
	WORD $0xc308                         // or    bl, al
	LONG $0x02798844                     // mov    byte [rcx + 2], r15b
	WORD $0x5988; BYTE $0x03             // mov    byte [rcx + 3], bl
	LONG $0x40738d49                     // lea    rsi, [r11 + 64]
	LONG $0x04c18348                     // add    rcx, 4
	LONG $0x240c8948                     // mov    qword [rsp], rcx
	QUAD $0x000000d024848348; BYTE $0xff // add    qword [rsp + 208], -1
	JNE  LBB8_102
	QUAD $0x0000008824948b4c             // mov    r10, qword [rsp + 136]
	QUAD $0x000000f024bc8b4c             // mov    r15, qword [rsp + 240]
	LONG $0x24248b4c                     // mov    r12, qword [rsp]
	JMP  LBB8_136

LBB8_104:
	WORD $0x8b4c; BYTE $0x2e // mov    r13, qword [rsi]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_108
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_106:
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x36               // movzx    r8d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x363c8841                           // mov    byte [r14 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB8_106
	LONG $0x01c68349                           // add    r14, 1

LBB8_108:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_112
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000f0249c894c // mov    qword [rsp + 240], r11
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11

LBB8_110:
	QUAD $0x0000008024b4894c                   // mov    qword [rsp + 128], r14
	WORD $0x3b4c; BYTE $0x2a                   // cmp    r13, qword [rdx]
	QUAD $0x000000c024949f0f                   // setg    byte [rsp + 192]
	LONG $0x086a3b4c                           // cmp    r13, qword [rdx + 8]
	LONG $0xd79f0f40                           // setg    dil
	LONG $0x106a3b4c                           // cmp    r13, qword [rdx + 16]
	LONG $0xd69f0f41                           // setg    r14b
	LONG $0x186a3b4c                           // cmp    r13, qword [rdx + 24]
	LONG $0x24549f0f; BYTE $0x78               // setg    byte [rsp + 120]
	LONG $0x206a3b4c                           // cmp    r13, qword [rdx + 32]
	QUAD $0x0000009024949f0f                   // setg    byte [rsp + 144]
	LONG $0x286a3b4c                           // cmp    r13, qword [rdx + 40]
	LONG $0x24549f0f; BYTE $0x48               // setg    byte [rsp + 72]
	LONG $0x306a3b4c                           // cmp    r13, qword [rdx + 48]
	WORD $0x9f0f; BYTE $0xd0                   // setg    al
	LONG $0x386a3b4c                           // cmp    r13, qword [rdx + 56]
	LONG $0xd39f0f41                           // setg    r11b
	LONG $0x406a3b4c                           // cmp    r13, qword [rdx + 64]
	LONG $0x24549f0f; BYTE $0x70               // setg    byte [rsp + 112]
	LONG $0x486a3b4c                           // cmp    r13, qword [rdx + 72]
	LONG $0xd69f0f40                           // setg    sil
	LONG $0x506a3b4c                           // cmp    r13, qword [rdx + 80]
	LONG $0xd09f0f41                           // setg    r8b
	LONG $0x586a3b4c                           // cmp    r13, qword [rdx + 88]
	LONG $0xd19f0f41                           // setg    r9b
	LONG $0x606a3b4c                           // cmp    r13, qword [rdx + 96]
	LONG $0xd29f0f41                           // setg    r10b
	LONG $0x686a3b4c                           // cmp    r13, qword [rdx + 104]
	LONG $0xd49f0f41                           // setg    r12b
	LONG $0x706a3b4c                           // cmp    r13, qword [rdx + 112]
	LONG $0x24549f0f; BYTE $0x68               // setg    byte [rsp + 104]
	LONG $0x786a3b4c                           // cmp    r13, qword [rdx + 120]
	WORD $0x9f0f; BYTE $0xd1                   // setg    cl
	LONG $0x80aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 128]
	LONG $0x24549f0f; BYTE $0x58               // setg    byte [rsp + 88]
	LONG $0x88aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 136]
	QUAD $0x000000b024949f0f                   // setg    byte [rsp + 176]
	LONG $0x90aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 144]
	LONG $0x24549f0f; BYTE $0x60               // setg    byte [rsp + 96]
	LONG $0x98aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 152]
	QUAD $0x000000a024949f0f                   // setg    byte [rsp + 160]
	LONG $0xa0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 160]
	LONG $0x24549f0f; BYTE $0x50               // setg    byte [rsp + 80]
	LONG $0xa8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 168]
	LONG $0x24549f0f; BYTE $0x38               // setg    byte [rsp + 56]
	LONG $0xb0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 176]
	LONG $0x24549f0f; BYTE $0x40               // setg    byte [rsp + 64]
	LONG $0xb8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 184]
	LONG $0xd79f0f41                           // setg    r15b
	LONG $0xc0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 192]
	LONG $0x24549f0f; BYTE $0x18               // setg    byte [rsp + 24]
	LONG $0xc8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 200]
	LONG $0x24549f0f; BYTE $0x28               // setg    byte [rsp + 40]
	LONG $0xd0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 208]
	LONG $0x24549f0f; BYTE $0x30               // setg    byte [rsp + 48]
	LONG $0xd8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 216]
	LONG $0x24549f0f; BYTE $0x20               // setg    byte [rsp + 32]
	LONG $0xe0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 224]
	LONG $0x24549f0f; BYTE $0x08               // setg    byte [rsp + 8]
	LONG $0xe8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 232]
	LONG $0x24549f0f; BYTE $0x10               // setg    byte [rsp + 16]
	LONG $0xf0aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 240]
	LONG $0x24149f0f                           // setg    byte [rsp]
	LONG $0xf8aa3b4c; WORD $0x0000; BYTE $0x00 // cmp    r13, qword [rdx + 248]
	WORD $0x9f0f; BYTE $0xd3                   // setg    bl
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x000000c024bc0240                   // add    dil, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0841; BYTE $0xfe                   // or    r14b, dil
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	LONG $0x2474b60f; BYTE $0x68               // movzx    esi, byte [rsp + 104]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x40               // movzx    esi, byte [rsp + 64]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x240cb60f                           // movzx    ecx, byte [rsp]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	WORD $0xc308                               // or    bl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x035e8841                           // mov    byte [r14 + 3], bl
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB8_110
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000f0249c8b4c                   // mov    r11, qword [rsp + 240]

LBB8_112:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_175
	WORD $0xff31             // xor    edi, edi
	JMP  LBB8_177

LBB8_115:
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff3         // movss    xmm0, dword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB8_119
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB8_117:
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	WORD $0x970f; BYTE $0xd3     // seta    bl
	LONG $0x04c28348             // add    rdx, 4
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x363c8841             // mov    byte [r14 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB8_117
	LONG $0x01c68349             // add    r14, 1

LBB8_119:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB8_139
	LONG $0x04fb8349         // cmp    r11, 4
	JB   LBB8_123
	WORD $0x894c; BYTE $0xd8 // mov    rax, r11
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB8_200
	LONG $0x9e048d4b         // lea    rax, [r14 + 4*r11]
	WORD $0x3948; BYTE $0xd0 // cmp    rax, rdx
	JBE  LBB8_200

LBB8_123:
	WORD $0x3145; BYTE $0xc0 // xor    r8d, r8d
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14

LBB8_124:
	LONG $0x243c894c         // mov    qword [rsp], r15
	QUAD $0x000000882494894c // mov    qword [rsp + 136], r10
	QUAD $0x000000d0249c894c // mov    qword [rsp + 208], r11
	WORD $0x294d; BYTE $0xc3 // sub    r11, r8
	QUAD $0x000000c0249c894c // mov    qword [rsp + 192], r11

LBB8_125:
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	LONG $0x2454970f; BYTE $0x78               // seta    byte [rsp + 120]
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	LONG $0xd0970f41                           // seta    r8b
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	LONG $0xd6970f41                           // seta    r14b
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	LONG $0xd5970f41                           // seta    r13b
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	QUAD $0x000000902494970f                   // seta    byte [rsp + 144]
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	LONG $0x2454970f; BYTE $0x48               // seta    byte [rsp + 72]
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x970f; BYTE $0xd0                   // seta    al
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	LONG $0xd3970f41                           // seta    r11b
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	LONG $0x2454970f; BYTE $0x68               // seta    byte [rsp + 104]
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x970f; BYTE $0xd2                   // seta    dl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	LONG $0xd6970f40                           // seta    sil
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	LONG $0xd7970f40                           // seta    dil
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	LONG $0xd2970f41                           // seta    r10b
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	LONG $0xd4970f41                           // seta    r12b
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	QUAD $0x000000b02494970f                   // seta    byte [rsp + 176]
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	LONG $0xd1970f41                           // seta    r9b
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	LONG $0x2454970f; BYTE $0x58               // seta    byte [rsp + 88]
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	LONG $0x2454970f; BYTE $0x70               // seta    byte [rsp + 112]
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	LONG $0x2454970f; BYTE $0x60               // seta    byte [rsp + 96]
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	QUAD $0x000000a02494970f                   // seta    byte [rsp + 160]
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	LONG $0x2454970f; BYTE $0x50               // seta    byte [rsp + 80]
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	LONG $0x2454970f; BYTE $0x38               // seta    byte [rsp + 56]
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	LONG $0x2454970f; BYTE $0x40               // seta    byte [rsp + 64]
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	LONG $0xd7970f41                           // seta    r15b
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	LONG $0x2454970f; BYTE $0x18               // seta    byte [rsp + 24]
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	LONG $0x2454970f; BYTE $0x28               // seta    byte [rsp + 40]
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	LONG $0x2454970f; BYTE $0x30               // seta    byte [rsp + 48]
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	LONG $0x2454970f; BYTE $0x20               // seta    byte [rsp + 32]
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	LONG $0x2454970f; BYTE $0x08               // seta    byte [rsp + 8]
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	LONG $0x2454970f; BYTE $0x10               // seta    byte [rsp + 16]
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	QUAD $0x000000802494970f                   // seta    byte [rsp + 128]
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x970f; BYTE $0xd1                   // seta    cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x78               // add    r8b, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xd200                               // add    dl, dl
	LONG $0x68245402                           // add    dl, byte [rsp + 104]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xd6                   // or    sil, dl
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd0                   // mov    r8d, edx
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0844; BYTE $0xc2                   // or    dl, r8b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	QUAD $0x000000b024b4b60f                   // movzx    esi, byte [rsp + 176]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	WORD $0x0841; BYTE $0xd3                   // or    r11b, dl
	WORD $0x0845; BYTE $0xe1                   // or    r9b, r12b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xc000                               // add    al, al
	LONG $0x58244402                           // add    al, byte [rsp + 88]
	LONG $0x2454b60f; BYTE $0x60               // movzx    edx, byte [rsp + 96]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xc208                               // or    dl, al
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000a02494b60f                   // movzx    edx, byte [rsp + 160]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x38               // movzx    edx, byte [rsp + 56]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	LONG $0x24348b48                           // mov    rsi, qword [rsp]
	WORD $0x8844; BYTE $0x1e                   // mov    byte [rsi], r11b
	LONG $0x247cb60f; BYTE $0x40               // movzx    edi, byte [rsp + 64]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xff                   // or    r15b, dil
	LONG $0x014e8844                           // mov    byte [rsi + 1], r9b
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd008                               // or    al, dl
	QUAD $0x000000802494b60f                   // movzx    edx, byte [rsp + 128]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd108                               // or    cl, dl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8844                           // mov    byte [rsi + 2], r15b
	WORD $0x4e88; BYTE $0x03                   // mov    byte [rsi + 3], cl
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c68348                           // add    rsi, 4
	LONG $0x24348948                           // mov    qword [rsp], rsi
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB8_125
	LONG $0x243c8b4c                           // mov    r15, qword [rsp]
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	QUAD $0x000000d0249c8b4c                   // mov    r11, qword [rsp + 208]
	JMP  LBB8_140

LBB8_127:
	LONG $0x2474894c; BYTE $0x58 // mov    qword [rsp + 88], r14
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB8_128:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB8_151
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB8_154

LBB8_131:
	LONG $0x2474894c; BYTE $0x30 // mov    qword [rsp + 48], r14
	WORD $0x8948; BYTE $0xd6     // mov    rsi, rdx

LBB8_132:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB8_156
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB8_159

LBB8_135:
	WORD $0x894d; BYTE $0xf4 // mov    r12, r14
	WORD $0x8948; BYTE $0xd6 // mov    rsi, rdx

LBB8_136:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB8_183
	WORD $0x3145; BYTE $0xf6 // xor    r14d, r14d
	JMP  LBB8_185

LBB8_139:
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx

LBB8_140:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB8_182
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB8_187
	WORD $0xf631             // xor    esi, esi
	JMP  LBB8_189

LBB8_143:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB8_144:
	WORD $0x394c; BYTE $0x2a     // cmp    qword [rdx], r13
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x36 // movzx    r10d, byte [r14 + rsi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086a394c             // cmp    qword [rdx + 8], r13
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB8_144

LBB8_145:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	WORD $0x394c; BYTE $0x2a // cmp    qword [rdx], r13
	JMP  LBB8_174

LBB8_147:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi

LBB8_148:
	WORD $0x3b44; BYTE $0x2a     // cmp    r13d, dword [rdx]
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x046a3b44             // cmp    r13d, dword [rdx + 4]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd19f0f41             // setg    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB8_148

LBB8_149:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	WORD $0x3b44; BYTE $0x2a // cmp    r13d, dword [rdx]
	JMP  LBB8_179

LBB8_151:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x58 // mov    r14, qword [rsp + 88]

LBB8_152:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3a46             // cmp    r11b, byte [rsi + r9]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3a44; BYTE $0x01 // cmp    r11b, byte [rsi + rax + 1]
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x9f0f; BYTE $0xd3     // setg    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB8_152
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB8_154:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB8_182
	WORD $0x3a44; BYTE $0x1e     // cmp    r11b, byte [rsi]
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x58 // mov    r8, qword [rsp + 88]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al
	JMP  LBB8_161

LBB8_156:
	WORD $0x894d; BYTE $0xc2     // mov    r10, r8
	LONG $0xfee28349             // and    r10, -2
	WORD $0x3145; BYTE $0xc9     // xor    r9d, r9d
	LONG $0x24748b4c; BYTE $0x30 // mov    r14, qword [rsp + 48]

LBB8_157:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xcb     // mov    rbx, r9
	LONG $0x03ebc148             // shr    rbx, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0x2040; BYTE $0xfa     // and    dl, dil
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x1e148841             // mov    byte [r14 + rbx], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xd7     // xor    dil, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0xd030                 // xor    al, dl
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB8_157
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB8_159:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB8_182
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	WORD $0xc019                 // sbb    eax, eax
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x24448b4c; BYTE $0x30 // mov    r8, qword [rsp + 48]
	LONG $0x103c8a41             // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al

LBB8_161:
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x101c8841         // mov    byte [r8 + rdx], bl
	JMP  LBB8_182

LBB8_162:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB8_163:
	WORD $0x3944; BYTE $0x2a     // cmp    dword [rdx], r13d
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x36 // movzx    r10d, byte [r14 + rsi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046a3944             // cmp    dword [rdx + 4], r13d
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB8_163

LBB8_164:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	WORD $0x3944; BYTE $0x2a // cmp    dword [rdx], r13d
	JMP  LBB8_174

LBB8_166:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi

LBB8_167:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	WORD $0x970f; BYTE $0xd0     // seta    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x422e0f66; BYTE $0x08 // ucomisd    xmm0, qword [rdx + 8]
	LONG $0xd1970f41             // seta    r9b
	LONG $0x10c28348             // add    rdx, 16
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB8_167

LBB8_168:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	LONG $0x022e0f66         // ucomisd    xmm0, qword [rdx]
	WORD $0x970f; BYTE $0xd0 // seta    al
	JMP  LBB8_180

LBB8_170:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB8_171:
	LONG $0x2a394466             // cmp    word [rdx], r13w
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x36 // movzx    r10d, byte [r14 + rsi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x6a394466; BYTE $0x02 // cmp    word [rdx + 2], r13w
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	WORD $0xff19                 // sbb    edi, edi
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB8_171

LBB8_172:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB8_182
	LONG $0x2a394466 // cmp    word [rdx], r13w

LBB8_174:
	WORD $0xc019             // sbb    eax, eax
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	JMP  LBB8_181

LBB8_175:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi

LBB8_176:
	WORD $0x3b4c; BYTE $0x2a     // cmp    r13, qword [rdx]
	WORD $0x9f0f; BYTE $0xd0     // setg    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x36 // movzx    r9d, byte [r14 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x361c8841             // mov    byte [r14 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x086a3b4c             // cmp    r13, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0xd19f0f41             // setg    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x36048841             // mov    byte [r14 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB8_176

LBB8_177:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	WORD $0x3b4c; BYTE $0x2a // cmp    r13, qword [rdx]

LBB8_179:
	WORD $0x9f0f; BYTE $0xd0 // setg    al

LBB8_180:
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xfa // mov    rdx, rdi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e78040         // and    dil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf989             // mov    ecx, edi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al

LBB8_181:
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x161c8841         // mov    byte [r14 + rdx], bl

LBB8_182:
	MOVQ 336(SP), SP
	RET

LBB8_183:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xf6 // xor    r14d, r14d

LBB8_184:
	WORD $0x8948; BYTE $0xf0     // mov    rax, rsi
	LONG $0x2e3b4466             // cmp    r13w, word [rsi]
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x894c; BYTE $0xf7     // mov    rdi, r14
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0x8944; BYTE $0xf1     // mov    ecx, r14d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68349             // add    r14, 2
	LONG $0x6e3b4466; BYTE $0x02 // cmp    r13w, word [rsi + 2]
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	WORD $0x9f0f; BYTE $0xd2     // setg    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0xda30                 // xor    dl, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd020                 // and    al, dl
	WORD $0xd830                 // xor    al, bl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x394d; BYTE $0xf1     // cmp    r9, r14
	JNE  LBB8_184

LBB8_185:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	LONG $0x2e3b4466         // cmp    r13w, word [rsi]
	WORD $0x9f0f; BYTE $0xd0 // setg    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xf2 // mov    rdx, r14
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x143c8a41         // mov    dil, byte [r12 + rdx]
	LONG $0x07e68041         // and    r14b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xf1 // mov    ecx, r14d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x141c8841         // mov    byte [r12 + rdx], bl
	JMP  LBB8_182

LBB8_187:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xf631             // xor    esi, esi
	WORD $0x894d; BYTE $0xfb // mov    r11, r15

LBB8_188:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	WORD $0x970f; BYTE $0xd2     // seta    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0xd1970f41             // seta    r9b
	LONG $0x08c38348             // add    rbx, 8
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xc1     // xor    r9b, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x2044; BYTE $0xca     // and    dl, r9b
	WORD $0xc230                 // xor    dl, al
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	WORD $0x3949; BYTE $0xf2     // cmp    r10, rsi
	JNE  LBB8_188

LBB8_189:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB8_182
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0x970f; BYTE $0xd0 // seta    al
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	LONG $0x03eac148         // shr    rdx, 3
	WORD $0x894d; BYTE $0xfe // mov    r14, r15
	LONG $0x173c8a41         // mov    dil, byte [r15 + rdx]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x171c8841         // mov    byte [r15 + rdx], bl
	JMP  LBB8_182

LBB8_191:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e824bc894c             // mov    qword [rsp + 232], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x58         // mov    qword [rsp + 88], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000120248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 288], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008024b4894c             // mov    qword [rsp + 128], r14

LBB8_192:
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	LONG $0x24448948; BYTE $0x78               // mov    qword [rsp + 120], rax
	LONG $0x05e0c148                           // shl    rax, 5
	LONG $0x24448948; BYTE $0x40               // mov    qword [rsp + 64], rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	LONG $0x24448948; BYTE $0x48               // mov    qword [rsp + 72], rax
	LONG $0x020cb60f                           // movzx    ecx, byte [rdx + rax]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x024cb60f; BYTE $0x01               // movzx    ecx, byte [rdx + rax + 1]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x024cb60f; BYTE $0x02               // movzx    ecx, byte [rdx + rax + 2]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x024cb60f; BYTE $0x03               // movzx    ecx, byte [rdx + rax + 3]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x024cb60f; BYTE $0x04               // movzx    ecx, byte [rdx + rax + 4]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x024cb60f; BYTE $0x05               // movzx    ecx, byte [rdx + rax + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x024cb60f; BYTE $0x06               // movzx    ecx, byte [rdx + rax + 6]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x024cb60f; BYTE $0x07               // movzx    ecx, byte [rdx + rax + 7]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x024cb60f; BYTE $0x08               // movzx    ecx, byte [rdx + rax + 8]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x024cb60f; BYTE $0x09               // movzx    ecx, byte [rdx + rax + 9]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x024cb60f; BYTE $0x0a               // movzx    ecx, byte [rdx + rax + 10]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x024cb60f; BYTE $0x0b               // movzx    ecx, byte [rdx + rax + 11]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x024cb60f; BYTE $0x0c               // movzx    ecx, byte [rdx + rax + 12]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x024cb60f; BYTE $0x10               // movzx    ecx, byte [rdx + rax + 16]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x024cb60f; BYTE $0x18               // movzx    ecx, byte [rdx + rax + 24]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x24448948; BYTE $0x38               // mov    qword [rsp + 56], rax
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0x20c98348                           // or    rcx, 32
	LONG $0x244c8948; BYTE $0x10               // mov    qword [rsp + 16], rcx
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	LONG $0x40c88349                           // or    r8, 64
	LONG $0x2444894c; BYTE $0x40               // mov    qword [rsp + 64], r8
	LONG $0x60cb8349                           // or    r11, 96
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xa0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 160
	QUAD $0x000000a024a4894c                   // mov    qword [rsp + 160], r12
	LONG $0xc0ce8149; WORD $0x0000; BYTE $0x00 // or    r14, 192
	QUAD $0x0000009024b4894c                   // mov    qword [rsp + 144], r14
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0xe0cf8148; WORD $0x0000; BYTE $0x00 // or    rdi, 224
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x246c894c; BYTE $0x20               // mov    qword [rsp + 32], r13
	LONG $0x20ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 288
	LONG $0x40cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 320
	LONG $0x60cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 352
	QUAD $0x00018048244c8148; BYTE $0x00       // or    qword [rsp + 72], 384
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0xa0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 416
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	LONG $0xc0ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 448
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0xe0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 480
	LONG $0x244c8948; BYTE $0x30               // mov    qword [rsp + 48], rcx
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x010204203a0f4466                   // pinsrb    xmm8, byte [rdx + rax], 1
	QUAD $0x020204203a0f4666                   // pinsrb    xmm8, byte [rdx + r8], 2
	QUAD $0x031a04203a0f4666                   // pinsrb    xmm8, byte [rdx + r11], 3
	QUAD $0x040a04203a0f4666                   // pinsrb    xmm8, byte [rdx + r9], 4
	QUAD $0x052204203a0f4666                   // pinsrb    xmm8, byte [rdx + r12], 5
	QUAD $0x063204203a0f4666                   // pinsrb    xmm8, byte [rdx + r14], 6
	QUAD $0x073a04203a0f4466                   // pinsrb    xmm8, byte [rdx + rdi], 7
	QUAD $0x082a04203a0f4666                   // pinsrb    xmm8, byte [rdx + r13], 8
	QUAD $0x091204203a0f4666                   // pinsrb    xmm8, byte [rdx + r10], 9
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	LONG $0x247c894c; BYTE $0x60               // mov    qword [rsp + 96], r15
	QUAD $0x0a3a04203a0f4666                   // pinsrb    xmm8, byte [rdx + r15], 10
	QUAD $0x0b1a04203a0f4466                   // pinsrb    xmm8, byte [rdx + rbx], 11
	LONG $0x247c8b4c; BYTE $0x48               // mov    r15, qword [rsp + 72]
	QUAD $0x0c3a04203a0f4666                   // pinsrb    xmm8, byte [rdx + r15], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d0204203a0f4466                   // pinsrb    xmm8, byte [rdx + rax], 13
	QUAD $0x0e3204203a0f4466                   // pinsrb    xmm8, byte [rdx + rsi], 14
	QUAD $0x0f0a04203a0f4466                   // pinsrb    xmm8, byte [rdx + rcx], 15
	QUAD $0x012024ac6f0f4466; WORD $0x0000     // movdqa    xmm13, oword [rsp + 288]
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0101027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 1], 1
	QUAD $0x01027c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rdx + r8 + 1], 2
	QUAD $0x011a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r11 + 1], 3
	QUAD $0x010a7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r9 + 1], 4
	QUAD $0x000000a024ac8b4c                   // mov    r13, qword [rsp + 160]
	QUAD $0x012a7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rdx + r13 + 1], 5
	QUAD $0x01327c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r14 + 1], 6
	QUAD $0x07013a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 1], 7
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0801027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 1], 8
	QUAD $0x01127c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r10 + 1], 9
	QUAD $0x01227c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rdx + r12 + 1], 10
	QUAD $0x0b011a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 1], 11
	QUAD $0x013a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r15 + 1], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d01027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 1], 13
	QUAD $0x0e01327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 1], 14
	QUAD $0x0f010a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 1], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x01020274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 2], 1
	QUAD $0x020274203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rdx + r8 + 2], 2
	QUAD $0x021a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 2], 3
	QUAD $0x020a74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r9 + 2], 4
	QUAD $0x022a74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r13 + 2], 5
	QUAD $0x023274203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r14 + 2], 6
	QUAD $0x07023a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 2], 7
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x08020274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 2], 8
	QUAD $0x021274203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r10 + 2], 9
	QUAD $0x022274203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r12 + 2], 10
	QUAD $0x0b021a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 2], 11
	QUAD $0x023a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 2], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d020274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 2], 13
	QUAD $0x0e023274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 2], 14
	QUAD $0x0f020a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 2], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x080264203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rax + 8], 1
	QUAD $0x080264203a0f4666; BYTE $0x02       // pinsrb    xmm12, byte [rdx + r8 + 8], 2
	QUAD $0x081a64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r11 + 8], 3
	QUAD $0x080a64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rdx + r9 + 8], 4
	QUAD $0x082a64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rdx + r13 + 8], 5
	QUAD $0x083264203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r14 + 8], 6
	QUAD $0x083a64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rdx + rdi + 8], 7
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x080264203a0f4466; BYTE $0x08       // pinsrb    xmm12, byte [rdx + rax + 8], 8
	QUAD $0x081264203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r10 + 8], 9
	QUAD $0x082264203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + r12 + 8], 10
	QUAD $0x081a64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + rbx + 8], 11
	QUAD $0x083a64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r15 + 8], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x080264203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + rax + 8], 13
	QUAD $0x083264203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + rsi + 8], 14
	QUAD $0x080a64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rcx + 8], 15
	LONG $0x640f4166; BYTE $0xd8               // pcmpgtb    xmm3, xmm8
	QUAD $0x000110249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm3
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0x640f4166; BYTE $0xdc               // pcmpgtb    xmm3, xmm12
	QUAD $0x000130249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm3
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x100a74203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rcx + 16], 1
	QUAD $0x100274203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rdx + r8 + 16], 2
	QUAD $0x101a74203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r11 + 16], 3
	QUAD $0x100a74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rdx + r9 + 16], 4
	QUAD $0x102a74203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rdx + r13 + 16], 5
	QUAD $0x103274203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r14 + 16], 6
	QUAD $0x103a74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rdx + rdi + 16], 7
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x100a74203a0f4466; BYTE $0x08       // pinsrb    xmm14, byte [rdx + rcx + 16], 8
	QUAD $0x101274203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rdx + r10 + 16], 9
	QUAD $0x102274203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + r12 + 16], 10
	QUAD $0x101a74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + rbx + 16], 11
	QUAD $0x103a74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r15 + 16], 12
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	QUAD $0x100274203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rax + 16], 13
	LONG $0x24748948; BYTE $0x18               // mov    qword [rsp + 24], rsi
	QUAD $0x103274203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + rsi + 16], 14
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x103a74203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rdi + 16], 15
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x01180264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 24], 1
	QUAD $0x180264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r8 + 24], 2
	QUAD $0x181a64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r11 + 24], 3
	QUAD $0x180a64203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r9 + 24], 4
	QUAD $0x182a64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rdx + r13 + 24], 5
	QUAD $0x0000009024848b4c                   // mov    r8, qword [rsp + 144]
	QUAD $0x180264203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r8 + 24], 6
	QUAD $0x183264203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r14 + 24], 7
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x08180264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 24], 8
	QUAD $0x181264203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r10 + 24], 9
	QUAD $0x000000b02494894c                   // mov    qword [rsp + 176], r10
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x0a180264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 24], 10
	QUAD $0x0b181a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 24], 11
	QUAD $0x183a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 24], 12
	QUAD $0x0d180a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 24], 13
	QUAD $0x0e183264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 24], 14
	LONG $0x640f4166; BYTE $0xde               // pcmpgtb    xmm3, xmm14
	QUAD $0x0000f0249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm3
	QUAD $0x0f183a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 24], 15
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0xdc640f66                           // pcmpgtb    xmm3, xmm4
	QUAD $0x0000d0249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm3
	LONG $0x6f0f4166; BYTE $0xe5               // movdqa    xmm4, xmm13
	LONG $0xe7640f66                           // pcmpgtb    xmm4, xmm7
	LONG $0x6f0f4466; BYTE $0xe4               // movdqa    xmm12, xmm4
	QUAD $0x0000a0856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdb0f4566; BYTE $0xe0               // pand    xmm12, xmm8
	LONG $0xf80f4466; BYTE $0xe4               // psubb    xmm12, xmm4
	LONG $0x6f0f4166; BYTE $0xe5               // movdqa    xmm4, xmm13
	LONG $0x6f0f4566; BYTE $0xf5               // movdqa    xmm14, xmm13
	LONG $0xe6640f66                           // pcmpgtb    xmm4, xmm6
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x0274b60f; BYTE $0x0d               // movzx    esi, byte [rdx + rax + 13]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x03327c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rsi + 3], 1
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x03027c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rdx + rax + 3], 2
	LONG $0x245c894c; BYTE $0x28               // mov    qword [rsp + 40], r11
	QUAD $0x031a7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r11 + 3], 3
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	LONG $0x244c894c; BYTE $0x70               // mov    qword [rsp + 112], r9
	QUAD $0x030a7c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rdx + r9 + 3], 4
	QUAD $0x032a7c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rdx + r13 + 3], 5
	QUAD $0x03027c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r8 + 3], 6
	LONG $0x2474894c; BYTE $0x50               // mov    qword [rsp + 80], r14
	QUAD $0x03327c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r14 + 3], 7
	LONG $0x24648b4c; BYTE $0x20               // mov    r12, qword [rsp + 32]
	QUAD $0x03227c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r12 + 3], 8
	QUAD $0x03127c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r10 + 3], 9
	LONG $0x244c8b4c; BYTE $0x60               // mov    r9, qword [rsp + 96]
	QUAD $0x030a7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + r9 + 3], 10
	LONG $0x245c8948; BYTE $0x68               // mov    qword [rsp + 104], rbx
	QUAD $0x031a7c203a0f4466; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + rbx + 3], 11
	QUAD $0x033a7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r15 + 3], 12
	LONG $0x247c8b48; BYTE $0x08               // mov    rdi, qword [rsp + 8]
	QUAD $0x033a7c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rdi + 3], 13
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x033a7c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + rdi + 3], 14
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x03127c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + r10 + 3], 15
	QUAD $0x0104326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 4], 1
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	QUAD $0x0204026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 4], 2
	QUAD $0x041a6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r11 + 4], 3
	QUAD $0x04040a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 4], 4
	QUAD $0x042a6c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rdx + r13 + 4], 5
	QUAD $0x04026c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r8 + 4], 6
	QUAD $0x04326c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r14 + 4], 7
	QUAD $0x04226c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r12 + 4], 8
	QUAD $0x000000b0248c8b48                   // mov    rcx, qword [rsp + 176]
	QUAD $0x09040a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 4], 9
	QUAD $0x040a6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r9 + 4], 10
	WORD $0x894d; BYTE $0xcb                   // mov    r11, r9
	QUAD $0x0b041a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 4], 11
	QUAD $0x043a6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r15 + 4], 12
	LONG $0x244c8b4c; BYTE $0x08               // mov    r9, qword [rsp + 8]
	QUAD $0x040a6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r9 + 4], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e04026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 4], 14
	QUAD $0x000110249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 272]
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	QUAD $0x000000b0b56f0f66                   // movdqa    xmm6, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xe6db0f66                           // pand    xmm4, xmm6
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	LONG $0x3a74b60f; BYTE $0x0e               // movzx    esi, byte [rdx + rdi + 14]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x0f041a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 4], 15
	LONG $0xeb0f4166; BYTE $0xe4               // por    xmm4, xmm12
	LONG $0x6f0f4566; BYTE $0xe5               // movdqa    xmm12, xmm13
	LONG $0x640f4566; BYTE $0xe7               // pcmpgtb    xmm12, xmm15
	LONG $0x640f4466; BYTE $0xed               // pcmpgtb    xmm13, xmm5
	LONG $0x3a74b60f; BYTE $0x0f               // movzx    esi, byte [rdx + rdi + 15]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	QUAD $0x051254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r10 + 5], 1
	LONG $0x24448b4c; BYTE $0x40               // mov    r8, qword [rsp + 64]
	QUAD $0x050254203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r8 + 5], 2
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x03053a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 5], 3
	LONG $0x246c8b4c; BYTE $0x70               // mov    r13, qword [rsp + 112]
	QUAD $0x052a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r13 + 5], 4
	QUAD $0x000000a024b48b48                   // mov    rsi, qword [rsp + 160]
	QUAD $0x05053254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 5], 5
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x053254203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r14 + 5], 6
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x051254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r10 + 5], 7
	QUAD $0x052254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r12 + 5], 8
	QUAD $0x09050a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 5], 9
	QUAD $0x051a54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r11 + 5], 10
	LONG $0x244c8b48; BYTE $0x68               // mov    rcx, qword [rsp + 104]
	QUAD $0x0b050a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 5], 11
	QUAD $0x053a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 5], 12
	QUAD $0x050a54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r9 + 5], 13
	WORD $0x894d; BYTE $0xcb                   // mov    r11, r9
	QUAD $0x0e050254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 5], 14
	QUAD $0x0f051a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 5], 15
	QUAD $0x000000c09d6f0f66                   // movdqa    xmm3, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xdb0f4466; BYTE $0xe3               // pand    xmm12, xmm3
	QUAD $0x000000d09d6f0f66                   // movdqa    xmm3, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xdb0f4466; BYTE $0xeb               // pand    xmm13, xmm3
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x6f0f4566; BYTE $0xe6               // movdqa    xmm12, xmm14
	LONG $0x640f4466; BYTE $0xe2               // pcmpgtb    xmm12, xmm2
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x0274b60f; BYTE $0x11               // movzx    esi, byte [rdx + rax + 17]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	QUAD $0x000000e09d6f0f66                   // movdqa    xmm3, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xdb0f4466; BYTE $0xe3               // pand    xmm12, xmm3
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x0274b60f; BYTE $0x12               // movzx    esi, byte [rdx + rax + 18]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	QUAD $0x0000c0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 192]
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0106025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 6], 1
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	QUAD $0x06025c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rdx + r8 + 6], 2
	QUAD $0x03063a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 6], 3
	WORD $0x894c; BYTE $0xe9                   // mov    rcx, r13
	QUAD $0x062a5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r13 + 6], 4
	QUAD $0x000000a024ac8b4c                   // mov    r13, qword [rsp + 160]
	QUAD $0x062a5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rdx + r13 + 6], 5
	QUAD $0x06325c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r14 + 6], 6
	QUAD $0x06125c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r10 + 6], 7
	QUAD $0x06225c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r12 + 6], 8
	QUAD $0x000000b024b48b48                   // mov    rsi, qword [rsp + 176]
	QUAD $0x0906325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 6], 9
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x06025c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r8 + 6], 10
	LONG $0x245c8b48; BYTE $0x68               // mov    rbx, qword [rsp + 104]
	QUAD $0x0b061a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 6], 11
	LONG $0x247c894c; BYTE $0x48               // mov    qword [rsp + 72], r15
	QUAD $0x063a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r15 + 6], 12
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	QUAD $0x061a5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r11 + 6], 13
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x061a5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r11 + 6], 14
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x06125c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r10 + 6], 15
	QUAD $0x0107024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 7], 1
	QUAD $0x070a4c203a0f4266; BYTE $0x02       // pinsrb    xmm1, byte [rdx + r9 + 7], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0307024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 7], 3
	QUAD $0x04070a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 7], 4
	QUAD $0x072a4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rdx + r13 + 7], 5
	QUAD $0x07324c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r14 + 7], 6
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x07324c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r14 + 7], 7
	QUAD $0x07224c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r12 + 7], 8
	QUAD $0x0907324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 7], 9
	QUAD $0x07024c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r8 + 7], 10
	QUAD $0x0b071a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 7], 11
	QUAD $0x073a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r15 + 7], 12
	QUAD $0x0d073a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 7], 13
	QUAD $0x071a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r11 + 7], 14
	QUAD $0x07124c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r10 + 7], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x01090244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 9], 1
	QUAD $0x090a44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r9 + 9], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x03090244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 9], 3
	QUAD $0x04090a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 9], 4
	QUAD $0x092a44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rdx + r13 + 9], 5
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	QUAD $0x06090244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 9], 6
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x07090244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 9], 7
	QUAD $0x092244203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r12 + 9], 8
	QUAD $0x09093244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 9], 9
	QUAD $0x090244203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r8 + 9], 10
	QUAD $0x0b091a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 9], 11
	QUAD $0x093a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 9], 12
	QUAD $0x0d093a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 9], 13
	QUAD $0x091a44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r11 + 9], 14
	WORD $0x894d; BYTE $0xde                   // mov    r14, r11
	QUAD $0x091244203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r10 + 9], 15
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0a024c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rax + 10], 1
	QUAD $0x0a0a4c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rdx + r9 + 10], 2
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0a024c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rdx + rax + 10], 3
	QUAD $0x0a0a4c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rdx + rcx + 10], 4
	QUAD $0x0a2a4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rdx + r13 + 10], 5
	QUAD $0x00000090249c8b4c                   // mov    r11, qword [rsp + 144]
	QUAD $0x0a1a4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r11 + 10], 6
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x0a0a4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rdx + rcx + 10], 7
	QUAD $0x0a224c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r12 + 10], 8
	QUAD $0x0a324c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rdx + rsi + 10], 9
	QUAD $0x0a024c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r8 + 10], 10
	QUAD $0x0a1a4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + rbx + 10], 11
	QUAD $0x0a3a4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r15 + 10], 12
	QUAD $0x0a3a4c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rdi + 10], 13
	LONG $0xeb0f4466; BYTE $0xe4               // por    xmm12, xmm4
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0x6f0f4166; BYTE $0xe6               // movdqa    xmm4, xmm14
	LONG $0xe3640f66                           // pcmpgtb    xmm4, xmm3
	LONG $0x640f4466; BYTE $0xf1               // pcmpgtb    xmm14, xmm1
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	LONG $0x3a74b60f; BYTE $0x13               // movzx    esi, byte [rdx + rdi + 19]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	QUAD $0x0a324c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r14 + 10], 14
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xe3db0f66                           // pand    xmm4, xmm3
	LONG $0x710f4166; WORD $0x07f6             // psllw    xmm14, 7
	LONG $0x5d6f0f66; BYTE $0x60               // movdqa    xmm3, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xdb0f4466; BYTE $0xf3               // pand    xmm14, xmm3
	LONG $0xeb0f4466; BYTE $0xf4               // por    xmm14, xmm4
	LONG $0x3a74b60f; BYTE $0x14               // movzx    esi, byte [rdx + rdi + 20]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x0a124c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r10 + 10], 15
	LONG $0xeb0f4566; BYTE $0xf4               // por    xmm14, xmm12
	QUAD $0x00c024b47f0f4466; WORD $0x0000     // movdqa    oword [rsp + 192], xmm14
	LONG $0x6f0f4566; BYTE $0xf5               // movdqa    xmm14, xmm13
	LONG $0x6f0f4166; BYTE $0xdd               // movdqa    xmm3, xmm13
	LONG $0xd8640f66                           // pcmpgtb    xmm3, xmm0
	LONG $0x6f0f4466; BYTE $0xe3               // movdqa    xmm12, xmm3
	LONG $0xdb0f4566; BYTE $0xe0               // pand    xmm12, xmm8
	LONG $0xf80f4466; BYTE $0xe3               // psubb    xmm12, xmm3
	LONG $0x640f4566; BYTE $0xe9               // pcmpgtb    xmm13, xmm9
	LONG $0x3a74b60f; BYTE $0x15               // movzx    esi, byte [rdx + rdi + 21]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x0b1254203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r10 + 11], 1
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	QUAD $0x0b0a54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rdx + r9 + 11], 2
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0b3a54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rdx + rdi + 11], 3
	LONG $0x24448b4c; BYTE $0x70               // mov    r8, qword [rsp + 112]
	QUAD $0x0b0254203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r8 + 11], 4
	QUAD $0x000000a0248c8b4c                   // mov    r9, qword [rsp + 160]
	QUAD $0x0b0a54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r9 + 11], 5
	QUAD $0x0b1a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r11 + 11], 6
	WORD $0x8948; BYTE $0xcb                   // mov    rbx, rcx
	QUAD $0x0b0a54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rdx + rcx + 11], 7
	QUAD $0x0b2254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r12 + 11], 8
	QUAD $0x000000b0248c8b48                   // mov    rcx, qword [rsp + 176]
	QUAD $0x0b0a54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rcx + 11], 9
	LONG $0x24748b4c; BYTE $0x60               // mov    r14, qword [rsp + 96]
	QUAD $0x0b3254203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r14 + 11], 10
	LONG $0x247c8b4c; BYTE $0x68               // mov    r15, qword [rsp + 104]
	QUAD $0x0b3a54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r15 + 11], 11
	LONG $0x24748b48; BYTE $0x48               // mov    rsi, qword [rsp + 72]
	QUAD $0x0b3254203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rsi + 11], 12
	LONG $0x24748b48; BYTE $0x08               // mov    rsi, qword [rsp + 8]
	QUAD $0x0b3254203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rsi + 11], 13
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x0b3254203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + rsi + 11], 14
	QUAD $0x0b2a54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + r13 + 11], 15
	QUAD $0x0c125c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r10 + 12], 1
	QUAD $0x0c025c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rax + 12], 2
	QUAD $0x0c3a5c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rdx + rdi + 12], 3
	QUAD $0x0c025c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r8 + 12], 4
	QUAD $0x0c0a5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r9 + 12], 5
	QUAD $0x0c1a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r11 + 12], 6
	QUAD $0x0c1a5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rdx + rbx + 12], 7
	QUAD $0x0c225c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r12 + 12], 8
	QUAD $0x0c0a5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rcx + 12], 9
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x0c325c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r14 + 12], 10
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x0c3a5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r15 + 12], 11
	LONG $0x247c8b4c; BYTE $0x48               // mov    r15, qword [rsp + 72]
	QUAD $0x0c3a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r15 + 12], 12
	LONG $0x247c8b48; BYTE $0x08               // mov    rdi, qword [rsp + 8]
	QUAD $0x0c3a5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rdi + 12], 13
	QUAD $0x0c325c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + rsi + 12], 14
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	QUAD $0x000130249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 304]
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	QUAD $0x0000b0addb0f4466; BYTE $0x00       // pand    xmm13, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xeb0f4466; BYTE $0xeb               // por    xmm13, xmm3
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x0274b60f; BYTE $0x16               // movzx    esi, byte [rdx + rax + 22]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	QUAD $0x0c2a5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r13 + 12], 15
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x6f0f4566; BYTE $0xe6               // movdqa    xmm12, xmm14
	LONG $0x640f4566; BYTE $0xe2               // pcmpgtb    xmm12, xmm10
	LONG $0x6f0f4166; BYTE $0xde               // movdqa    xmm3, xmm14
	LONG $0x640f4166; BYTE $0xdb               // pcmpgtb    xmm3, xmm11
	LONG $0x0274b60f; BYTE $0x17               // movzx    esi, byte [rdx + rax + 23]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x010d027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 13], 1
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x020d0a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 13], 2
	LONG $0x245c8b4c; BYTE $0x28               // mov    r11, qword [rsp + 40]
	QUAD $0x0d1a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r11 + 13], 3
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x040d0a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 13], 4
	QUAD $0x0d0a7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rdx + r9 + 13], 5
	QUAD $0x0000009024b48b4c                   // mov    r14, qword [rsp + 144]
	QUAD $0x0d327c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r14 + 13], 6
	LONG $0x24748b48; BYTE $0x50               // mov    rsi, qword [rsp + 80]
	QUAD $0x070d327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 13], 7
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x080d327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 13], 8
	QUAD $0x0d227c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r12 + 13], 9
	QUAD $0x0d027c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rdx + r8 + 13], 10
	QUAD $0x0b0d1a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 13], 11
	QUAD $0x0d3a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r15 + 13], 12
	QUAD $0x0d0d3a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 13], 13
	QUAD $0x0d127c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r10 + 13], 14
	QUAD $0x0d2a7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r13 + 13], 15
	QUAD $0x0000c0a5db0f4466; BYTE $0x00       // pand    xmm12, oword 192[rbp] /* [rip + .LCPI8_12] */
	QUAD $0x000000d09ddb0f66                   // pand    xmm3, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xeb0f4166; BYTE $0xdc               // por    xmm3, xmm12
	LONG $0x6f0f4566; BYTE $0xd6               // movdqa    xmm10, xmm14
	LONG $0x640f4466; BYTE $0xd7               // pcmpgtb    xmm10, xmm7
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x74b60f42; WORD $0x1922             // movzx    esi, byte [rdx + r12 + 25]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000e095db0f4466; BYTE $0x00       // pand    xmm10, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xeb0f4466; BYTE $0xd3               // por    xmm10, xmm3
	LONG $0x74b60f42; WORD $0x1a22             // movzx    esi, byte [rdx + r12 + 26]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	QUAD $0x010e0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 14], 1
	LONG $0x24748b48; BYTE $0x40               // mov    rsi, qword [rsp + 64]
	QUAD $0x020e3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 14], 2
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x0e1a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 14], 3
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	QUAD $0x040e0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 14], 4
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x0e0a74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r9 + 14], 5
	WORD $0x894d; BYTE $0xf3                   // mov    r11, r14
	QUAD $0x0e3274203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r14 + 14], 6
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x0e3274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r14 + 14], 7
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x080e0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 14], 8
	QUAD $0x000000b0248c8b4c                   // mov    r9, qword [rsp + 176]
	QUAD $0x0e0a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r9 + 14], 9
	QUAD $0x0e0274203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r8 + 14], 10
	QUAD $0x0b0e1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 14], 11
	QUAD $0x0e3a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 14], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d0e0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 14], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e0e0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 14], 14
	QUAD $0x0e2a74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rdx + r13 + 14], 15
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x0f2a6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rdx + r13 + 15], 1
	QUAD $0x020f326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 15], 2
	QUAD $0x0f126c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r10 + 15], 3
	QUAD $0x0f226c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r12 + 15], 4
	QUAD $0x050f3a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 15], 5
	QUAD $0x0f1a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r11 + 15], 6
	QUAD $0x0f326c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r14 + 15], 7
	QUAD $0x080f0a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 15], 8
	QUAD $0x0f0a6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r9 + 15], 9
	QUAD $0x0f026c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r8 + 15], 10
	QUAD $0x0b0f1a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 15], 11
	QUAD $0x0f3a6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r15 + 15], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d0f026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 15], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e0f026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 15], 14
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0f0f026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 15], 15
	QUAD $0x112a54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r13 + 17], 1
	QUAD $0x02113254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 17], 2
	QUAD $0x111254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r10 + 17], 3
	QUAD $0x112254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r12 + 17], 4
	QUAD $0x05113a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 17], 5
	QUAD $0x111a54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r11 + 17], 6
	QUAD $0x113254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r14 + 17], 7
	QUAD $0x08110a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 17], 8
	QUAD $0x110a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r9 + 17], 9
	QUAD $0x110254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r8 + 17], 10
	QUAD $0x0b111a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 17], 11
	QUAD $0x113a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 17], 12
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d110254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 17], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e110254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 17], 14
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0f110254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 17], 15
	QUAD $0x122a7c203a0f4666; BYTE $0x01       // pinsrb    xmm15, byte [rdx + r13 + 18], 1
	QUAD $0x12327c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rdx + rsi + 18], 2
	QUAD $0x12127c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r10 + 18], 3
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x12227c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rdx + r12 + 18], 4
	QUAD $0x123a7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rdi + 18], 5
	QUAD $0x121a7c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r11 + 18], 6
	QUAD $0x12327c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r14 + 18], 7
	QUAD $0x120a7c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rdx + rcx + 18], 8
	QUAD $0x120a7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r9 + 18], 9
	QUAD $0x12027c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + r8 + 18], 10
	QUAD $0x121a7c203a0f4466; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + rbx + 18], 11
	WORD $0x8948; BYTE $0xdf                   // mov    rdi, rbx
	QUAD $0x123a7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r15 + 18], 12
	LONG $0x24548b4c; BYTE $0x08               // mov    r10, qword [rsp + 8]
	QUAD $0x12127c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + r10 + 18], 13
	LONG $0xeb0f4566; BYTE $0xd5               // por    xmm10, xmm13
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0x640f4466; BYTE $0xee               // pcmpgtb    xmm13, xmm6
	LONG $0x6f0f4166; BYTE $0xde               // movdqa    xmm3, xmm14
	LONG $0xdd640f66                           // pcmpgtb    xmm3, xmm5
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x0274b60f; BYTE $0x1b               // movzx    esi, byte [rdx + rax + 27]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x120a7c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + rcx + 18], 14
	QUAD $0x0000f0addb0f4466; BYTE $0x00       // pand    xmm13, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0x5ddb0f66; BYTE $0x60               // pand    xmm3, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xeb0f4166; BYTE $0xdd               // por    xmm3, xmm13
	LONG $0x0274b60f; BYTE $0x1c               // movzx    esi, byte [rdx + rax + 28]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x120a7c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + rcx + 18], 15
	LONG $0xeb0f4166; BYTE $0xda               // por    xmm3, xmm10
	QUAD $0x000110249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm3
	LONG $0x6f0f4166; BYTE $0xde               // movdqa    xmm3, xmm14
	LONG $0xda640f66                           // pcmpgtb    xmm3, xmm2
	LONG $0x6f0f4466; BYTE $0xeb               // movdqa    xmm13, xmm3
	QUAD $0x000000a0956f0f66                   // movdqa    xmm2, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdb0f4466; BYTE $0xea               // pand    xmm13, xmm2
	LONG $0xf80f4466; BYTE $0xeb               // psubb    xmm13, xmm3
	LONG $0x6f0f4566; BYTE $0xd6               // movdqa    xmm10, xmm14
	LONG $0x640f4566; BYTE $0xd7               // pcmpgtb    xmm10, xmm15
	LONG $0x0274b60f; BYTE $0x1d               // movzx    esi, byte [rdx + rax + 29]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	QUAD $0x00f024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 240]
	LONG $0xdb0f4466; BYTE $0xfa               // pand    xmm15, xmm2
	QUAD $0x000000b0956f0f66                   // movdqa    xmm2, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xdb0f4466; BYTE $0xd2               // pand    xmm10, xmm2
	LONG $0xeb0f4566; BYTE $0xd7               // por    xmm10, xmm15
	LONG $0x0274b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rax + 30]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x0244b60f; BYTE $0x1f               // movzx    eax, byte [rdx + rax + 31]
	LONG $0x38244489                           // mov    dword [rsp + 56], eax
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0113024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 19], 1
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x02130a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 19], 2
	QUAD $0x132a4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r13 + 19], 3
	QUAD $0x13224c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r12 + 19], 4
	QUAD $0x000000a024848b4c                   // mov    r8, qword [rsp + 160]
	QUAD $0x13024c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rdx + r8 + 19], 5
	QUAD $0x131a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r11 + 19], 6
	WORD $0x894c; BYTE $0xdb                   // mov    rbx, r11
	QUAD $0x13324c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r14 + 19], 7
	WORD $0x894d; BYTE $0xf7                   // mov    r15, r14
	LONG $0x24748b48; BYTE $0x20               // mov    rsi, qword [rsp + 32]
	QUAD $0x0813324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 19], 8
	QUAD $0x130a4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rdx + r9 + 19], 9
	LONG $0x245c8b4c; BYTE $0x60               // mov    r11, qword [rsp + 96]
	QUAD $0x131a4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r11 + 19], 10
	QUAD $0x0b133a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 19], 11
	LONG $0x247c8b48; BYTE $0x48               // mov    rdi, qword [rsp + 72]
	QUAD $0x0c133a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 19], 12
	QUAD $0x13124c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r10 + 19], 13
	WORD $0x894d; BYTE $0xd6                   // mov    r14, r10
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0e133a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 19], 14
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x13124c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r10 + 19], 15
	QUAD $0x01140264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 20], 1
	QUAD $0x02140a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 20], 2
	LONG $0x246c8b4c; BYTE $0x28               // mov    r13, qword [rsp + 40]
	QUAD $0x142a64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r13 + 20], 3
	QUAD $0x142264203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r12 + 20], 4
	QUAD $0x140264203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rdx + r8 + 20], 5
	QUAD $0x06141a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 20], 6
	QUAD $0x143a64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r15 + 20], 7
	QUAD $0x08143264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 20], 8
	QUAD $0x140a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r9 + 20], 9
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	QUAD $0x141a64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r11 + 20], 10
	LONG $0x245c8b48; BYTE $0x68               // mov    rbx, qword [rsp + 104]
	QUAD $0x0b141a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 20], 11
	LONG $0x247c8b4c; BYTE $0x48               // mov    r15, qword [rsp + 72]
	QUAD $0x143a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 20], 12
	QUAD $0x143264203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r14 + 20], 13
	QUAD $0x0e143a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 20], 14
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	QUAD $0x141264203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rdx + r10 + 20], 15
	LONG $0xeb0f4566; BYTE $0xd5               // por    xmm10, xmm13
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0x640f4466; BYTE $0xe9               // pcmpgtb    xmm13, xmm1
	LONG $0x6f0f4566; BYTE $0xfe               // movdqa    xmm15, xmm14
	LONG $0x640f4466; BYTE $0xfc               // pcmpgtb    xmm15, xmm4
	LONG $0x4c6e0f66; WORD $0x3824             // movd    xmm1, dword [rsp + 56]
	QUAD $0x01150244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 21], 1
	QUAD $0x160244203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rdx + rax + 22], 1
	QUAD $0x17024c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rax + 23], 1
	QUAD $0x19025c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rax + 25], 1
	QUAD $0x011a027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 26], 1
	QUAD $0x011b026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 27], 1
	QUAD $0x011c0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 28], 1
	QUAD $0x011d025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 29], 1
	QUAD $0x011e0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 30], 1
	QUAD $0x011f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 1
	QUAD $0x02150a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 21], 2
	QUAD $0x160a44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rcx + 22], 2
	QUAD $0x170a4c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rcx + 23], 2
	QUAD $0x190a5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rcx + 25], 2
	QUAD $0x021a0a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 26], 2
	QUAD $0x021b0a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 27], 2
	QUAD $0x021c0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 28], 2
	QUAD $0x021d0a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 29], 2
	QUAD $0x021e0a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 30], 2
	QUAD $0x021f0a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 31], 2
	LONG $0x246c8b4c; BYTE $0x28               // mov    r13, qword [rsp + 40]
	QUAD $0x152a44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r13 + 21], 3
	QUAD $0x152244203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r12 + 21], 4
	QUAD $0x000000a024bc8b48                   // mov    rdi, qword [rsp + 160]
	QUAD $0x05153a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 21], 5
	QUAD $0x00000090249c8b4c                   // mov    r11, qword [rsp + 144]
	QUAD $0x151a44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rdx + r11 + 21], 6
	LONG $0x24748b4c; BYTE $0x50               // mov    r14, qword [rsp + 80]
	QUAD $0x153244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r14 + 21], 7
	QUAD $0x08153244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 21], 8
	QUAD $0x000000b024948b4c                   // mov    r10, qword [rsp + 176]
	QUAD $0x151244203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rdx + r10 + 21], 9
	QUAD $0x150244203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r8 + 21], 10
	QUAD $0x0b151a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 21], 11
	QUAD $0x153a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r15 + 21], 12
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x0d150a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 21], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e150244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 21], 14
	QUAD $0x150a44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r9 + 21], 15
	QUAD $0x000000c0a56f0f66                   // movdqa    xmm4, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xdb0f4466; BYTE $0xec               // pand    xmm13, xmm4
	QUAD $0x000000d0a56f0f66                   // movdqa    xmm4, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xdb0f4466; BYTE $0xfc               // pand    xmm15, xmm4
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0x640f4466; BYTE $0xe8               // pcmpgtb    xmm13, xmm0
	QUAD $0x000000e0856f0f66                   // movdqa    xmm0, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xdb0f4466; BYTE $0xe8               // pand    xmm13, xmm0
	LONG $0xeb0f4566; BYTE $0xef               // por    xmm13, xmm15
	QUAD $0x162a44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r13 + 22], 3
	QUAD $0x162244203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r12 + 22], 4
	QUAD $0x163a44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rdi + 22], 5
	QUAD $0x161a44203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rdx + r11 + 22], 6
	QUAD $0x163244203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rdx + r14 + 22], 7
	QUAD $0x163244203a0f4466; BYTE $0x08       // pinsrb    xmm8, byte [rdx + rsi + 22], 8
	QUAD $0x161244203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rdx + r10 + 22], 9
	QUAD $0x160244203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + r8 + 22], 10
	QUAD $0x161a44203a0f4466; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + rbx + 22], 11
	QUAD $0x163a44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r15 + 22], 12
	QUAD $0x160a44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rcx + 22], 13
	QUAD $0x160244203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + rax + 22], 14
	QUAD $0x160a44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r9 + 22], 15
	QUAD $0x172a4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r13 + 23], 3
	QUAD $0x17224c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r12 + 23], 4
	QUAD $0x173a4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rdx + rdi + 23], 5
	QUAD $0x171a4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r11 + 23], 6
	QUAD $0x17324c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r14 + 23], 7
	QUAD $0x17324c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rdx + rsi + 23], 8
	QUAD $0x17124c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r10 + 23], 9
	QUAD $0x17024c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r8 + 23], 10
	QUAD $0x171a4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + rbx + 23], 11
	QUAD $0x173a4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r15 + 23], 12
	QUAD $0x170a4c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rcx + 23], 13
	QUAD $0x17024c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + rax + 23], 14
	QUAD $0x170a4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r9 + 23], 15
	QUAD $0x192a5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r13 + 25], 3
	QUAD $0x19225c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r12 + 25], 4
	QUAD $0x193a5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rdi + 25], 5
	QUAD $0x191a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r11 + 25], 6
	QUAD $0x19325c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r14 + 25], 7
	QUAD $0x19325c203a0f4466; BYTE $0x08       // pinsrb    xmm11, byte [rdx + rsi + 25], 8
	QUAD $0x19125c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rdx + r10 + 25], 9
	QUAD $0x19025c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r8 + 25], 10
	QUAD $0x191a5c203a0f4466; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + rbx + 25], 11
	QUAD $0x193a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r15 + 25], 12
	QUAD $0x190a5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rcx + 25], 13
	QUAD $0x19025c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + rax + 25], 14
	QUAD $0x190a5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r9 + 25], 15
	QUAD $0x1a2a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r13 + 26], 3
	QUAD $0x1a227c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r12 + 26], 4
	QUAD $0x051a3a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 26], 5
	QUAD $0x1a1a7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r11 + 26], 6
	QUAD $0x1a327c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rdx + r14 + 26], 7
	QUAD $0x081a327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 26], 8
	QUAD $0x1a127c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r10 + 26], 9
	QUAD $0x1a027c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rdx + r8 + 26], 10
	QUAD $0x0b1a1a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 26], 11
	QUAD $0x1a3a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r15 + 26], 12
	QUAD $0x0d1a0a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 26], 13
	QUAD $0x0e1a027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 26], 14
	LONG $0xeb0f4566; BYTE $0xea               // por    xmm13, xmm10
	LONG $0x6f0f4566; BYTE $0xe6               // movdqa    xmm12, xmm14
	LONG $0x6f0f4166; BYTE $0xe6               // movdqa    xmm4, xmm14
	LONG $0x640f4166; BYTE $0xe0               // pcmpgtb    xmm4, xmm8
	LONG $0x6f0f4166; BYTE $0xc6               // movdqa    xmm0, xmm14
	LONG $0x640f4166; BYTE $0xc1               // pcmpgtb    xmm0, xmm9
	QUAD $0x0000f0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0x6f0f4466; WORD $0x607d             // movdqa    xmm15, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xdb0f4166; BYTE $0xc7               // pand    xmm0, xmm15
	LONG $0xc4eb0f66                           // por    xmm0, xmm4
	QUAD $0x1a0a7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r9 + 26], 15
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xe4               // movdqa    xmm4, xmm12
	LONG $0x640f4166; BYTE $0xe3               // pcmpgtb    xmm4, xmm11
	LONG $0x6f0f4466; BYTE $0xc4               // movdqa    xmm8, xmm4
	QUAD $0x0000a09d6f0f4466; BYTE $0x00       // movdqa    xmm11, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdb0f4566; BYTE $0xc3               // pand    xmm8, xmm11
	LONG $0xf80f4466; BYTE $0xc4               // psubb    xmm8, xmm4
	LONG $0x6f0f4166; BYTE $0xe4               // movdqa    xmm4, xmm12
	LONG $0xe7640f66                           // pcmpgtb    xmm4, xmm7
	QUAD $0x1b2a6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r13 + 27], 3
	QUAD $0x1b226c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r12 + 27], 4
	QUAD $0x051b3a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 27], 5
	QUAD $0x1b1a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r11 + 27], 6
	QUAD $0x1b326c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r14 + 27], 7
	QUAD $0x081b326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 27], 8
	QUAD $0x1b126c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r10 + 27], 9
	QUAD $0x1b026c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r8 + 27], 10
	QUAD $0x0b1b1a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 27], 11
	QUAD $0x1b3a6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r15 + 27], 12
	QUAD $0x0d1b0a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 27], 13
	QUAD $0x0e1b026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 27], 14
	QUAD $0x1b0a6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r9 + 27], 15
	QUAD $0x1c2a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r13 + 28], 3
	QUAD $0x1c2274203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r12 + 28], 4
	QUAD $0x051c3a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 28], 5
	QUAD $0x1c1a74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r11 + 28], 6
	QUAD $0x1c3274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r14 + 28], 7
	QUAD $0x081c3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 28], 8
	QUAD $0x1c1274203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r10 + 28], 9
	QUAD $0x1c0274203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r8 + 28], 10
	QUAD $0x0b1c1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 28], 11
	QUAD $0x1c3a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r15 + 28], 12
	QUAD $0x0d1c0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 28], 13
	QUAD $0x0000d024bc6f0f66; BYTE $0x00       // movdqa    xmm7, oword [rsp + 208]
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	QUAD $0x0e1c0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 28], 14
	QUAD $0x000000b0a5db0f66                   // pand    xmm4, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	QUAD $0x1c0a74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rdx + r9 + 28], 15
	LONG $0xeb0f4166; BYTE $0xe0               // por    xmm4, xmm8
	LONG $0x6f0f4166; BYTE $0xfc               // movdqa    xmm7, xmm12
	LONG $0xfd640f66                           // pcmpgtb    xmm7, xmm5
	LONG $0x6f0f4166; BYTE $0xec               // movdqa    xmm5, xmm12
	LONG $0xee640f66                           // pcmpgtb    xmm5, xmm6
	QUAD $0x1d2a5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r13 + 29], 3
	QUAD $0x1d225c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r12 + 29], 4
	QUAD $0x051d3a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 29], 5
	QUAD $0x1d1a5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r11 + 29], 6
	QUAD $0x1d325c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r14 + 29], 7
	QUAD $0x081d325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 29], 8
	QUAD $0x1d125c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rdx + r10 + 29], 9
	QUAD $0x1d025c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r8 + 29], 10
	QUAD $0x0b1d1a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 29], 11
	QUAD $0x1d3a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r15 + 29], 12
	QUAD $0x0d1d0a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 29], 13
	QUAD $0x0e1d025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 29], 14
	QUAD $0x1d0a5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r9 + 29], 15
	QUAD $0x000000c0bddb0f66                   // pand    xmm7, oword 192[rbp] /* [rip + .LCPI8_12] */
	QUAD $0x000000d0addb0f66                   // pand    xmm5, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6f0f4166; BYTE $0xf4               // movdqa    xmm6, xmm12
	LONG $0xf3640f66                           // pcmpgtb    xmm6, xmm3
	QUAD $0x000000e0b5db0f66                   // pand    xmm6, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0x1e2a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r13 + 30], 3
	QUAD $0x1f2a4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r13 + 31], 3
	QUAD $0x1e2254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r12 + 30], 4
	QUAD $0x1f224c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r12 + 31], 4
	QUAD $0x051e3a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 30], 5
	QUAD $0x051f3a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 31], 5
	QUAD $0x1e1a54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r11 + 30], 6
	QUAD $0x1f1a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r11 + 31], 6
	QUAD $0x1e3254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r14 + 30], 7
	QUAD $0x1f324c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r14 + 31], 7
	QUAD $0x081e3254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 30], 8
	QUAD $0x081f324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 31], 8
	QUAD $0x1e1254203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r10 + 30], 9
	QUAD $0x1f124c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rdx + r10 + 31], 9
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x1e0254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r8 + 30], 10
	QUAD $0x1f024c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r8 + 31], 10
	QUAD $0x0b1e1a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 30], 11
	QUAD $0x0b1f1a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 31], 11
	QUAD $0x1e3a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r15 + 30], 12
	QUAD $0x1f3a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r15 + 31], 12
	QUAD $0x0d1e0a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 30], 13
	QUAD $0x0d1f0a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 31], 13
	QUAD $0x0e1e0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 30], 14
	QUAD $0x0e1f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 14
	QUAD $0x1e0a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r9 + 30], 15
	QUAD $0x1f0a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r9 + 31], 15
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	LONG $0x6f0f4166; BYTE $0xdc               // movdqa    xmm3, xmm12
	LONG $0xda640f66                           // pcmpgtb    xmm3, xmm2
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0x640f4466; BYTE $0xe1               // pcmpgtb    xmm12, xmm1
	LONG $0x710f4166; WORD $0x07f4             // psllw    xmm12, 7
	LONG $0xdb0f4566; BYTE $0xe7               // pand    xmm12, xmm15
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0x600f4166; BYTE $0xcc               // punpcklbw    xmm1, xmm12
	QUAD $0x0000c024ac6f0f66; BYTE $0x00       // movdqa    xmm5, oword [rsp + 192]
	LONG $0xdd6f0f66                           // movdqa    xmm3, xmm5
	QUAD $0x00011024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 272]
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe36f0f66                           // movdqa    xmm4, xmm3
	LONG $0xe1610f66                           // punpcklwd    xmm4, xmm1
	LONG $0xd9690f66                           // punpckhwd    xmm3, xmm1
	LONG $0x680f4166; BYTE $0xc4               // punpckhbw    xmm0, xmm12
	LONG $0xee680f66                           // punpckhbw    xmm5, xmm6
	LONG $0xcd6f0f66                           // movdqa    xmm1, xmm5
	LONG $0xc8610f66                           // punpcklwd    xmm1, xmm0
	LONG $0xe8690f66                           // punpckhwd    xmm5, xmm0
	LONG $0x244c8b48; BYTE $0x78               // mov    rcx, qword [rsp + 120]
	LONG $0x7f0f41f3; WORD $0x8e6c; BYTE $0x30 // movdqu    oword [r14 + 4*rcx + 48], xmm5
	LONG $0x7f0f41f3; WORD $0x8e4c; BYTE $0x20 // movdqu    oword [r14 + 4*rcx + 32], xmm1
	LONG $0x7f0f41f3; WORD $0x8e5c; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm3
	LONG $0x7f0f41f3; WORD $0x8e24             // movdqu    oword [r14 + 4*rcx], xmm4
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB8_192
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	QUAD $0x000000e824bc3b4c                   // cmp    r15, qword [rsp + 232]
	LONG $0x241c8a44                           // mov    r11b, byte [rsp]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	JNE  LBB8_42
	JMP  LBB8_128

LBB8_194:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	QUAD $0x0000010824848948             // mov    qword [rsp + 264], rax
	QUAD $0x000000e824bc894c             // mov    qword [rsp + 232], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x30         // mov    qword [rsp + 48], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000120248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 288], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000008024b4894c             // mov    qword [rsp + 128], r14

LBB8_195:
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x000000f024848948                   // mov    qword [rsp + 240], rax
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0x05e1c148                           // shl    rcx, 5
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	WORD $0x8948; BYTE $0xcb                   // mov    rbx, rcx
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	WORD $0x8949; BYTE $0xcb                   // mov    r11, rcx
	WORD $0x8949; BYTE $0xca                   // mov    r10, rcx
	WORD $0x8949; BYTE $0xc8                   // mov    r8, rcx
	WORD $0x8949; BYTE $0xc9                   // mov    r9, rcx
	LONG $0x244c8948; BYTE $0x40               // mov    qword [rsp + 64], rcx
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	WORD $0x8949; BYTE $0xcf                   // mov    r15, rcx
	WORD $0x8948; BYTE $0xcf                   // mov    rdi, rcx
	WORD $0x8948; BYTE $0xce                   // mov    rsi, rcx
	LONG $0x0a0cb60f                           // movzx    ecx, byte [rdx + rcx]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x324cb60f; BYTE $0x01               // movzx    ecx, byte [rdx + rsi + 1]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x324cb60f; BYTE $0x02               // movzx    ecx, byte [rdx + rsi + 2]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x324cb60f; BYTE $0x03               // movzx    ecx, byte [rdx + rsi + 3]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x324cb60f; BYTE $0x04               // movzx    ecx, byte [rdx + rsi + 4]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x324cb60f; BYTE $0x05               // movzx    ecx, byte [rdx + rsi + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x324cb60f; BYTE $0x06               // movzx    ecx, byte [rdx + rsi + 6]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x324cb60f; BYTE $0x07               // movzx    ecx, byte [rdx + rsi + 7]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x324cb60f; BYTE $0x08               // movzx    ecx, byte [rdx + rsi + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00011024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm0
	LONG $0x324cb60f; BYTE $0x09               // movzx    ecx, byte [rdx + rsi + 9]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x324cb60f; BYTE $0x0a               // movzx    ecx, byte [rdx + rsi + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x324cb60f; BYTE $0x0b               // movzx    ecx, byte [rdx + rsi + 11]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00009024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 144], xmm0
	LONG $0x324cb60f; BYTE $0x0c               // movzx    ecx, byte [rdx + rsi + 12]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00013024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm0
	LONG $0x324cb60f; BYTE $0x0d               // movzx    ecx, byte [rdx + rsi + 13]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x324cb60f; BYTE $0x0e               // movzx    ecx, byte [rdx + rsi + 14]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x24748948; BYTE $0x38               // mov    qword [rsp + 56], rsi
	WORD $0x8949; BYTE $0xf5                   // mov    r13, rsi
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x08               // mov    qword [rsp + 8], r13
	LONG $0x40ce8349                           // or    r14, 64
	LONG $0x2474894c; BYTE $0x20               // mov    qword [rsp + 32], r14
	LONG $0x60cb8348                           // or    rbx, 96
	LONG $0x245c8948; BYTE $0x58               // mov    qword [rsp + 88], rbx
	LONG $0x00800d48; WORD $0x0000             // or    rax, 128
	WORD $0x894c; BYTE $0xdb                   // mov    rbx, r11
	LONG $0xa0cb8148; WORD $0x0000; BYTE $0x00 // or    rbx, 160
	WORD $0x894d; BYTE $0xd3                   // mov    r11, r10
	LONG $0xc0cb8149; WORD $0x0000; BYTE $0x00 // or    r11, 192
	LONG $0x245c894c; BYTE $0x60               // mov    qword [rsp + 96], r11
	LONG $0xe0c88149; WORD $0x0000; BYTE $0x00 // or    r8, 224
	LONG $0x00c98149; WORD $0x0001; BYTE $0x00 // or    r9, 256
	LONG $0x244c894c; BYTE $0x50               // mov    qword [rsp + 80], r9
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	LONG $0x20c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 288
	LONG $0x40cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 320
	LONG $0x60cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 352
	LONG $0x247c894c; BYTE $0x28               // mov    qword [rsp + 40], r15
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	LONG $0x80ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 384
	WORD $0x8948; BYTE $0xf7                   // mov    rdi, rsi
	LONG $0xa0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 416
	LONG $0x247c8948; BYTE $0x68               // mov    qword [rsp + 104], rdi
	WORD $0x8948; BYTE $0xf7                   // mov    rdi, rsi
	LONG $0xc0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 448
	LONG $0x247c8948; BYTE $0x10               // mov    qword [rsp + 16], rdi
	WORD $0x8948; BYTE $0xf7                   // mov    rdi, rsi
	LONG $0xe0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 480
	LONG $0x247c8948; BYTE $0x18               // mov    qword [rsp + 24], rdi
	QUAD $0x012a6c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rdx + r13 + 1], 1
	QUAD $0x01326c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rdx + r14 + 1], 2
	LONG $0x246c8b4c; BYTE $0x58               // mov    r13, qword [rsp + 88]
	QUAD $0x012a6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r13 + 1], 3
	QUAD $0x0401026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 1], 4
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	QUAD $0x05011a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 1], 5
	QUAD $0x011a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r11 + 1], 6
	QUAD $0x01026c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r8 + 1], 7
	QUAD $0x010a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r9 + 1], 8
	QUAD $0x09010a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 1], 9
	QUAD $0x01226c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r12 + 1], 10
	QUAD $0x013a6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r15 + 1], 11
	QUAD $0x01126c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r10 + 1], 12
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	LONG $0x245c8b4c; BYTE $0x68               // mov    r11, qword [rsp + 104]
	QUAD $0x011a6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r11 + 1], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e01026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 1], 14
	QUAD $0x0f013a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 1], 15
	QUAD $0x012024946f0f4466; WORD $0x0000     // movdqa    xmm10, oword [rsp + 288]
	LONG $0xda0f4166; BYTE $0xea               // pminub    xmm5, xmm10
	LONG $0x740f4166; BYTE $0xea               // pcmpeqb    xmm5, xmm10
	LONG $0xf56f0f66                           // movdqa    xmm6, xmm5
	QUAD $0x000000a08d6f0f66                   // movdqa    xmm1, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xf1df0f66                           // pandn    xmm6, xmm1
	LONG $0xf5fc0f66                           // paddb    xmm6, xmm5
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	LONG $0x3274b60f; BYTE $0x0f               // movzx    esi, byte [rdx + rsi + 15]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x01020c203a0f4466                   // pinsrb    xmm9, byte [rdx + rax], 1
	LONG $0x24548b4c; BYTE $0x20               // mov    r10, qword [rsp + 32]
	QUAD $0x02120c203a0f4666                   // pinsrb    xmm9, byte [rdx + r10], 2
	QUAD $0x032a0c203a0f4666                   // pinsrb    xmm9, byte [rdx + r13], 3
	WORD $0x894c; BYTE $0xf6                   // mov    rsi, r14
	QUAD $0x04320c203a0f4666                   // pinsrb    xmm9, byte [rdx + r14], 4
	WORD $0x8949; BYTE $0xde                   // mov    r14, rbx
	QUAD $0x051a0c203a0f4466                   // pinsrb    xmm9, byte [rdx + rbx], 5
	LONG $0x245c8b48; BYTE $0x60               // mov    rbx, qword [rsp + 96]
	QUAD $0x061a0c203a0f4466                   // pinsrb    xmm9, byte [rdx + rbx], 6
	QUAD $0x07020c203a0f4666                   // pinsrb    xmm9, byte [rdx + r8], 7
	LONG $0x247c8b4c; BYTE $0x50               // mov    r15, qword [rsp + 80]
	QUAD $0x083a0c203a0f4666                   // pinsrb    xmm9, byte [rdx + r15], 8
	LONG $0x244c8948; BYTE $0x40               // mov    qword [rsp + 64], rcx
	QUAD $0x090a0c203a0f4466                   // pinsrb    xmm9, byte [rdx + rcx], 9
	LONG $0x2464894c; BYTE $0x48               // mov    qword [rsp + 72], r12
	QUAD $0x0a220c203a0f4666                   // pinsrb    xmm9, byte [rdx + r12], 10
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0b3a0c203a0f4466                   // pinsrb    xmm9, byte [rdx + rdi], 11
	QUAD $0x0c0a0c203a0f4666                   // pinsrb    xmm9, byte [rdx + r9], 12
	QUAD $0x0d1a0c203a0f4666                   // pinsrb    xmm9, byte [rdx + r11], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e020c203a0f4466                   // pinsrb    xmm9, byte [rdx + rax], 14
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0f2a0c203a0f4666                   // pinsrb    xmm9, byte [rdx + r13], 15
	LONG $0xda0f4566; BYTE $0xca               // pminub    xmm9, xmm10
	LONG $0x740f4566; BYTE $0xca               // pcmpeqb    xmm9, xmm10
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0102027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 2], 1
	QUAD $0x02127c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rdx + r10 + 2], 2
	LONG $0x246c8b4c; BYTE $0x58               // mov    r13, qword [rsp + 88]
	QUAD $0x022a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r13 + 2], 3
	QUAD $0x0402327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 2], 4
	QUAD $0x02327c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rdx + r14 + 2], 5
	QUAD $0x06021a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 2], 6
	QUAD $0x02027c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rdx + r8 + 2], 7
	QUAD $0x023a7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r15 + 2], 8
	QUAD $0x09020a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 2], 9
	QUAD $0x02227c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rdx + r12 + 2], 10
	QUAD $0x0b023a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 2], 11
	QUAD $0x020a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r9 + 2], 12
	QUAD $0x021a7c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rdx + r11 + 2], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e02027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 2], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f02027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 2], 15
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x01030244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 3], 1
	QUAD $0x031244203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r10 + 3], 2
	QUAD $0x032a44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r13 + 3], 3
	QUAD $0x04033244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 3], 4
	QUAD $0x033244203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rdx + r14 + 3], 5
	QUAD $0x06031a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 3], 6
	QUAD $0x030244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r8 + 3], 7
	QUAD $0x033a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r15 + 3], 8
	QUAD $0x09030a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 3], 9
	QUAD $0x032244203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r12 + 3], 10
	QUAD $0x0b033a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 3], 11
	QUAD $0x030a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r9 + 3], 12
	QUAD $0x031a44203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rdx + r11 + 3], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e030244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 3], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f030244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 3], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0104025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 4], 1
	QUAD $0x04125c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rdx + r10 + 4], 2
	QUAD $0x042a5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r13 + 4], 3
	QUAD $0x0404325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 4], 4
	QUAD $0x04325c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rdx + r14 + 4], 5
	QUAD $0x06041a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 4], 6
	QUAD $0x04025c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r8 + 4], 7
	QUAD $0x043a5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r15 + 4], 8
	QUAD $0x09040a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 4], 9
	QUAD $0x04225c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r12 + 4], 10
	QUAD $0x0b043a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 4], 11
	QUAD $0x040a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r9 + 4], 12
	QUAD $0x041a5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r11 + 4], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e04025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 4], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f04025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 4], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x01050254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 5], 1
	QUAD $0x051254203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r10 + 5], 2
	QUAD $0x052a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r13 + 5], 3
	QUAD $0x04053254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 5], 4
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	QUAD $0x000000c024b48948                   // mov    qword [rsp + 192], rsi
	QUAD $0x053254203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r14 + 5], 5
	QUAD $0x06051a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 5], 6
	QUAD $0x050254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r8 + 5], 7
	QUAD $0x053a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r15 + 5], 8
	QUAD $0x09050a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 5], 9
	QUAD $0x052254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r12 + 5], 10
	QUAD $0x0b053a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 5], 11
	QUAD $0x050a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 5], 12
	QUAD $0x051a54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r11 + 5], 13
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	LONG $0xdf0f4466; BYTE $0xc9               // pandn    xmm9, xmm1
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e050254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 5], 14
	LONG $0xda0f4166; BYTE $0xfa               // pminub    xmm7, xmm10
	LONG $0x740f4166; BYTE $0xfa               // pcmpeqb    xmm7, xmm10
	QUAD $0x000000b08d6f0f66                   // movdqa    xmm1, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xf9df0f66                           // pandn    xmm7, xmm1
	LONG $0xeb0f4166; BYTE $0xf9               // por    xmm7, xmm9
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x74b60f42; WORD $0x1022             // movzx    esi, byte [rdx + r12 + 16]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x0f050a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 5], 15
	LONG $0xda0f4166; BYTE $0xc2               // pminub    xmm0, xmm10
	LONG $0x740f4166; BYTE $0xc2               // pcmpeqb    xmm0, xmm10
	QUAD $0x000000c08d6f0f66                   // movdqa    xmm1, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xc1df0f66                           // pandn    xmm0, xmm1
	LONG $0xc7eb0f66                           // por    xmm0, xmm7
	LONG $0x74b60f42; WORD $0x1122             // movzx    esi, byte [rdx + r12 + 17]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0xff760f66                           // pcmpeqd    xmm7, xmm7
	LONG $0xf7f80f66                           // psubb    xmm6, xmm7
	LONG $0x760f4566; BYTE $0xc9               // pcmpeqd    xmm9, xmm9
	LONG $0xc6eb0f66                           // por    xmm0, xmm6
	LONG $0x74b60f42; WORD $0x1222             // movzx    esi, byte [rdx + r12 + 18]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xda0f4166; BYTE $0xda               // pminub    xmm3, xmm10
	LONG $0x740f4166; BYTE $0xda               // pcmpeqb    xmm3, xmm10
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xdedf0f66                           // pandn    xmm3, xmm6
	LONG $0xda0f4166; BYTE $0xd2               // pminub    xmm2, xmm10
	LONG $0x740f4166; BYTE $0xd2               // pcmpeqb    xmm2, xmm10
	QUAD $0x000000e0b56f0f66                   // movdqa    xmm6, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xd6df0f66                           // pandn    xmm2, xmm6
	LONG $0xd3eb0f66                           // por    xmm2, xmm3
	LONG $0x74b60f42; WORD $0x1322             // movzx    esi, byte [rdx + r12 + 19]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x060a44203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rdx + rcx + 6], 1
	LONG $0x245c8b4c; BYTE $0x20               // mov    r11, qword [rsp + 32]
	QUAD $0x061a44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rdx + r11 + 6], 2
	QUAD $0x062a44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r13 + 6], 3
	QUAD $0x061244203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r10 + 6], 4
	LONG $0x2474894c; BYTE $0x78               // mov    qword [rsp + 120], r14
	QUAD $0x063244203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rdx + r14 + 6], 5
	QUAD $0x061a44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rdx + rbx + 6], 6
	QUAD $0x000000d02484894c                   // mov    qword [rsp + 208], r8
	QUAD $0x060244203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rdx + r8 + 6], 7
	QUAD $0x063a44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r15 + 6], 8
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]
	QUAD $0x063a44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rdx + r15 + 6], 9
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x060244203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + rax + 6], 10
	LONG $0x24548b4c; BYTE $0x28               // mov    r10, qword [rsp + 40]
	QUAD $0x061244203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r10 + 6], 11
	QUAD $0x060a44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r9 + 6], 12
	QUAD $0x063a44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rdi + 6], 13
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	QUAD $0x061a44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + rbx + 6], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x060244203a0f4466; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + rax + 6], 15
	LONG $0xda0f4566; BYTE $0xc2               // pminub    xmm8, xmm10
	LONG $0x740f4566; BYTE $0xc2               // pcmpeqb    xmm8, xmm10
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xdf0f4466; BYTE $0xc3               // pandn    xmm8, xmm3
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x74b60f42; WORD $0x1422             // movzx    esi, byte [rdx + r12 + 20]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	QUAD $0x0000a024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 160]
	QUAD $0x01070a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 7], 1
	QUAD $0x071a74203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rdx + r11 + 7], 2
	QUAD $0x072a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r13 + 7], 3
	QUAD $0x000000c0248c8b48                   // mov    rcx, qword [rsp + 192]
	QUAD $0x04070a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 7], 4
	QUAD $0x073274203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r14 + 7], 5
	LONG $0x24748b4c; BYTE $0x60               // mov    r14, qword [rsp + 96]
	QUAD $0x073274203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r14 + 7], 6
	QUAD $0x070274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r8 + 7], 7
	LONG $0x24648b4c; BYTE $0x50               // mov    r12, qword [rsp + 80]
	QUAD $0x072274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r12 + 7], 8
	QUAD $0x073a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r15 + 7], 9
	LONG $0x24448b4c; BYTE $0x48               // mov    r8, qword [rsp + 72]
	QUAD $0x070274203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r8 + 7], 10
	QUAD $0x071274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r10 + 7], 11
	QUAD $0x070a74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r9 + 7], 12
	QUAD $0x0d073a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 7], 13
	WORD $0x8949; BYTE $0xff                   // mov    r15, rdi
	QUAD $0x0e071a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 7], 14
	QUAD $0x0f070274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 7], 15
	LONG $0xda0f4166; BYTE $0xf2               // pminub    xmm6, xmm10
	LONG $0x740f4166; BYTE $0xf2               // pcmpeqb    xmm6, xmm10
	LONG $0xef0f4166; BYTE $0xf1               // pxor    xmm6, xmm9
	LONG $0xdb760f66                           // pcmpeqd    xmm3, xmm3
	LONG $0xf6710f66; BYTE $0x07               // psllw    xmm6, 7
	LONG $0x556f0f66; BYTE $0x60               // movdqa    xmm2, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xf2db0f66                           // pand    xmm6, xmm2
	LONG $0xeb0f4166; BYTE $0xf0               // por    xmm6, xmm8
	LONG $0x6f0f4466; BYTE $0xc6               // movdqa    xmm8, xmm6
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	LONG $0x0274b60f; BYTE $0x15               // movzx    esi, byte [rdx + rax + 21]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	QUAD $0x00011024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 272]
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x01080a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 8], 1
	WORD $0x894c; BYTE $0xd8                   // mov    rax, r11
	QUAD $0x081a54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r11 + 8], 2
	WORD $0x894c; BYTE $0xef                   // mov    rdi, r13
	QUAD $0x082a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r13 + 8], 3
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	QUAD $0x081254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r10 + 8], 4
	LONG $0x245c8b4c; BYTE $0x78               // mov    r11, qword [rsp + 120]
	QUAD $0x081a54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r11 + 8], 5
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	QUAD $0x083254203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r14 + 8], 6
	QUAD $0x000000d024b48b48                   // mov    rsi, qword [rsp + 208]
	QUAD $0x07083254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 8], 7
	WORD $0x894d; BYTE $0xe6                   // mov    r14, r12
	QUAD $0x082254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r12 + 8], 8
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x09081a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 8], 9
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	QUAD $0x080254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r8 + 8], 10
	LONG $0x245c8b48; BYTE $0x28               // mov    rbx, qword [rsp + 40]
	QUAD $0x0b081a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 8], 11
	LONG $0x244c894c; BYTE $0x70               // mov    qword [rsp + 112], r9
	QUAD $0x080a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 8], 12
	WORD $0x894d; BYTE $0xf8                   // mov    r8, r15
	QUAD $0x083a54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r15 + 8], 13
	LONG $0x247c8b4c; BYTE $0x10               // mov    r15, qword [rsp + 16]
	QUAD $0x083a54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r15 + 8], 14
	QUAD $0x090a5c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rcx + 9], 1
	QUAD $0x09025c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rax + 9], 2
	QUAD $0x093a5c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rdx + rdi + 9], 3
	QUAD $0x09125c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r10 + 9], 4
	WORD $0x894c; BYTE $0xd3                   // mov    rbx, r10
	QUAD $0x091a5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r11 + 9], 5
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	QUAD $0x092a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r13 + 9], 6
	WORD $0x894d; BYTE $0xea                   // mov    r10, r13
	QUAD $0x09325c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rdx + rsi + 9], 7
	QUAD $0x09325c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r14 + 9], 8
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x09025c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rax + 9], 9
	QUAD $0x09225c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r12 + 9], 10
	LONG $0x245c8b4c; BYTE $0x28               // mov    r11, qword [rsp + 40]
	QUAD $0x091a5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r11 + 9], 11
	QUAD $0x090a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r9 + 9], 12
	QUAD $0x09025c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + r8 + 9], 13
	WORD $0x894d; BYTE $0xc5                   // mov    r13, r8
	LONG $0x24448b4c; BYTE $0x10               // mov    r8, qword [rsp + 16]
	QUAD $0x09025c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r8 + 9], 14
	LONG $0x247c8b4c; BYTE $0x18               // mov    r15, qword [rsp + 24]
	QUAD $0x093a5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r15 + 9], 15
	LONG $0xeb0f4466; BYTE $0xc0               // por    xmm8, xmm0
	QUAD $0x00a024847f0f4466; WORD $0x0000     // movdqa    oword [rsp + 160], xmm8
	LONG $0xda0f4566; BYTE $0xda               // pminub    xmm11, xmm10
	LONG $0x740f4566; BYTE $0xda               // pcmpeqb    xmm11, xmm10
	LONG $0x6f0f4166; BYTE $0xc3               // movdqa    xmm0, xmm11
	QUAD $0x0000a0856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdf0f4166; BYTE $0xc0               // pandn    xmm0, xmm8
	LONG $0xfc0f4166; BYTE $0xc3               // paddb    xmm0, xmm11
	LONG $0x244c8b4c; BYTE $0x38               // mov    r9, qword [rsp + 56]
	LONG $0x74b60f42; WORD $0x160a             // movzx    esi, byte [rdx + r9 + 22]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	QUAD $0x083a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r15 + 8], 15
	LONG $0xda0f4166; BYTE $0xd2               // pminub    xmm2, xmm10
	LONG $0x740f4166; BYTE $0xd2               // pcmpeqb    xmm2, xmm10
	LONG $0xdf0f4166; BYTE $0xd0               // pandn    xmm2, xmm8
	QUAD $0x0a0a64203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rcx + 10], 1
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x0a0a64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rcx + 10], 2
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x0a0a64203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rdx + rcx + 10], 3
	QUAD $0x0a1a64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rbx + 10], 4
	QUAD $0x0a3a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rdi + 10], 5
	QUAD $0x0a1264203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r10 + 10], 6
	QUAD $0x000000d0249c8b48                   // mov    rbx, qword [rsp + 208]
	QUAD $0x0a1a64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rdx + rbx + 10], 7
	QUAD $0x0a3264203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r14 + 10], 8
	QUAD $0x0a0264203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rdx + rax + 10], 9
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	QUAD $0x0a2264203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + r12 + 10], 10
	QUAD $0x0a1a64203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r11 + 10], 11
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x0a0264203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + rax + 10], 12
	QUAD $0x0a2a64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r13 + 10], 13
	QUAD $0x0a0264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r8 + 10], 14
	QUAD $0x0a3a64203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + r15 + 10], 15
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	LONG $0xda0f4566; BYTE $0xe2               // pminub    xmm12, xmm10
	LONG $0x740f4566; BYTE $0xe2               // pcmpeqb    xmm12, xmm10
	QUAD $0x0000b0a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xeb0f4466; BYTE $0xe2               // por    xmm12, xmm2
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x74b60f42; WORD $0x170a             // movzx    esi, byte [rdx + r9 + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	QUAD $0x00009024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 144]
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	QUAD $0x0b0254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r8 + 11], 1
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]
	QUAD $0x0b3a54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r15 + 11], 2
	QUAD $0x030b0a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 11], 3
	QUAD $0x000000c0249c8b4c                   // mov    r11, qword [rsp + 192]
	QUAD $0x0b1a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r11 + 11], 4
	QUAD $0x050b3a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 11], 5
	QUAD $0x0b1254203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r10 + 11], 6
	QUAD $0x070b1a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 11], 7
	LONG $0x24748b48; BYTE $0x50               // mov    rsi, qword [rsp + 80]
	QUAD $0x080b3254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 11], 8
	QUAD $0x0b3254203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r14 + 11], 9
	LONG $0x24748b4c; BYTE $0x48               // mov    r14, qword [rsp + 72]
	QUAD $0x0b3254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r14 + 11], 10
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x0b0b3a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 11], 11
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x0b0a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 11], 12
	QUAD $0x0b2a54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r13 + 11], 13
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0e0b3254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 11], 14
	QUAD $0x0b2254203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r12 + 11], 15
	WORD $0x894d; BYTE $0xe5                   // mov    r13, r12
	LONG $0xda0f4166; BYTE $0xd2               // pminub    xmm2, xmm10
	LONG $0x740f4166; BYTE $0xd2               // pcmpeqb    xmm2, xmm10
	QUAD $0x000000c095df0f66                   // pandn    xmm2, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xeb0f4166; BYTE $0xd4               // por    xmm2, xmm12
	LONG $0x0274b60f; BYTE $0x18               // movzx    esi, byte [rdx + rax + 24]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	LONG $0xc3f80f66                           // psubb    xmm0, xmm3
	LONG $0xd0eb0f66                           // por    xmm2, xmm0
	QUAD $0x00009024947f0f66; BYTE $0x00       // movdqa    oword [rsp + 144], xmm2
	LONG $0x0274b60f; BYTE $0x19               // movzx    esi, byte [rdx + rax + 25]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	QUAD $0x00013024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 304]
	QUAD $0x0c0254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r8 + 12], 1
	QUAD $0x0c3a54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r15 + 12], 2
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x0c0254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r8 + 12], 3
	WORD $0x894d; BYTE $0xda                   // mov    r10, r11
	QUAD $0x0c1a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r11 + 12], 4
	LONG $0x24748b48; BYTE $0x78               // mov    rsi, qword [rsp + 120]
	QUAD $0x050c3254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 12], 5
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x0c3a54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r15 + 12], 6
	QUAD $0x070c1a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 12], 7
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x0c1a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r11 + 12], 8
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x090c0a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 12], 9
	QUAD $0x0c3254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r14 + 12], 10
	QUAD $0x0b0c3a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 12], 11
	QUAD $0x0c0a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 12], 12
	LONG $0x24648b4c; BYTE $0x68               // mov    r12, qword [rsp + 104]
	QUAD $0x0c2254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 12], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e0c0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 12], 14
	QUAD $0x0c2a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r13 + 12], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0d0274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rax + 13], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0d2a74203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rdx + r13 + 13], 2
	QUAD $0x0d0274203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r8 + 13], 3
	QUAD $0x0d1274203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rdx + r10 + 13], 4
	QUAD $0x0d3274203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rdx + rsi + 13], 5
	QUAD $0x0d3a74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r15 + 13], 6
	QUAD $0x0d1a74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rdx + rbx + 13], 7
	QUAD $0x0d1a74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r11 + 13], 8
	QUAD $0x0d0a74203a0f4466; BYTE $0x09       // pinsrb    xmm14, byte [rdx + rcx + 13], 9
	QUAD $0x0d3274203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + r14 + 13], 10
	QUAD $0x0d3a74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + rdi + 13], 11
	QUAD $0x0d0a74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r9 + 13], 12
	QUAD $0x0d2274203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + r12 + 13], 13
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x0d2a74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r13 + 13], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0d0274203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rax + 13], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0e026c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rdx + rax + 14], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0e026c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rax + 14], 2
	QUAD $0x0e026c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r8 + 14], 3
	QUAD $0x0e126c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rdx + r10 + 14], 4
	QUAD $0x0e326c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rsi + 14], 5
	QUAD $0x0e3a6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r15 + 14], 6
	QUAD $0x0e1a6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rdx + rbx + 14], 7
	QUAD $0x0e1a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r11 + 14], 8
	QUAD $0x0e0a6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rdx + rcx + 14], 9
	QUAD $0x0e326c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + r14 + 14], 10
	QUAD $0x0e3a6c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + rdi + 14], 11
	QUAD $0x0e0a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r9 + 14], 12
	QUAD $0x0e226c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r12 + 14], 13
	QUAD $0x0e2a6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r13 + 14], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e026c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rax + 14], 15
	QUAD $0x0000b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 176]
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x010f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 15], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0f2a44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r13 + 15], 2
	QUAD $0x0f0244203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r8 + 15], 3
	QUAD $0x0f1244203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r10 + 15], 4
	QUAD $0x050f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 15], 5
	QUAD $0x0f3a44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rdx + r15 + 15], 6
	QUAD $0x070f1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 15], 7
	QUAD $0x0f1a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r11 + 15], 8
	QUAD $0x090f0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 15], 9
	QUAD $0x0f3244203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r14 + 15], 10
	QUAD $0x0b0f3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 15], 11
	QUAD $0x0f0a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r9 + 15], 12
	QUAD $0x0f2244203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rdx + r12 + 15], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e0f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 15], 14
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0f0f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 15], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0111024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 17], 1
	QUAD $0x112a4c203a0f4266; BYTE $0x02       // pinsrb    xmm1, byte [rdx + r13 + 17], 2
	QUAD $0x11024c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r8 + 17], 3
	QUAD $0x11124c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r10 + 17], 4
	QUAD $0x0511324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 17], 5
	QUAD $0x113a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r15 + 17], 6
	QUAD $0x07111a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 17], 7
	QUAD $0x111a4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r11 + 17], 8
	QUAD $0x09110a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 17], 9
	QUAD $0x11324c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r14 + 17], 10
	QUAD $0x0b113a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 17], 11
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x110a4c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r9 + 17], 12
	QUAD $0x11224c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r12 + 17], 13
	LONG $0xda0f4166; BYTE $0xd2               // pminub    xmm2, xmm10
	LONG $0x740f4166; BYTE $0xd2               // pcmpeqb    xmm2, xmm10
	QUAD $0x000000d095df0f66                   // pandn    xmm2, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xda0f4566; BYTE $0xf2               // pminub    xmm14, xmm10
	LONG $0x740f4566; BYTE $0xf2               // pcmpeqb    xmm14, xmm10
	QUAD $0x0000e0b5df0f4466; BYTE $0x00       // pandn    xmm14, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xeb0f4466; BYTE $0xf2               // por    xmm14, xmm2
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	LONG $0x3a74b60f; BYTE $0x1a               // movzx    esi, byte [rdx + rdi + 26]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x244c8b4c; BYTE $0x10               // mov    r9, qword [rsp + 16]
	QUAD $0x110a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r9 + 17], 14
	LONG $0xda0f4566; BYTE $0xea               // pminub    xmm13, xmm10
	LONG $0x740f4566; BYTE $0xea               // pcmpeqb    xmm13, xmm10
	QUAD $0x0000f0addf0f4466; BYTE $0x00       // pandn    xmm13, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xeb0f4566; BYTE $0xee               // por    xmm13, xmm14
	LONG $0x3a74b60f; BYTE $0x1b               // movzx    esi, byte [rdx + rdi + 27]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	LONG $0xda0f4166; BYTE $0xc2               // pminub    xmm0, xmm10
	LONG $0x740f4166; BYTE $0xc2               // pcmpeqb    xmm0, xmm10
	QUAD $0x0000010085ef0f66                   // pxor    xmm0, oword 256[rbp] /* [rip + .LCPI8_16] */
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0x45db0f66; BYTE $0x60               // pand    xmm0, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x3a74b60f; BYTE $0x1c               // movzx    esi, byte [rdx + rdi + 28]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x112a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r13 + 17], 15
	QUAD $0x0000902484eb0f66; BYTE $0x00       // por    xmm0, oword [rsp + 144]
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0xda0f4166; BYTE $0xca               // pminub    xmm1, xmm10
	LONG $0x740f4166; BYTE $0xca               // pcmpeqb    xmm1, xmm10
	LONG $0x6f0f4166; BYTE $0xc2               // movdqa    xmm0, xmm10
	LONG $0x6f0f4466; BYTE $0xf1               // movdqa    xmm14, xmm1
	QUAD $0x0000a0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdf0f4566; BYTE $0xf2               // pandn    xmm14, xmm10
	LONG $0xfc0f4466; BYTE $0xf1               // paddb    xmm14, xmm1
	QUAD $0x009024b47f0f4466; WORD $0x0000     // movdqa    oword [rsp + 144], xmm14
	LONG $0x3a74b60f; BYTE $0x1d               // movzx    esi, byte [rdx + rdi + 29]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0110026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 16], 1
	QUAD $0x0112027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 18], 1
	QUAD $0x13027c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rax + 19], 1
	QUAD $0x01140264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 20], 1
	QUAD $0x01150274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 21], 1
	QUAD $0x16024c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rax + 22], 1
	QUAD $0x170244203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rdx + rax + 23], 1
	QUAD $0x18025c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rax + 24], 1
	QUAD $0x0119025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 25], 1
	QUAD $0x011a0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 26], 1
	QUAD $0x1b0264203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rax + 27], 1
	QUAD $0x1c026c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rdx + rax + 28], 1
	QUAD $0x1d0254203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rdx + rax + 29], 1
	LONG $0x3a74b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rdi + 30]
	LONG $0x6e0f4466; BYTE $0xf6               // movd    xmm14, esi
	QUAD $0x1e0274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rax + 30], 1
	LONG $0x3a74b60f; BYTE $0x1f               // movzx    esi, byte [rdx + rdi + 31]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	QUAD $0x011f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0210026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 16], 2
	QUAD $0x0212027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 18], 2
	QUAD $0x13027c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rdx + rax + 19], 2
	QUAD $0x02140264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 20], 2
	QUAD $0x02150274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 21], 2
	QUAD $0x16024c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rax + 22], 2
	QUAD $0x170244203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rax + 23], 2
	QUAD $0x18025c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rax + 24], 2
	QUAD $0x0219025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 25], 2
	QUAD $0x021a0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 26], 2
	QUAD $0x1b0264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rax + 27], 2
	QUAD $0x1c026c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rax + 28], 2
	QUAD $0x1d0254203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rax + 29], 2
	QUAD $0x1e0274203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rdx + rax + 30], 2
	QUAD $0x021f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 2
	QUAD $0x10026c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r8 + 16], 3
	QUAD $0x10126c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r10 + 16], 4
	LONG $0x24748b48; BYTE $0x78               // mov    rsi, qword [rsp + 120]
	QUAD $0x0510326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 16], 5
	QUAD $0x103a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r15 + 16], 6
	QUAD $0x07101a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 16], 7
	QUAD $0x101a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r11 + 16], 8
	QUAD $0x09100a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 16], 9
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x0a10026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 16], 10
	QUAD $0x10326c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r14 + 16], 11
	LONG $0x24648b4c; BYTE $0x70               // mov    r12, qword [rsp + 112]
	QUAD $0x10226c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r12 + 16], 12
	LONG $0x247c8b48; BYTE $0x68               // mov    rdi, qword [rsp + 104]
	QUAD $0x0d103a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 16], 13
	QUAD $0x100a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r9 + 16], 14
	QUAD $0x102a6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r13 + 16], 15
	LONG $0xe8da0f66                           // pminub    xmm5, xmm0
	LONG $0xe8740f66                           // pcmpeqb    xmm5, xmm0
	QUAD $0x12027c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r8 + 18], 3
	QUAD $0x12127c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r10 + 18], 4
	QUAD $0x0512327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 18], 5
	QUAD $0x123a7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r15 + 18], 6
	QUAD $0x07121a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 18], 7
	QUAD $0x121a7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r11 + 18], 8
	QUAD $0x09120a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 18], 9
	QUAD $0x0a12027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 18], 10
	QUAD $0x12327c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r14 + 18], 11
	QUAD $0x12227c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r12 + 18], 12
	QUAD $0x0d123a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 18], 13
	QUAD $0x120a7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r9 + 18], 14
	QUAD $0x122a7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r13 + 18], 15
	QUAD $0x13027c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r8 + 19], 3
	QUAD $0x13127c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rdx + r10 + 19], 4
	QUAD $0x13327c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rsi + 19], 5
	QUAD $0x133a7c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r15 + 19], 6
	QUAD $0x131a7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rdx + rbx + 19], 7
	QUAD $0x131a7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r11 + 19], 8
	QUAD $0x130a7c203a0f4466; BYTE $0x09       // pinsrb    xmm15, byte [rdx + rcx + 19], 9
	QUAD $0x13027c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + rax + 19], 10
	QUAD $0x13327c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r14 + 19], 11
	QUAD $0x13227c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r12 + 19], 12
	QUAD $0x133a7c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rdi + 19], 13
	QUAD $0x130a7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + r9 + 19], 14
	QUAD $0x132a7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + r13 + 19], 15
	QUAD $0x140264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r8 + 20], 3
	QUAD $0x141264203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r10 + 20], 4
	QUAD $0x05143264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 20], 5
	QUAD $0x143a64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r15 + 20], 6
	QUAD $0x07141a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 20], 7
	QUAD $0x141a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r11 + 20], 8
	QUAD $0x09140a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 20], 9
	QUAD $0x0a140264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 20], 10
	QUAD $0x143264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r14 + 20], 11
	QUAD $0x142264203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r12 + 20], 12
	QUAD $0x0d143a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 20], 13
	QUAD $0x140a64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r9 + 20], 14
	QUAD $0x142a64203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rdx + r13 + 20], 15
	QUAD $0x150274203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r8 + 21], 3
	QUAD $0x151274203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r10 + 21], 4
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x05153274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 21], 5
	QUAD $0x153a74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r15 + 21], 6
	QUAD $0x07151a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 21], 7
	QUAD $0x151a74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r11 + 21], 8
	QUAD $0x09150a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 21], 9
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x151274203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r10 + 21], 10
	QUAD $0x153274203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r14 + 21], 11
	QUAD $0x152274203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r12 + 21], 12
	QUAD $0x0d153a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 21], 13
	QUAD $0x150a74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r9 + 21], 14
	QUAD $0x000000a0addf0f66                   // pandn    xmm5, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xf8da0f66                           // pminub    xmm7, xmm0
	LONG $0xf8740f66                           // pcmpeqb    xmm7, xmm0
	QUAD $0x000000b0bddf0f66                   // pandn    xmm7, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0xda0f4466; BYTE $0xf8               // pminub    xmm15, xmm0
	LONG $0x740f4466; BYTE $0xf8               // pcmpeqb    xmm15, xmm0
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xdf0f4466; BYTE $0xfd               // pandn    xmm15, xmm5
	LONG $0xeb0f4466; BYTE $0xff               // por    xmm15, xmm7
	QUAD $0x152a74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rdx + r13 + 21], 15
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	QUAD $0x00009024bc6f0f66; BYTE $0x00       // movdqa    xmm7, oword [rsp + 144]
	LONG $0xfdf80f66                           // psubb    xmm7, xmm5
	LONG $0xeb0f4466; BYTE $0xff               // por    xmm15, xmm7
	LONG $0xe0da0f66                           // pminub    xmm4, xmm0
	LONG $0xe0740f66                           // pcmpeqb    xmm4, xmm0
	QUAD $0x000000d0bd6f0f66                   // movdqa    xmm7, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xe7df0f66                           // pandn    xmm4, xmm7
	LONG $0xf0da0f66                           // pminub    xmm6, xmm0
	LONG $0xf0740f66                           // pcmpeqb    xmm6, xmm0
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xf7df0f66                           // pandn    xmm6, xmm7
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x16024c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r8 + 22], 3
	QUAD $0x16024c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rdx + rax + 22], 4
	QUAD $0x16324c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rdx + rsi + 22], 5
	QUAD $0x163a4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r15 + 22], 6
	QUAD $0x161a4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rdx + rbx + 22], 7
	QUAD $0x161a4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r11 + 22], 8
	QUAD $0x160a4c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rdx + rcx + 22], 9
	QUAD $0x16124c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r10 + 22], 10
	QUAD $0x16324c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r14 + 22], 11
	QUAD $0x16224c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r12 + 22], 12
	QUAD $0x163a4c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rdi + 22], 13
	QUAD $0x160a4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r9 + 22], 14
	QUAD $0x162a4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r13 + 22], 15
	LONG $0xda0f4466; BYTE $0xc8               // pminub    xmm9, xmm0
	LONG $0x740f4466; BYTE $0xc8               // pcmpeqb    xmm9, xmm0
	QUAD $0x000000f0bd6f0f66                   // movdqa    xmm7, oword 240[rbp] /* [rip + .LCPI8_15] */
	LONG $0xdf0f4466; BYTE $0xcf               // pandn    xmm9, xmm7
	LONG $0xeb0f4466; BYTE $0xce               // por    xmm9, xmm6
	QUAD $0x170244203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r8 + 23], 3
	QUAD $0x170244203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rdx + rax + 23], 4
	QUAD $0x173244203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rsi + 23], 5
	QUAD $0x173a44203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rdx + r15 + 23], 6
	QUAD $0x171a44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rdx + rbx + 23], 7
	QUAD $0x171a44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r11 + 23], 8
	QUAD $0x170a44203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rdx + rcx + 23], 9
	QUAD $0x171244203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + r10 + 23], 10
	QUAD $0x173244203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r14 + 23], 11
	QUAD $0x172244203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + r12 + 23], 12
	QUAD $0x173a44203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + rdi + 23], 13
	QUAD $0x170a44203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + r9 + 23], 14
	QUAD $0x172a44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r13 + 23], 15
	LONG $0xda0f4466; BYTE $0xc0               // pminub    xmm8, xmm0
	LONG $0x740f4466; BYTE $0xc0               // pcmpeqb    xmm8, xmm0
	LONG $0xef0f4466; BYTE $0xc5               // pxor    xmm8, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0x710f4166; WORD $0x07f0             // psllw    xmm8, 7
	LONG $0x756f0f66; BYTE $0x60               // movdqa    xmm6, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xdb0f4466; BYTE $0xc6               // pand    xmm8, xmm6
	LONG $0xeb0f4566; BYTE $0xc1               // por    xmm8, xmm9
	QUAD $0x18025c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r8 + 24], 3
	QUAD $0x18025c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rdx + rax + 24], 4
	QUAD $0x18325c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rsi + 24], 5
	QUAD $0x183a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r15 + 24], 6
	QUAD $0x181a5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rdx + rbx + 24], 7
	QUAD $0x181a5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r11 + 24], 8
	QUAD $0x180a5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rcx + 24], 9
	QUAD $0x18125c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r10 + 24], 10
	QUAD $0x18325c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r14 + 24], 11
	QUAD $0x18225c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r12 + 24], 12
	QUAD $0x183a5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rdi + 24], 13
	QUAD $0x180a5c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r9 + 24], 14
	QUAD $0x19025c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r8 + 25], 3
	QUAD $0x0419025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 25], 4
	QUAD $0x0519325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 25], 5
	QUAD $0x193a5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r15 + 25], 6
	QUAD $0x07191a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 25], 7
	QUAD $0x191a5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r11 + 25], 8
	QUAD $0x09190a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 25], 9
	QUAD $0x19125c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r10 + 25], 10
	QUAD $0x19325c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r14 + 25], 11
	QUAD $0x19225c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r12 + 25], 12
	QUAD $0x0d193a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 25], 13
	QUAD $0x190a5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r9 + 25], 14
	QUAD $0x192a5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r13 + 25], 15
	LONG $0xeb0f4566; BYTE $0xc7               // por    xmm8, xmm15
	LONG $0xe06f0f66                           // movdqa    xmm4, xmm0
	LONG $0xd8da0f66                           // pminub    xmm3, xmm0
	LONG $0xd8740f66                           // pcmpeqb    xmm3, xmm0
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	QUAD $0x0000a08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 160[rbp] /* [rip + .LCPI8_10] */
	LONG $0xdf0f4166; BYTE $0xc1               // pandn    xmm0, xmm9
	LONG $0xc3fc0f66                           // paddb    xmm0, xmm3
	QUAD $0x182a5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r13 + 24], 15
	LONG $0xda0f4466; BYTE $0xdc               // pminub    xmm11, xmm4
	LONG $0x740f4466; BYTE $0xdc               // pcmpeqb    xmm11, xmm4
	LONG $0xdf0f4566; BYTE $0xd9               // pandn    xmm11, xmm9
	QUAD $0x1a0254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r8 + 26], 3
	QUAD $0x041a0254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 26], 4
	QUAD $0x051a3254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 26], 5
	QUAD $0x1a3a54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r15 + 26], 6
	QUAD $0x071a1a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 26], 7
	QUAD $0x1a1a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r11 + 26], 8
	QUAD $0x091a0a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 26], 9
	QUAD $0x1a1254203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r10 + 26], 10
	QUAD $0x1a3254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r14 + 26], 11
	QUAD $0x1a2254203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r12 + 26], 12
	QUAD $0x0d1a3a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 26], 13
	QUAD $0x1a0a54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r9 + 26], 14
	QUAD $0x1a2a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r13 + 26], 15
	LONG $0xd4da0f66                           // pminub    xmm2, xmm4
	LONG $0xd4740f66                           // pcmpeqb    xmm2, xmm4
	QUAD $0x000000b095df0f66                   // pandn    xmm2, oword 176[rbp] /* [rip + .LCPI8_11] */
	LONG $0xeb0f4166; BYTE $0xd3               // por    xmm2, xmm11
	QUAD $0x1b0264203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r8 + 27], 3
	QUAD $0x1b0264203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rax + 27], 4
	QUAD $0x1b3264203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rsi + 27], 5
	QUAD $0x1b3a64203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r15 + 27], 6
	QUAD $0x1b1a64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rdx + rbx + 27], 7
	QUAD $0x1b1a64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r11 + 27], 8
	QUAD $0x1b0a64203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rdx + rcx + 27], 9
	QUAD $0x1b1264203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + r10 + 27], 10
	QUAD $0x1b3264203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r14 + 27], 11
	QUAD $0x1b2264203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r12 + 27], 12
	QUAD $0x1b3a64203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + rdi + 27], 13
	QUAD $0x1b0a64203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r9 + 27], 14
	QUAD $0x1b2a64203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + r13 + 27], 15
	LONG $0xda0f4466; BYTE $0xe4               // pminub    xmm12, xmm4
	LONG $0x740f4466; BYTE $0xe4               // pcmpeqb    xmm12, xmm4
	LONG $0xdc6f0f66                           // movdqa    xmm3, xmm4
	QUAD $0x0000c0a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 192[rbp] /* [rip + .LCPI8_12] */
	LONG $0xeb0f4466; BYTE $0xe2               // por    xmm12, xmm2
	LONG $0xc5f80f66                           // psubb    xmm0, xmm5
	LONG $0xeb0f4466; BYTE $0xe0               // por    xmm12, xmm0
	QUAD $0x1c026c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r8 + 28], 3
	QUAD $0x1d0254203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r8 + 29], 3
	QUAD $0x1e0274203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r8 + 30], 3
	QUAD $0x1f024c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r8 + 31], 3
	QUAD $0x1c026c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rdx + rax + 28], 4
	QUAD $0x1d0254203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rdx + rax + 29], 4
	QUAD $0x1e0274203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rdx + rax + 30], 4
	QUAD $0x041f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 4
	QUAD $0x1c326c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rsi + 28], 5
	QUAD $0x1d3254203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rsi + 29], 5
	QUAD $0x1e3274203a0f4466; BYTE $0x05       // pinsrb    xmm14, byte [rdx + rsi + 30], 5
	QUAD $0x051f324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 31], 5
	QUAD $0x1c3a6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r15 + 28], 6
	QUAD $0x1d3a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r15 + 29], 6
	QUAD $0x1e3a74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r15 + 30], 6
	QUAD $0x1f3a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r15 + 31], 6
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x1c1a6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rdx + rbx + 28], 7
	QUAD $0x1d1a54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rdx + rbx + 29], 7
	QUAD $0x1e1a74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rdx + rbx + 30], 7
	QUAD $0x071f1a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 31], 7
	QUAD $0x1c1a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r11 + 28], 8
	QUAD $0x1d1a54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r11 + 29], 8
	QUAD $0x1e1a74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r11 + 30], 8
	QUAD $0x1f1a4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r11 + 31], 8
	QUAD $0x1c0a6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rdx + rcx + 28], 9
	QUAD $0x1d0a54203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rcx + 29], 9
	QUAD $0x1e0a74203a0f4466; BYTE $0x09       // pinsrb    xmm14, byte [rdx + rcx + 30], 9
	QUAD $0x091f0a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 31], 9
	WORD $0x894c; BYTE $0xd0                   // mov    rax, r10
	QUAD $0x1c126c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + r10 + 28], 10
	QUAD $0x1d1254203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + r10 + 29], 10
	QUAD $0x1e1274203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + r10 + 30], 10
	QUAD $0x1f124c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rdx + r10 + 31], 10
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x1c026c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + rax + 28], 11
	QUAD $0x1d0254203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + rax + 29], 11
	QUAD $0x1e0274203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + rax + 30], 11
	QUAD $0x0b1f024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 31], 11
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x1c226c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r12 + 28], 12
	QUAD $0x1d2254203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r12 + 29], 12
	QUAD $0x1e2274203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r12 + 30], 12
	QUAD $0x1f224c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r12 + 31], 12
	QUAD $0x1c3a6c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + rdi + 28], 13
	QUAD $0x1d3a54203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rdi + 29], 13
	QUAD $0x1e3a74203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rdi + 30], 13
	QUAD $0x0d1f3a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 31], 13
	QUAD $0x1c0a6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r9 + 28], 14
	QUAD $0x1d0a54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r9 + 29], 14
	QUAD $0x1e0a74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r9 + 30], 14
	QUAD $0x1f0a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r9 + 31], 14
	WORD $0x894c; BYTE $0xe8                   // mov    rax, r13
	QUAD $0x1c2a6c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + r13 + 28], 15
	QUAD $0x1d2a54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + r13 + 29], 15
	QUAD $0x1e2a74203a0f4666; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + r13 + 30], 15
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0xda0f4466; BYTE $0xec               // pminub    xmm13, xmm4
	LONG $0x740f4466; BYTE $0xec               // pcmpeqb    xmm13, xmm4
	QUAD $0x0000d0addf0f4466; BYTE $0x00       // pandn    xmm13, oword 208[rbp] /* [rip + .LCPI8_13] */
	LONG $0xda0f4466; BYTE $0xd4               // pminub    xmm10, xmm4
	LONG $0x740f4466; BYTE $0xd4               // pcmpeqb    xmm10, xmm4
	QUAD $0x0000e095df0f4466; BYTE $0x00       // pandn    xmm10, oword 224[rbp] /* [rip + .LCPI8_14] */
	LONG $0xeb0f4566; BYTE $0xd5               // por    xmm10, xmm13
	QUAD $0x1f2a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r13 + 31], 15
	LONG $0xda0f4466; BYTE $0xf4               // pminub    xmm14, xmm4
	LONG $0x740f4466; BYTE $0xf4               // pcmpeqb    xmm14, xmm4
	LONG $0xdf0f4466; BYTE $0xf7               // pandn    xmm14, xmm7
	LONG $0xeb0f4566; BYTE $0xf2               // por    xmm14, xmm10
	LONG $0xccda0f66                           // pminub    xmm1, xmm4
	LONG $0xcc740f66                           // pcmpeqb    xmm1, xmm4
	LONG $0xcdef0f66                           // pxor    xmm1, xmm5
	LONG $0xf1710f66; BYTE $0x07               // psllw    xmm1, 7
	LONG $0xcedb0f66                           // pand    xmm1, xmm6
	LONG $0xeb0f4166; BYTE $0xce               // por    xmm1, xmm14
	LONG $0xeb0f4166; BYTE $0xcc               // por    xmm1, xmm12
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc1600f66                           // punpcklbw    xmm0, xmm1
	QUAD $0x0000a024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 160]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	QUAD $0x0000b024ac6f0f66; BYTE $0x00       // movdqa    xmm5, oword [rsp + 176]
	LONG $0xd5600f66                           // punpcklbw    xmm2, xmm5
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd8610f66                           // punpcklwd    xmm3, xmm0
	LONG $0xd0690f66                           // punpckhwd    xmm2, xmm0
	LONG $0x680f4466; BYTE $0xc1               // punpckhbw    xmm8, xmm1
	LONG $0xe5680f66                           // punpckhbw    xmm4, xmm5
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xe0               // punpckhwd    xmm4, xmm8
	QUAD $0x000000f0248c8b48                   // mov    rcx, qword [rsp + 240]
	LONG $0x7f0f41f3; WORD $0x8e64; BYTE $0x30 // movdqu    oword [r14 + 4*rcx + 48], xmm4
	LONG $0x7f0f41f3; WORD $0x8e44; BYTE $0x20 // movdqu    oword [r14 + 4*rcx + 32], xmm0
	LONG $0x7f0f41f3; WORD $0x8e54; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm2
	LONG $0x7f0f41f3; WORD $0x8e1c             // movdqu    oword [r14 + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000e8248c3b48                   // cmp    rcx, qword [rsp + 232]
	JNE  LBB8_195
	QUAD $0x0000010024bc8b4c                   // mov    r15, qword [rsp + 256]
	QUAD $0x000000e824bc3b4c                   // cmp    r15, qword [rsp + 232]
	LONG $0x241c8a44                           // mov    r11b, byte [rsp]
	QUAD $0x0000010824b48b48                   // mov    rsi, qword [rsp + 264]
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	JNE  LBB8_67
	JMP  LBB8_132

LBB8_197:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x06e0c148                     // shl    rax, 6
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	LONG $0x24448948; BYTE $0x28         // mov    qword [rsp + 40], rax
	LONG $0x247c894c; BYTE $0x20         // mov    qword [rsp + 32], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24048948                     // mov    qword [rsp], rax
	LONG $0x246c8944; BYTE $0x30         // mov    dword [rsp + 48], r13d
	LONG $0x6e0f4166; BYTE $0xc5         // movd    xmm0, r13d
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00f8       // pshufd    xmm15, xmm0, 0
	WORD $0x3145; BYTE $0xc9             // xor    r9d, r9d
	QUAD $0x0000008024b4894c             // mov    qword [rsp + 128], r14
	QUAD $0x000080856f0f4466; BYTE $0x00 // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI8_8] */

LBB8_198:
	LONG $0x244c894c; BYTE $0x10               // mov    qword [rsp + 16], r9
	LONG $0x06e1c149                           // shl    r9, 6
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	WORD $0x894d; BYTE $0xcc                   // mov    r12, r9
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	LONG $0x04b70f42; BYTE $0x0a               // movzx    eax, word [rdx + r9]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x020a             // movzx    eax, word [rdx + r9 + 2]
	LONG $0xd86e0f66                           // movd    xmm3, eax
	LONG $0x44b70f42; WORD $0x040a             // movzx    eax, word [rdx + r9 + 4]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x060a             // movzx    eax, word [rdx + r9 + 6]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x54b70f46; WORD $0x080a             // movzx    r10d, word [rdx + r9 + 8]
	LONG $0x74b70f42; WORD $0x0a0a             // movzx    esi, word [rdx + r9 + 10]
	LONG $0x5cb70f46; WORD $0x0c0a             // movzx    r11d, word [rdx + r9 + 12]
	LONG $0x44b70f42; WORD $0x0e0a             // movzx    eax, word [rdx + r9 + 14]
	LONG $0x08244489                           // mov    dword [rsp + 8], eax
	LONG $0x44b70f42; WORD $0x100a             // movzx    eax, word [rdx + r9 + 16]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	LONG $0x44b70f42; WORD $0x200a             // movzx    eax, word [rdx + r9 + 32]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x300a             // movzx    eax, word [rdx + r9 + 48]
	WORD $0x894d; BYTE $0xcf                   // mov    r15, r9
	LONG $0x40cf8349                           // or    r15, 64
	LONG $0x80c88149; WORD $0x0000; BYTE $0x00 // or    r8, 128
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x00cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 256
	LONG $0x40c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 320
	LONG $0x80cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 384
	LONG $0xc40f4266; WORD $0x3a2c; BYTE $0x01 // pinsrw    xmm5, word [rdx + r15], 1
	LONG $0xc40f4266; WORD $0x022c; BYTE $0x02 // pinsrw    xmm5, word [rdx + r8], 2
	LONG $0xc40f4266; WORD $0x222c; BYTE $0x03 // pinsrw    xmm5, word [rdx + r12], 3
	LONG $0xc40f4266; WORD $0x2a2c; BYTE $0x04 // pinsrw    xmm5, word [rdx + r13], 4
	LONG $0x2cc40f66; WORD $0x050a             // pinsrw    xmm5, word [rdx + rcx], 5
	LONG $0x2cc40f66; WORD $0x063a             // pinsrw    xmm5, word [rdx + rdi], 6
	LONG $0xc0cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 448
	LONG $0x2cc40f66; WORD $0x071a             // pinsrw    xmm5, word [rdx + rbx], 7
	LONG $0x6e0f4466; BYTE $0xc8               // movd    xmm9, eax
	LONG $0x44b70f42; WORD $0x120a             // movzx    eax, word [rdx + r9 + 18]
	LONG $0x18244489                           // mov    dword [rsp + 24], eax
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc5650f66                           // pcmpgtw    xmm0, xmm5
	QUAD $0x01023a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 2], 1
	QUAD $0x0202025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 2], 2
	QUAD $0x0302225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 2], 3
	QUAD $0x04022a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 2], 4
	LONG $0x5cc40f66; WORD $0x020a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 2], 5
	LONG $0x5cc40f66; WORD $0x023a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 2], 6
	LONG $0x5cc40f66; WORD $0x021a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 2], 7
	QUAD $0x01103a74c40f4266                   // pinsrw    xmm6, word [rdx + r15 + 16], 1
	QUAD $0x02100274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 16], 2
	QUAD $0x03102274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 16], 3
	QUAD $0x04102a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 16], 4
	LONG $0x74c40f66; WORD $0x100a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 16], 5
	LONG $0x74c40f66; WORD $0x103a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 16], 6
	LONG $0x74c40f66; WORD $0x101a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 16], 7
	LONG $0x6f0f4566; BYTE $0xd7               // movdqa    xmm10, xmm15
	QUAD $0x01203a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 32], 1
	QUAD $0x0220024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 32], 2
	QUAD $0x0320224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 32], 3
	QUAD $0x04202a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 32], 4
	LONG $0x4cc40f66; WORD $0x200a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 32], 5
	LONG $0x4cc40f66; WORD $0x203a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 32], 6
	LONG $0x4cc40f66; WORD $0x201a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 32], 7
	LONG $0x650f4466; BYTE $0xd6               // pcmpgtw    xmm10, xmm6
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xf1650f66                           // pcmpgtw    xmm6, xmm1
	QUAD $0x01303a4cc40f4666                   // pinsrw    xmm9, word [rdx + r15 + 48], 1
	QUAD $0x0230024cc40f4666                   // pinsrw    xmm9, word [rdx + r8 + 48], 2
	QUAD $0x0330224cc40f4666                   // pinsrw    xmm9, word [rdx + r12 + 48], 3
	QUAD $0x04302a4cc40f4666                   // pinsrw    xmm9, word [rdx + r13 + 48], 4
	QUAD $0x05300a4cc40f4466                   // pinsrw    xmm9, word [rdx + rcx + 48], 5
	QUAD $0x06303a4cc40f4466                   // pinsrw    xmm9, word [rdx + rdi + 48], 6
	QUAD $0x07301a4cc40f4466                   // pinsrw    xmm9, word [rdx + rbx + 48], 7
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0x650f4166; BYTE $0xe9               // pcmpgtw    xmm5, xmm9
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0xcb650f66                           // pcmpgtw    xmm1, xmm3
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd96f0f66                           // movdqa    xmm3, xmm1
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xd9f80f66                           // psubb    xmm3, xmm1
	LONG $0x6e0f4166; BYTE $0xca               // movd    xmm1, r10d
	LONG $0x74b70f46; WORD $0x140a             // movzx    r14d, word [rdx + r9 + 20]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x01043a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 4], 1
	QUAD $0x02040254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 4], 2
	QUAD $0x03042254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 4], 3
	QUAD $0x04042a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 4], 4
	LONG $0x54c40f66; WORD $0x040a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 4], 5
	LONG $0x54c40f66; WORD $0x043a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 4], 6
	LONG $0x54c40f66; WORD $0x041a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 4], 7
	QUAD $0x01063a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 6], 1
	QUAD $0x02060264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 6], 2
	QUAD $0x03062264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 6], 3
	QUAD $0x04062a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 6], 4
	LONG $0x64c40f66; WORD $0x060a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 6], 5
	LONG $0x64c40f66; WORD $0x063a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 6], 6
	LONG $0x64c40f66; WORD $0x061a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 6], 7
	QUAD $0x01083a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 8], 1
	QUAD $0x0208024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 8], 2
	QUAD $0x0308224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 8], 3
	QUAD $0x04082a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 8], 4
	LONG $0x4cc40f66; WORD $0x080a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 8], 5
	LONG $0x4cc40f66; WORD $0x083a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 8], 6
	LONG $0xdb0f4166; BYTE $0xc0               // pand    xmm0, xmm8
	LONG $0xd8eb0f66                           // por    xmm3, xmm0
	LONG $0x6f0f4166; BYTE $0xff               // movdqa    xmm7, xmm15
	LONG $0xfa650f66                           // pcmpgtw    xmm7, xmm2
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x74b70f42; WORD $0x160a             // movzx    esi, word [rdx + r9 + 22]
	LONG $0x4cc40f66; WORD $0x081a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 8], 7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xf8               // pand    xmm7, xmm8
	LONG $0xf7710f66; BYTE $0x02               // psllw    xmm7, 2
	LONG $0x6f0f4466; WORD $0x105d             // movdqa    xmm11, oword 16[rbp] /* [rip + .LCPI8_1] */
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfbeb0f66                           // por    xmm7, xmm3
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xdc650f66                           // pcmpgtw    xmm3, xmm4
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc1650f66                           // pcmpgtw    xmm0, xmm1
	LONG $0x6e0f4166; BYTE $0xcb               // movd    xmm1, r11d
	LONG $0x5cb70f46; WORD $0x180a             // movzx    r11d, word [rdx + r9 + 24]
	QUAD $0x010a3a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 10], 1
	QUAD $0x020a0254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 10], 2
	QUAD $0x030a2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 10], 3
	QUAD $0x040a2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 10], 4
	LONG $0x54c40f66; WORD $0x0a0a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 10], 5
	LONG $0x54c40f66; WORD $0x0a3a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 10], 6
	LONG $0x54c40f66; WORD $0x0a1a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 10], 7
	QUAD $0x010c3a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 12], 1
	QUAD $0x020c024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 12], 2
	QUAD $0x030c224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 12], 3
	QUAD $0x040c2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 12], 4
	LONG $0x4cc40f66; WORD $0x0c0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 12], 5
	LONG $0x4cc40f66; WORD $0x0c3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 12], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xf3710f66; BYTE $0x03               // psllw    xmm3, 3
	LONG $0x6f0f4466; WORD $0x2065             // movdqa    xmm12, oword 32[rbp] /* [rip + .LCPI8_2] */
	LONG $0xdb0f4166; BYTE $0xdc               // pand    xmm3, xmm12
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc0               // pand    xmm0, xmm8
	LONG $0xf0710f66; BYTE $0x04               // psllw    xmm0, 4
	LONG $0x6f0f4466; WORD $0x306d             // movdqa    xmm13, oword 48[rbp] /* [rip + .LCPI8_3] */
	LONG $0xdb0f4166; BYTE $0xc5               // pand    xmm0, xmm13
	LONG $0xc3eb0f66                           // por    xmm0, xmm3
	LONG $0x5c6e0f66; WORD $0x0824             // movd    xmm3, dword [rsp + 8]
	LONG $0x44b70f42; WORD $0x1a0a             // movzx    eax, word [rdx + r9 + 26]
	LONG $0x4cc40f66; WORD $0x0c1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 12], 7
	LONG $0xc7eb0f66                           // por    xmm0, xmm7
	LONG $0x6f0f4166; BYTE $0xe7               // movdqa    xmm4, xmm15
	LONG $0xe2650f66                           // pcmpgtw    xmm4, xmm2
	LONG $0x6f0f4166; BYTE $0xff               // movdqa    xmm7, xmm15
	LONG $0xf9650f66                           // pcmpgtw    xmm7, xmm1
	LONG $0x4c6e0f66; WORD $0x1824             // movd    xmm1, dword [rsp + 24]
	LONG $0x54b70f46; WORD $0x1c0a             // movzx    r10d, word [rdx + r9 + 28]
	QUAD $0x010e3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 14], 1
	QUAD $0x020e025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 14], 2
	QUAD $0x030e225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 14], 3
	QUAD $0x040e2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 14], 4
	LONG $0x5cc40f66; WORD $0x0e0a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 14], 5
	LONG $0x5cc40f66; WORD $0x0e3a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 14], 6
	LONG $0x5cc40f66; WORD $0x0e1a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 14], 7
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	LONG $0xf4710f66; BYTE $0x05               // psllw    xmm4, 5
	LONG $0x6f0f4466; WORD $0x4075             // movdqa    xmm14, oword 64[rbp] /* [rip + .LCPI8_4] */
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xf8               // pand    xmm7, xmm8
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0x6f0f4466; WORD $0x505d             // movdqa    xmm11, oword 80[rbp] /* [rip + .LCPI8_5] */
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	LONG $0x6f0f4566; BYTE $0xcf               // movdqa    xmm9, xmm15
	LONG $0x650f4466; BYTE $0xcb               // pcmpgtw    xmm9, xmm3
	LONG $0x6e0f4166; BYTE $0xde               // movd    xmm3, r14d
	LONG $0x74b70f46; WORD $0x1e0a             // movzx    r14d, word [rdx + r9 + 30]
	LONG $0x630f4566; BYTE $0xc9               // packsswb    xmm9, xmm9
	LONG $0x710f4166; WORD $0x07f1             // psllw    xmm9, 7
	LONG $0x556f0f66; BYTE $0x60               // movdqa    xmm2, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xdb0f4466; BYTE $0xca               // pand    xmm9, xmm2
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x74b70f42; WORD $0x220a             // movzx    esi, word [rdx + r9 + 34]
	LONG $0x18247489                           // mov    dword [rsp + 24], esi
	QUAD $0x01123a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 18], 1
	QUAD $0x0212024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 18], 2
	QUAD $0x0312224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 18], 3
	QUAD $0x04122a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 18], 4
	LONG $0x4cc40f66; WORD $0x120a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 18], 5
	LONG $0x4cc40f66; WORD $0x123a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 18], 6
	LONG $0x4cc40f66; WORD $0x121a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 18], 7
	LONG $0xeb0f4466; BYTE $0xc8               // por    xmm9, xmm0
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc1650f66                           // pcmpgtw    xmm0, xmm1
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xdb0f4166; BYTE $0xc8               // pand    xmm1, xmm8
	LONG $0xc8f80f66                           // psubb    xmm1, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x74b70f42; WORD $0x240a             // movzx    esi, word [rdx + r9 + 36]
	LONG $0x08247489                           // mov    dword [rsp + 8], esi
	LONG $0x630f4566; BYTE $0xd2               // packsswb    xmm10, xmm10
	QUAD $0x01143a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 20], 1
	QUAD $0x0214025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 20], 2
	QUAD $0x0314225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 20], 3
	QUAD $0x04142a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 20], 4
	LONG $0x5cc40f66; WORD $0x140a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 20], 5
	LONG $0x5cc40f66; WORD $0x143a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 20], 6
	LONG $0x5cc40f66; WORD $0x141a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 20], 7
	QUAD $0x01163a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 22], 1
	QUAD $0x02160264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 22], 2
	QUAD $0x03162264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 22], 3
	QUAD $0x04162a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 22], 4
	LONG $0x64c40f66; WORD $0x160a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 22], 5
	LONG $0x64c40f66; WORD $0x163a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 22], 6
	LONG $0x64c40f66; WORD $0x161a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 22], 7
	QUAD $0x01183a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 24], 1
	QUAD $0x0218027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 24], 2
	QUAD $0x0318227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 24], 3
	QUAD $0x04182a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 24], 4
	LONG $0x7cc40f66; WORD $0x180a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 24], 5
	LONG $0x7cc40f66; WORD $0x183a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 24], 6
	LONG $0x7cc40f66; WORD $0x181a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 24], 7
	LONG $0xdb0f4566; BYTE $0xd0               // pand    xmm10, xmm8
	LONG $0xeb0f4166; BYTE $0xca               // por    xmm1, xmm10
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xd3650f66                           // pcmpgtw    xmm2, xmm3
	LONG $0xd86e0f66                           // movd    xmm3, eax
	LONG $0x5cb70f46; WORD $0x260a             // movzx    r11d, word [rdx + r9 + 38]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd0               // pand    xmm2, xmm8
	LONG $0xf2710f66; BYTE $0x02               // psllw    xmm2, 2
	LONG $0x6f0f4466; WORD $0x106d             // movdqa    xmm13, oword 16[rbp] /* [rip + .LCPI8_1] */
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0xcc650f66                           // pcmpgtw    xmm1, xmm4
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc7650f66                           // pcmpgtw    xmm0, xmm7
	LONG $0x6e0f4166; BYTE $0xe2               // movd    xmm4, r10d
	LONG $0x54b70f46; WORD $0x280a             // movzx    r10d, word [rdx + r9 + 40]
	QUAD $0x011a3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 26], 1
	QUAD $0x021a025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 26], 2
	QUAD $0x031a225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 26], 3
	QUAD $0x041a2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 26], 4
	LONG $0x5cc40f66; WORD $0x1a0a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 26], 5
	LONG $0x5cc40f66; WORD $0x1a3a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 26], 6
	LONG $0x5cc40f66; WORD $0x1a1a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 26], 7
	QUAD $0x011c3a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 28], 1
	QUAD $0x021c0264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 28], 2
	QUAD $0x031c2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 28], 3
	QUAD $0x041c2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 28], 4
	LONG $0x64c40f66; WORD $0x1c0a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 28], 5
	LONG $0x64c40f66; WORD $0x1c3a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 28], 6
	LONG $0x64c40f66; WORD $0x1c1a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 28], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xc8               // pand    xmm1, xmm8
	LONG $0xf1710f66; BYTE $0x03               // psllw    xmm1, 3
	LONG $0x6f0f4566; BYTE $0xdc               // movdqa    xmm11, xmm12
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc0               // pand    xmm0, xmm8
	LONG $0xf0710f66; BYTE $0x04               // psllw    xmm0, 4
	LONG $0x6f0f4466; WORD $0x3065             // movdqa    xmm12, oword 48[rbp] /* [rip + .LCPI8_3] */
	LONG $0xdb0f4166; BYTE $0xc4               // pand    xmm0, xmm12
	LONG $0xc1eb0f66                           // por    xmm0, xmm1
	LONG $0x6e0f4166; BYTE $0xce               // movd    xmm1, r14d
	LONG $0x44b70f42; WORD $0x2a0a             // movzx    eax, word [rdx + r9 + 42]
	LONG $0xc2eb0f66                           // por    xmm0, xmm2
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xd3650f66                           // pcmpgtw    xmm2, xmm3
	LONG $0x6f0f4166; BYTE $0xff               // movdqa    xmm7, xmm15
	LONG $0xfc650f66                           // pcmpgtw    xmm7, xmm4
	LONG $0x646e0f66; WORD $0x1824             // movd    xmm4, dword [rsp + 24]
	LONG $0x74b70f46; WORD $0x2c0a             // movzx    r14d, word [rdx + r9 + 44]
	QUAD $0x011e3a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 30], 1
	QUAD $0x021e024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 30], 2
	QUAD $0x031e224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 30], 3
	QUAD $0x041e2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 30], 4
	LONG $0x4cc40f66; WORD $0x1e0a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 30], 5
	LONG $0x4cc40f66; WORD $0x1e3a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 30], 6
	LONG $0x4cc40f66; WORD $0x1e1a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 30], 7
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd0               // pand    xmm2, xmm8
	LONG $0xf2710f66; BYTE $0x05               // psllw    xmm2, 5
	LONG $0xdb0f4166; BYTE $0xd6               // pand    xmm2, xmm14
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xf8               // pand    xmm7, xmm8
	LONG $0xf7710f66; BYTE $0x06               // psllw    xmm7, 6
	LONG $0x5d6f0f66; BYTE $0x50               // movdqa    xmm3, oword 80[rbp] /* [rip + .LCPI8_5] */
	LONG $0xfbdb0f66                           // pand    xmm7, xmm3
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	LONG $0x6f0f4566; BYTE $0xd7               // movdqa    xmm10, xmm15
	LONG $0x650f4466; BYTE $0xd1               // pcmpgtw    xmm10, xmm1
	LONG $0x4c6e0f66; WORD $0x0824             // movd    xmm1, dword [rsp + 8]
	LONG $0x74b70f42; WORD $0x2e0a             // movzx    esi, word [rdx + r9 + 46]
	LONG $0x18247489                           // mov    dword [rsp + 24], esi
	LONG $0x630f4566; BYTE $0xd2               // packsswb    xmm10, xmm10
	LONG $0x710f4166; WORD $0x07f2             // psllw    xmm10, 7
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0xdb0f4566; BYTE $0xd6               // pand    xmm10, xmm14
	LONG $0xeb0f4466; BYTE $0xd7               // por    xmm10, xmm7
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x5cb70f46; WORD $0x320a             // movzx    r11d, word [rdx + r9 + 50]
	QUAD $0x01223a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 34], 1
	QUAD $0x02220264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 34], 2
	QUAD $0x03222264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 34], 3
	QUAD $0x04222a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 34], 4
	LONG $0x64c40f66; WORD $0x220a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 34], 5
	LONG $0x64c40f66; WORD $0x223a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 34], 6
	LONG $0x64c40f66; WORD $0x221a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 34], 7
	LONG $0xeb0f4466; BYTE $0xd0               // por    xmm10, xmm0
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc4650f66                           // pcmpgtw    xmm0, xmm4
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xe06f0f66                           // movdqa    xmm4, xmm0
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	LONG $0xe0f80f66                           // psubb    xmm4, xmm0
	LONG $0x6e0f4166; BYTE $0xc2               // movd    xmm0, r10d
	LONG $0x74b70f42; WORD $0x340a             // movzx    esi, word [rdx + r9 + 52]
	LONG $0x08247489                           // mov    dword [rsp + 8], esi
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	QUAD $0x01243a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 36], 1
	QUAD $0x0224024cc40f4266                   // pinsrw    xmm1, word [rdx + r8 + 36], 2
	QUAD $0x0324224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 36], 3
	QUAD $0x04242a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 36], 4
	LONG $0x4cc40f66; WORD $0x240a; BYTE $0x05 // pinsrw    xmm1, word [rdx + rcx + 36], 5
	LONG $0x4cc40f66; WORD $0x243a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rdi + 36], 6
	LONG $0x4cc40f66; WORD $0x241a; BYTE $0x07 // pinsrw    xmm1, word [rdx + rbx + 36], 7
	QUAD $0x01263a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 38], 1
	QUAD $0x02260254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 38], 2
	QUAD $0x03262254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 38], 3
	QUAD $0x04262a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 38], 4
	LONG $0x54c40f66; WORD $0x260a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 38], 5
	LONG $0x54c40f66; WORD $0x263a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 38], 6
	LONG $0x54c40f66; WORD $0x261a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 38], 7
	QUAD $0x01283a44c40f4266                   // pinsrw    xmm0, word [rdx + r15 + 40], 1
	QUAD $0x02280244c40f4266                   // pinsrw    xmm0, word [rdx + r8 + 40], 2
	QUAD $0x03282244c40f4266                   // pinsrw    xmm0, word [rdx + r12 + 40], 3
	QUAD $0x04282a44c40f4266                   // pinsrw    xmm0, word [rdx + r13 + 40], 4
	LONG $0x44c40f66; WORD $0x280a; BYTE $0x05 // pinsrw    xmm0, word [rdx + rcx + 40], 5
	LONG $0x44c40f66; WORD $0x283a; BYTE $0x06 // pinsrw    xmm0, word [rdx + rdi + 40], 6
	LONG $0xdb0f4166; BYTE $0xf0               // pand    xmm6, xmm8
	LONG $0xe6eb0f66                           // por    xmm4, xmm6
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xf1650f66                           // pcmpgtw    xmm6, xmm1
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x54b70f46; WORD $0x360a             // movzx    r10d, word [rdx + r9 + 54]
	LONG $0x44c40f66; WORD $0x281a; BYTE $0x07 // pinsrw    xmm0, word [rdx + rbx + 40], 7
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf0               // pand    xmm6, xmm8
	LONG $0xf6710f66; BYTE $0x02               // psllw    xmm6, 2
	LONG $0xdb0f4166; BYTE $0xf5               // pand    xmm6, xmm13
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	LONG $0x6f0f4166; BYTE $0xe7               // movdqa    xmm4, xmm15
	LONG $0xe2650f66                           // pcmpgtw    xmm4, xmm2
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0xc8650f66                           // pcmpgtw    xmm1, xmm0
	LONG $0x6e0f4166; BYTE $0xc6               // movd    xmm0, r14d
	LONG $0x44b70f42; WORD $0x380a             // movzx    eax, word [rdx + r9 + 56]
	QUAD $0x012a3a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 42], 1
	QUAD $0x022a027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 42], 2
	QUAD $0x032a227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 42], 3
	QUAD $0x042a2a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 42], 4
	LONG $0x7cc40f66; WORD $0x2a0a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 42], 5
	LONG $0x7cc40f66; WORD $0x2a3a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 42], 6
	LONG $0x7cc40f66; WORD $0x2a1a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 42], 7
	QUAD $0x012c3a44c40f4266                   // pinsrw    xmm0, word [rdx + r15 + 44], 1
	QUAD $0x022c0244c40f4266                   // pinsrw    xmm0, word [rdx + r8 + 44], 2
	QUAD $0x032c2244c40f4266                   // pinsrw    xmm0, word [rdx + r12 + 44], 3
	QUAD $0x042c2a44c40f4266                   // pinsrw    xmm0, word [rdx + r13 + 44], 4
	LONG $0x44c40f66; WORD $0x2c0a; BYTE $0x05 // pinsrw    xmm0, word [rdx + rcx + 44], 5
	LONG $0x44c40f66; WORD $0x2c3a; BYTE $0x06 // pinsrw    xmm0, word [rdx + rdi + 44], 6
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe3               // pand    xmm4, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xc8               // pand    xmm1, xmm8
	LONG $0xf1710f66; BYTE $0x04               // psllw    xmm1, 4
	LONG $0xdb0f4166; BYTE $0xcc               // pand    xmm1, xmm12
	LONG $0x6f0f4566; BYTE $0xec               // movdqa    xmm13, xmm12
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x546e0f66; WORD $0x1824             // movd    xmm2, dword [rsp + 24]
	LONG $0x74b70f42; WORD $0x3a0a             // movzx    esi, word [rdx + r9 + 58]
	LONG $0x44c40f66; WORD $0x2c1a; BYTE $0x07 // pinsrw    xmm0, word [rdx + rbx + 44], 7
	LONG $0xceeb0f66                           // por    xmm1, xmm6
	LONG $0x6f0f4166; BYTE $0xe7               // movdqa    xmm4, xmm15
	LONG $0xe7650f66                           // pcmpgtw    xmm4, xmm7
	LONG $0x6f0f4166; BYTE $0xf7               // movdqa    xmm6, xmm15
	LONG $0xf0650f66                           // pcmpgtw    xmm6, xmm0
	LONG $0x6e0f4166; BYTE $0xfb               // movd    xmm7, r11d
	LONG $0x5cb70f46; WORD $0x3c0a             // movzx    r11d, word [rdx + r9 + 60]
	QUAD $0x012e3a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 46], 1
	QUAD $0x022e0254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 46], 2
	QUAD $0x032e2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 46], 3
	QUAD $0x042e2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 46], 4
	LONG $0x54c40f66; WORD $0x2e0a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 46], 5
	LONG $0x54c40f66; WORD $0x2e3a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 46], 6
	LONG $0x4cb70f46; WORD $0x3e0a             // movzx    r9d, word [rdx + r9 + 62]
	LONG $0x54c40f66; WORD $0x2e1a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 46], 7
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	LONG $0xf4710f66; BYTE $0x05               // psllw    xmm4, 5
	LONG $0x65db0f66; BYTE $0x40               // pand    xmm4, oword 64[rbp] /* [rip + .LCPI8_4] */
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf0               // pand    xmm6, xmm8
	LONG $0xf6710f66; BYTE $0x06               // psllw    xmm6, 6
	LONG $0xf3db0f66                           // pand    xmm6, xmm3
	LONG $0x6f0f4466; BYTE $0xe3               // movdqa    xmm12, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0xc2650f66                           // pcmpgtw    xmm0, xmm2
	LONG $0x546e0f66; WORD $0x0824             // movd    xmm2, dword [rsp + 8]
	QUAD $0x01323a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 50], 1
	QUAD $0x0232027cc40f4266                   // pinsrw    xmm7, word [rdx + r8 + 50], 2
	QUAD $0x0332227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 50], 3
	QUAD $0x04322a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 50], 4
	LONG $0x7cc40f66; WORD $0x320a; BYTE $0x05 // pinsrw    xmm7, word [rdx + rcx + 50], 5
	LONG $0x7cc40f66; WORD $0x323a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rdi + 50], 6
	LONG $0x7cc40f66; WORD $0x321a; BYTE $0x07 // pinsrw    xmm7, word [rdx + rbx + 50], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xf0710f66; BYTE $0x07               // psllw    xmm0, 7
	LONG $0xdb0f4166; BYTE $0xc6               // pand    xmm0, xmm14
	LONG $0xc6eb0f66                           // por    xmm0, xmm6
	LONG $0x6e0f4166; BYTE $0xf2               // movd    xmm6, r10d
	LONG $0xc1eb0f66                           // por    xmm0, xmm1
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0xcf650f66                           // pcmpgtw    xmm1, xmm7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xdb0f4166; BYTE $0xf8               // pand    xmm7, xmm8
	LONG $0xf9f80f66                           // psubb    xmm7, xmm1
	LONG $0xd86e0f66                           // movd    xmm3, eax
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	QUAD $0x01343a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 52], 1
	QUAD $0x02340254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 52], 2
	QUAD $0x03342254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 52], 3
	QUAD $0x04342a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 52], 4
	LONG $0x54c40f66; WORD $0x340a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 52], 5
	LONG $0x54c40f66; WORD $0x343a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 52], 6
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0x54c40f66; WORD $0x341a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 52], 7
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0xea650f66                           // pcmpgtw    xmm5, xmm2
	LONG $0xe66e0f66                           // movd    xmm4, esi
	QUAD $0x01363a74c40f4266                   // pinsrw    xmm6, word [rdx + r15 + 54], 1
	QUAD $0x02360274c40f4266                   // pinsrw    xmm6, word [rdx + r8 + 54], 2
	QUAD $0x03362274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 54], 3
	QUAD $0x04362a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 54], 4
	LONG $0x74c40f66; WORD $0x360a; BYTE $0x05 // pinsrw    xmm6, word [rdx + rcx + 54], 5
	LONG $0x74c40f66; WORD $0x363a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rdi + 54], 6
	LONG $0x74c40f66; WORD $0x361a; BYTE $0x07 // pinsrw    xmm6, word [rdx + rbx + 54], 7
	QUAD $0x01383a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 56], 1
	QUAD $0x0238025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 56], 2
	QUAD $0x0338225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 56], 3
	QUAD $0x04382a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 56], 4
	LONG $0x5cc40f66; WORD $0x380a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 56], 5
	LONG $0x5cc40f66; WORD $0x383a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 56], 6
	LONG $0x5cc40f66; WORD $0x381a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 56], 7
	QUAD $0x013a3a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 58], 1
	QUAD $0x023a0264c40f4266                   // pinsrw    xmm4, word [rdx + r8 + 58], 2
	QUAD $0x033a2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 58], 3
	QUAD $0x043a2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 58], 4
	LONG $0x64c40f66; WORD $0x3a0a; BYTE $0x05 // pinsrw    xmm4, word [rdx + rcx + 58], 5
	LONG $0x64c40f66; WORD $0x3a3a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rdi + 58], 6
	LONG $0x64c40f66; WORD $0x3a1a; BYTE $0x07 // pinsrw    xmm4, word [rdx + rbx + 58], 7
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0x6ddb0f66; BYTE $0x10               // pand    xmm5, oword 16[rbp] /* [rip + .LCPI8_1] */
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	LONG $0x6f0f4166; BYTE $0xd7               // movdqa    xmm2, xmm15
	LONG $0xd6650f66                           // pcmpgtw    xmm2, xmm6
	LONG $0x6f0f4166; BYTE $0xcf               // movdqa    xmm1, xmm15
	LONG $0xcb650f66                           // pcmpgtw    xmm1, xmm3
	LONG $0x6e0f4166; BYTE $0xdb               // movd    xmm3, r11d
	QUAD $0x013c3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 60], 1
	QUAD $0x023c025cc40f4266                   // pinsrw    xmm3, word [rdx + r8 + 60], 2
	QUAD $0x033c225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 60], 3
	QUAD $0x043c2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 60], 4
	LONG $0x5cc40f66; WORD $0x3c0a; BYTE $0x05 // pinsrw    xmm3, word [rdx + rcx + 60], 5
	LONG $0x5cc40f66; WORD $0x3c3a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rdi + 60], 6
	LONG $0x5cc40f66; WORD $0x3c1a; BYTE $0x07 // pinsrw    xmm3, word [rdx + rbx + 60], 7
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd0               // pand    xmm2, xmm8
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd3               // pand    xmm2, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xc8               // pand    xmm1, xmm8
	LONG $0xf1710f66; BYTE $0x04               // psllw    xmm1, 4
	LONG $0xdb0f4166; BYTE $0xcd               // pand    xmm1, xmm13
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x6e0f4166; BYTE $0xd1               // movd    xmm2, r9d
	QUAD $0x013e3a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 62], 1
	QUAD $0x023e0254c40f4266                   // pinsrw    xmm2, word [rdx + r8 + 62], 2
	QUAD $0x033e2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 62], 3
	QUAD $0x0000008024b48b4c                   // mov    r14, qword [rsp + 128]
	QUAD $0x043e2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 62], 4
	LONG $0x54c40f66; WORD $0x3e0a; BYTE $0x05 // pinsrw    xmm2, word [rdx + rcx + 62], 5
	LONG $0x54c40f66; WORD $0x3e3a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rdi + 62], 6
	LONG $0x54c40f66; WORD $0x3e1a; BYTE $0x07 // pinsrw    xmm2, word [rdx + rbx + 62], 7
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0xec650f66                           // pcmpgtw    xmm5, xmm4
	LONG $0x6f0f4166; BYTE $0xe7               // movdqa    xmm4, xmm15
	LONG $0xe3650f66                           // pcmpgtw    xmm4, xmm3
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xf5710f66; BYTE $0x05               // psllw    xmm5, 5
	LONG $0x6ddb0f66; BYTE $0x40               // pand    xmm5, oword 64[rbp] /* [rip + .LCPI8_4] */
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe0               // pand    xmm4, xmm8
	LONG $0xf4710f66; BYTE $0x06               // psllw    xmm4, 6
	LONG $0xdb0f4166; BYTE $0xe4               // pand    xmm4, xmm12
	LONG $0xe5eb0f66                           // por    xmm4, xmm5
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xda650f66                           // pcmpgtw    xmm3, xmm2
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	LONG $0xd9eb0f66                           // por    xmm3, xmm1
	LONG $0x6f0f4166; BYTE $0xc9               // movdqa    xmm1, xmm9
	LONG $0x6c0f4166; BYTE $0xca               // punpcklqdq    xmm1, xmm10
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0xd36c0f66                           // punpcklqdq    xmm2, xmm3
	QUAD $0x00000090a56f0f66                   // movdqa    xmm4, oword 144[rbp] /* [rip + .LCPI8_9] */
	LONG $0x00380f66; BYTE $0xd4               // pshufb    xmm2, xmm4
	LONG $0x00380f66; BYTE $0xcc               // pshufb    xmm1, xmm4
	LONG $0xca610f66                           // punpcklwd    xmm1, xmm2
	LONG $0xc3600f66                           // punpcklbw    xmm0, xmm3
	LONG $0x600f4566; BYTE $0xca               // punpcklbw    xmm9, xmm10
	LONG $0x610f4466; BYTE $0xc8               // punpcklwd    xmm9, xmm0
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	LONG $0x7f0f45f3; WORD $0x8e0c             // movdqu    oword [r14 + 4*rcx], xmm9
	LONG $0x7f0f41f3; WORD $0x8e4c; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm1
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xc9                   // mov    r9, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB8_198
	QUAD $0x000000f024bc8b4c                   // mov    r15, qword [rsp + 240]
	LONG $0x247c3b4c; BYTE $0x20               // cmp    r15, qword [rsp + 32]
	QUAD $0x0000008824948b4c                   // mov    r10, qword [rsp + 136]
	LONG $0x246c8b44; BYTE $0x30               // mov    r13d, dword [rsp + 48]
	LONG $0x24248b4c                           // mov    r12, qword [rsp]
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	JNE  LBB8_101
	JMP  LBB8_136

LBB8_200:
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x0148; BYTE $0xd3                   // add    rbx, rdx
	LONG $0x863c8d4f                           // lea    r15, [r14 + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc28148; WORD $0x0001; BYTE $0x00 // add    rdx, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI8_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI8_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI8_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI8_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI8_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI8_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI8_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI8_7] */

LBB8_201:
	QUAD $0xfffffe04b2100ff3                   // movss    xmm6, dword [rdx - 508]
	QUAD $0xfffffe08ba100ff3                   // movss    xmm7, dword [rdx - 504]
	QUAD $0xfffffe0caa100ff3                   // movss    xmm5, dword [rdx - 500]
	QUAD $0xfffffe10a2100ff3                   // movss    xmm4, dword [rdx - 496]
	QUAD $0xfffe84b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 380], 16
	QUAD $0xffff04b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 252], 32
	LONG $0x213a0f66; WORD $0x8472; BYTE $0x30 // insertps    xmm6, dword [rdx - 124], 48
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	QUAD $0xfffe88ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 376], 16
	QUAD $0xffff08ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 248], 32
	LONG $0x213a0f66; WORD $0x887a; BYTE $0x30 // insertps    xmm7, dword [rdx - 120], 48
	QUAD $0xfffe8caa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 372], 16
	QUAD $0xffff0caa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 244], 32
	LONG $0x213a0f66; WORD $0x8c6a; BYTE $0x30 // insertps    xmm5, dword [rdx - 116], 48
	QUAD $0xfffe90a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 368], 16
	QUAD $0xffff10a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 240], 32
	LONG $0x213a0f66; WORD $0x9062; BYTE $0x30 // insertps    xmm4, dword [rdx - 112], 48
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xd7f80f66                           // psubb    xmm2, xmm7
	QUAD $0xfffffe14ba100ff3                   // movss    xmm7, dword [rdx - 492]
	QUAD $0xfffe94ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 364], 16
	QUAD $0xffff14ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 236], 32
	LONG $0x213a0f66; WORD $0x947a; BYTE $0x30 // insertps    xmm7, dword [rdx - 108], 48
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe18b2100ff3                   // movss    xmm6, dword [rdx - 488]
	QUAD $0xfffe98b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 360], 16
	QUAD $0xffff18b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 232], 32
	LONG $0x213a0f66; WORD $0x9872; BYTE $0x30 // insertps    xmm6, dword [rdx - 104], 48
	LONG $0x01e9c20f                           // cmpltps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe1c9a100ff3                   // movss    xmm3, dword [rdx - 484]
	QUAD $0xfffe9c9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 356], 16
	QUAD $0xffff1c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 228], 32
	LONG $0x213a0f66; WORD $0x9c5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 100], 48
	LONG $0x01e1c20f                           // cmpltps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2               // pand    xmm4, xmm10
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04               // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	QUAD $0xfffffe20a2100ff3                   // movss    xmm4, dword [rdx - 480]
	QUAD $0xfffea0a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 352], 16
	QUAD $0xffff20a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 224], 32
	LONG $0x213a0f66; WORD $0xa062; BYTE $0x30 // insertps    xmm4, dword [rdx - 96], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe24aa100ff3                   // movss    xmm5, dword [rdx - 476]
	QUAD $0xfffea4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 348], 16
	QUAD $0xffff24aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 220], 32
	LONG $0x213a0f66; WORD $0xa46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 92], 48
	LONG $0x01e9c20f                           // cmpltps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x01d9c20f                           // cmpltps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06               // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd               // pand    xmm3, xmm13
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe2892100ff3                   // movss    xmm2, dword [rdx - 472]
	QUAD $0xfffea892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 344], 16
	QUAD $0xffff2892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 216], 32
	LONG $0x213a0f66; WORD $0xa852; BYTE $0x30 // insertps    xmm2, dword [rdx - 88], 48
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x01e1c20f                           // cmpltps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	QUAD $0xfffffe2c9a100ff3                   // movss    xmm3, dword [rdx - 468]
	QUAD $0xfffeac9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 340], 16
	QUAD $0xffff2c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 212], 32
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0x213a0f66; WORD $0xac5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 84], 48
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe30ba100ff3                   // movss    xmm7, dword [rdx - 464]
	QUAD $0xfffeb0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 336], 16
	QUAD $0xffff30ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 208], 32
	LONG $0x213a0f66; WORD $0xb07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 80], 48
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe34aa100ff3                   // movss    xmm5, dword [rdx - 460]
	QUAD $0xfffeb4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 332], 16
	QUAD $0xffff34aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 204], 32
	LONG $0x213a0f66; WORD $0xb46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 76], 48
	LONG $0x01d9c20f                           // cmpltps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe38b2100ff3                   // movss    xmm6, dword [rdx - 456]
	QUAD $0xfffeb8b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 328], 16
	QUAD $0xffff38b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 200], 32
	LONG $0x213a0f66; WORD $0xb872; BYTE $0x30 // insertps    xmm6, dword [rdx - 72], 48
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03               // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa               // pand    xmm7, xmm10
	LONG $0x01e9c20f                           // cmpltps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0xfffffe3c92100ff3                   // movss    xmm2, dword [rdx - 452]
	QUAD $0xfffebc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 324], 16
	QUAD $0xffff3c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 196], 32
	LONG $0x213a0f66; WORD $0xbc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 68], 48
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	QUAD $0xfffffe40ba100ff3                   // movss    xmm7, dword [rdx - 448]
	QUAD $0xfffec0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 320], 16
	QUAD $0xffff40ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 192], 32
	LONG $0x213a0f66; WORD $0xc07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 64], 48
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe44b2100ff3                   // movss    xmm6, dword [rdx - 444]
	QUAD $0xfffec4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 316], 16
	QUAD $0xffff44b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 188], 32
	LONG $0x213a0f66; WORD $0xc472; BYTE $0x30 // insertps    xmm6, dword [rdx - 60], 48
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07               // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe               // pand    xmm7, xmm14
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0xfffffe4892100ff3                   // movss    xmm2, dword [rdx - 440]
	QUAD $0xfffec892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 312], 16
	QUAD $0xffff4892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 184], 32
	LONG $0x213a0f66; WORD $0xc852; BYTE $0x30 // insertps    xmm2, dword [rdx - 56], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe4c9a100ff3                   // movss    xmm3, dword [rdx - 436]
	QUAD $0xfffecc9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 308], 16
	QUAD $0xffff4c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x213a0f66; WORD $0xcc5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 52], 48
	LONG $0xe7620f66                           // punpckldq    xmm4, xmm7
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xfaf80f66                           // psubb    xmm7, xmm2
	QUAD $0xfffffe50aa100ff3                   // movss    xmm5, dword [rdx - 432]
	QUAD $0xfffed0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 304], 16
	QUAD $0xffff50aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 176], 32
	LONG $0x213a0f66; WORD $0xd06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 48], 48
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	QUAD $0xfffffe54b2100ff3                   // movss    xmm6, dword [rdx - 428]
	QUAD $0xfffed4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 300], 16
	QUAD $0xffff54b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 172], 32
	LONG $0x213a0f66; WORD $0xd472; BYTE $0x30 // insertps    xmm6, dword [rdx - 44], 48
	LONG $0x01d9c20f                           // cmpltps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	QUAD $0xfffffe58ba100ff3                   // movss    xmm7, dword [rdx - 424]
	QUAD $0xfffed8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 296], 16
	QUAD $0xffff58ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 168], 32
	LONG $0x213a0f66; WORD $0xd87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 40], 48
	LONG $0x01e9c20f                           // cmpltps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe5c92100ff3                   // movss    xmm2, dword [rdx - 420]
	QUAD $0xfffedc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 292], 16
	QUAD $0xffff5c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 164], 32
	LONG $0x213a0f66; WORD $0xdc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 36], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe60aa100ff3                   // movss    xmm5, dword [rdx - 416]
	QUAD $0xfffee0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 288], 16
	QUAD $0xffff60aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 160], 32
	LONG $0x213a0f66; WORD $0xe06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 32], 48
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe64ba100ff3                   // movss    xmm7, dword [rdx - 412]
	QUAD $0xfffee4ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 284], 16
	QUAD $0xffff64ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 156], 32
	LONG $0x213a0f66; WORD $0xe47a; BYTE $0x30 // insertps    xmm7, dword [rdx - 28], 48
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x01e9c20f                           // cmpltps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07               // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee               // pand    xmm5, xmm14
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe6892100ff3                   // movss    xmm2, dword [rdx - 408]
	QUAD $0xfffee892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 280], 16
	QUAD $0xffff6892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 152], 32
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0x213a0f66; WORD $0xe852; BYTE $0x30 // insertps    xmm2, dword [rdx - 24], 48
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe6c9a100ff3                   // movss    xmm3, dword [rdx - 404]
	QUAD $0xfffeec9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 276], 16
	QUAD $0xffff6c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 148], 32
	LONG $0x213a0f66; WORD $0xec5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 20], 48
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0xfffffe7092100ff3                   // movss    xmm2, dword [rdx - 400]
	QUAD $0xfffef092213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 272], 16
	QUAD $0xffff7092213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 144], 32
	LONG $0x213a0f66; WORD $0xf052; BYTE $0x30 // insertps    xmm2, dword [rdx - 16], 48
	LONG $0x01d9c20f                           // cmpltps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe74b2100ff3                   // movss    xmm6, dword [rdx - 396]
	QUAD $0xfffef4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 268], 16
	QUAD $0xffff74b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 140], 32
	LONG $0x213a0f66; WORD $0xf472; BYTE $0x30 // insertps    xmm6, dword [rdx - 12], 48
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0x01f1c20f                           // cmpltps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	QUAD $0xfffffe78ba100ff3                   // movss    xmm7, dword [rdx - 392]
	QUAD $0xfffef8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 264], 16
	QUAD $0xffff78ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 136], 32
	LONG $0x213a0f66; WORD $0xf87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 8], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe7c92100ff3                   // movss    xmm2, dword [rdx - 388]
	QUAD $0xfffefc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 260], 16
	QUAD $0xffff7c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 132], 32
	LONG $0x213a0f66; WORD $0xfc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 4], 48
	LONG $0x01f9c20f                           // cmpltps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x01d1c20f                           // cmpltps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe809a100ff3                   // movss    xmm3, dword [rdx - 384]
	QUAD $0xffff009a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 256], 16
	LONG $0x213a0f66; WORD $0x805a; BYTE $0x20 // insertps    xmm3, dword [rdx - 128], 32
	LONG $0x213a0f66; WORD $0x301a             // insertps    xmm3, dword [rdx], 48
	LONG $0x01d9c20f                           // cmpltps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	LONG $0xeb620f66                           // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                           // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100             // pshufb    xmm4, xmm9
	LONG $0x7f0f41f3; WORD $0x8e24             // movdqu    oword [r14 + 4*rcx], xmm4
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x00c28148; WORD $0x0002; BYTE $0x00 // add    rdx, 512
	WORD $0x3949; BYTE $0xc8                   // cmp    r8, rcx
	JNE  LBB8_201
	WORD $0x394d; BYTE $0xc3                   // cmp    r11, r8
	JNE  LBB8_124
	JMP  LBB8_140

TEXT ·_comparison_greater_equal_arr_arr_sse4(SB), $80-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	ADDQ $8, SP

	WORD $0x894d; BYTE $0xc3 // mov    r11, r8
	WORD $0x8949; BYTE $0xce // mov    r14, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB9_29
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB9_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB9_68
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB9_79
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB9_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_22
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_20:
	WORD $0x0e8b                   // mov    ecx, dword [rsi]
	LONG $0x04c68348               // add    rsi, 4
	WORD $0x0a3b                   // cmp    ecx, dword [rdx]
	LONG $0x04528d48               // lea    rdx, [rdx + 4]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_20
	LONG $0x01c68349               // add    r14, 1

LBB9_22:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_26
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_24:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x2454930f; BYTE $0x14               // setae    byte [rsp + 20]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x2454930f; BYTE $0x15               // setae    byte [rsp + 21]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x2454930f; BYTE $0x16               // setae    byte [rsp + 22]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x2454930f; BYTE $0x17               // setae    byte [rsp + 23]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x2454930f; BYTE $0x04               // setae    byte [rsp + 4]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd5930f41                           // setae    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x2454930f; BYTE $0x09               // setae    byte [rsp + 9]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd0930f41                           // setae    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd3930f41                           // setae    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd7930f41                           // setae    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x2454930f; BYTE $0x05               // setae    byte [rsp + 5]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x2454930f; BYTE $0x06               // setae    byte [rsp + 6]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x2454930f; BYTE $0x07               // setae    byte [rsp + 7]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x4e8b; BYTE $0x44                   // mov    ecx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x2454930f; BYTE $0x0a               // setae    byte [rsp + 10]
	WORD $0x4a3b; BYTE $0x44                   // cmp    ecx, dword [rdx + 68]
	WORD $0x4e8b; BYTE $0x4c                   // mov    ecx, dword [rsi + 76]
	LONG $0xd2930f41                           // setae    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd6930f41                           // setae    r14b
	WORD $0x4a3b; BYTE $0x4c                   // cmp    ecx, dword [rdx + 76]
	WORD $0x4e8b; BYTE $0x54                   // mov    ecx, dword [rsi + 84]
	LONG $0xd4930f41                           // setae    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	WORD $0x4a3b; BYTE $0x54                   // cmp    ecx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x2454930f; BYTE $0x0b               // setae    byte [rsp + 11]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x2454930f; BYTE $0x0c               // setae    byte [rsp + 12]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd1930f41                           // setae    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x2454930f; BYTE $0x13               // setae    byte [rsp + 19]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x2454930f; BYTE $0x0d               // setae    byte [rsp + 13]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x2454930f; BYTE $0x0e               // setae    byte [rsp + 14]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x2454930f; BYTE $0x0f               // setae    byte [rsp + 15]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x2454930f; BYTE $0x12               // setae    byte [rsp + 18]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x2454930f; BYTE $0x11               // setae    byte [rsp + 17]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB9_24
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB9_26:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_28:
	WORD $0x048b; BYTE $0x8e     // mov    eax, dword [rsi + 4*rcx]
	WORD $0x043b; BYTE $0x8a     // cmp    eax, dword [rdx + 4*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_28
	JMP  LBB9_123

LBB9_29:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB9_30
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB9_101
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB9_112
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB9_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_50
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_48:
	LONG $0x06100ff2               // movsd    xmm0, qword [rsi]
	LONG $0x08c68348               // add    rsi, 8
	LONG $0x022e0f66               // ucomisd    xmm0, qword [rdx]
	LONG $0x08528d48               // lea    rdx, [rdx + 8]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_48
	LONG $0x01c68349               // add    r14, 1

LBB9_50:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_54
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB9_52:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	LONG $0x06100ff2                           // movsd    xmm0, qword [rsi]
	LONG $0x4e100ff2; BYTE $0x08               // movsd    xmm1, qword [rsi + 8]
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	LONG $0x2454930f; BYTE $0x04               // setae    byte [rsp + 4]
	LONG $0x4a2e0f66; BYTE $0x08               // ucomisd    xmm1, qword [rdx + 8]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x46100ff2; BYTE $0x10               // movsd    xmm0, qword [rsi + 16]
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	LONG $0x46100ff2; BYTE $0x18               // movsd    xmm0, qword [rsi + 24]
	LONG $0x2454930f; BYTE $0x05               // setae    byte [rsp + 5]
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	LONG $0x2454930f; BYTE $0x16               // setae    byte [rsp + 22]
	LONG $0x46100ff2; BYTE $0x20               // movsd    xmm0, qword [rsi + 32]
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	LONG $0x46100ff2; BYTE $0x28               // movsd    xmm0, qword [rsi + 40]
	LONG $0x2454930f; BYTE $0x15               // setae    byte [rsp + 21]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	LONG $0x2454930f; BYTE $0x17               // setae    byte [rsp + 23]
	LONG $0x46100ff2; BYTE $0x30               // movsd    xmm0, qword [rsi + 48]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	LONG $0x46100ff2; BYTE $0x38               // movsd    xmm0, qword [rsi + 56]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x46100ff2; BYTE $0x40               // movsd    xmm0, qword [rsi + 64]
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	LONG $0x46100ff2; BYTE $0x48               // movsd    xmm0, qword [rsi + 72]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x46100ff2; BYTE $0x50               // movsd    xmm0, qword [rsi + 80]
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	LONG $0x46100ff2; BYTE $0x58               // movsd    xmm0, qword [rsi + 88]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x46100ff2; BYTE $0x60               // movsd    xmm0, qword [rsi + 96]
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	LONG $0x46100ff2; BYTE $0x68               // movsd    xmm0, qword [rsi + 104]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	LONG $0x2454930f; BYTE $0x07               // setae    byte [rsp + 7]
	LONG $0x46100ff2; BYTE $0x70               // movsd    xmm0, qword [rsi + 112]
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	LONG $0x46100ff2; BYTE $0x78               // movsd    xmm0, qword [rsi + 120]
	LONG $0x2454930f; BYTE $0x06               // setae    byte [rsp + 6]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	QUAD $0x0000008086100ff2                   // movsd    xmm0, qword [rsi + 128]
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	QUAD $0x0000008886100ff2                   // movsd    xmm0, qword [rsi + 136]
	LONG $0x2454930f; BYTE $0x0e               // setae    byte [rsp + 14]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	QUAD $0x0000009086100ff2                   // movsd    xmm0, qword [rsi + 144]
	LONG $0xd6930f41                           // setae    r14b
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	QUAD $0x0000009886100ff2                   // movsd    xmm0, qword [rsi + 152]
	LONG $0xd4930f41                           // setae    r12b
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	QUAD $0x000000a086100ff2                   // movsd    xmm0, qword [rsi + 160]
	LONG $0x2454930f; BYTE $0x09               // setae    byte [rsp + 9]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	QUAD $0x000000a886100ff2                   // movsd    xmm0, qword [rsi + 168]
	LONG $0x2454930f; BYTE $0x0a               // setae    byte [rsp + 10]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	QUAD $0x000000b086100ff2                   // movsd    xmm0, qword [rsi + 176]
	LONG $0x2454930f; BYTE $0x0b               // setae    byte [rsp + 11]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	QUAD $0x000000b886100ff2                   // movsd    xmm0, qword [rsi + 184]
	LONG $0x2454930f; BYTE $0x0c               // setae    byte [rsp + 12]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	QUAD $0x000000c086100ff2                   // movsd    xmm0, qword [rsi + 192]
	LONG $0xd0930f41                           // setae    r8b
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	QUAD $0x000000c886100ff2                   // movsd    xmm0, qword [rsi + 200]
	LONG $0x2454930f; BYTE $0x14               // setae    byte [rsp + 20]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	QUAD $0x000000d086100ff2                   // movsd    xmm0, qword [rsi + 208]
	LONG $0x2454930f; BYTE $0x0d               // setae    byte [rsp + 13]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	QUAD $0x000000d886100ff2                   // movsd    xmm0, qword [rsi + 216]
	LONG $0x2454930f; BYTE $0x0f               // setae    byte [rsp + 15]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	QUAD $0x000000e086100ff2                   // movsd    xmm0, qword [rsi + 224]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	QUAD $0x000000e886100ff2                   // movsd    xmm0, qword [rsi + 232]
	LONG $0x2454930f; BYTE $0x11               // setae    byte [rsp + 17]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	QUAD $0x000000f086100ff2                   // movsd    xmm0, qword [rsi + 240]
	LONG $0x2454930f; BYTE $0x13               // setae    byte [rsp + 19]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	QUAD $0x000000f886100ff2                   // movsd    xmm0, qword [rsi + 248]
	LONG $0x2454930f; BYTE $0x12               // setae    byte [rsp + 18]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	LONG $0xd7930f40                           // setae    dil
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	LONG $0x06e5c041                           // shl    r13b, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0845; BYTE $0xef                   // or    r15b, r13b
	LONG $0x6cb60f44; WORD $0x0524             // movzx    r13d, byte [rsp + 5]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	WORD $0x8944; BYTE $0xe8                   // mov    eax, r13d
	WORD $0xc900                               // add    cl, cl
	LONG $0x08244c02                           // add    cl, byte [rsp + 8]
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	LONG $0x4cb60f44; WORD $0x0624             // movzx    r9d, byte [rsp + 6]
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xcb                   // or    bl, r9b
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	LONG $0x24740244; BYTE $0x0e               // add    r14b, byte [rsp + 14]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a               // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x13               // movzx    ecx, byte [rsp + 19]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xc108                               // or    cl, al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x02468845                           // mov    byte [r14 + 2], r8b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff28             // add    qword [rsp + 40], -1
	JNE  LBB9_52
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]

LBB9_54:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_56:
	LONG $0x04100ff2; BYTE $0xce // movsd    xmm0, qword [rsi + 8*rcx]
	LONG $0x042e0f66; BYTE $0xca // ucomisd    xmm0, qword [rdx + 8*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_56
	JMP  LBB9_123

LBB9_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB9_57
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB9_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_6:
	WORD $0xb60f; BYTE $0x0e     // movzx    ecx, byte [rsi]
	LONG $0x01c68348             // add    rsi, 1
	WORD $0x0a3a                 // cmp    cl, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0xd29d0f41             // setge    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB9_6
	LONG $0x01c68349             // add    r14, 1

LBB9_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_12
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB9_10:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x24549d0f; BYTE $0x28   // setge    byte [rsp + 40]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x9d0f; BYTE $0xd1       // setge    cl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x24549d0f; BYTE $0x14   // setge    byte [rsp + 20]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x24549d0f; BYTE $0x15   // setge    byte [rsp + 21]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x24549d0f; BYTE $0x16   // setge    byte [rsp + 22]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x24549d0f; BYTE $0x17   // setge    byte [rsp + 23]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x24549d0f; BYTE $0x04   // setge    byte [rsp + 4]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd79d0f41               // setge    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x24549d0f; BYTE $0x07   // setge    byte [rsp + 7]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd79d0f40               // setge    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd29d0f41               // setge    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd39d0f41               // setge    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd69d0f41               // setge    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x24549d0f; BYTE $0x05   // setge    byte [rsp + 5]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x24549d0f; BYTE $0x06   // setge    byte [rsp + 6]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	WORD $0x9d0f; BYTE $0xd3       // setge    bl
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x24549d0f; BYTE $0x0d   // setge    byte [rsp + 13]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd49d0f41               // setge    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd59d0f41               // setge    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x24549d0f; BYTE $0x08   // setge    byte [rsp + 8]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x24549d0f; BYTE $0x09   // setge    byte [rsp + 9]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x24549d0f; BYTE $0x0a   // setge    byte [rsp + 10]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x24549d0f; BYTE $0x0b   // setge    byte [rsp + 11]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd19d0f41               // setge    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x24549d0f; BYTE $0x13   // setge    byte [rsp + 19]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x24549d0f; BYTE $0x0c   // setge    byte [rsp + 12]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x24549d0f; BYTE $0x0e   // setge    byte [rsp + 14]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x24549d0f; BYTE $0x0f   // setge    byte [rsp + 15]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x24549d0f; BYTE $0x10   // setge    byte [rsp + 16]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x24549d0f; BYTE $0x11   // setge    byte [rsp + 17]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x24549d0f; BYTE $0x12   // setge    byte [rsp + 18]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	LONG $0xd09d0f41               // setge    r8b
	WORD $0xc900                   // add    cl, cl
	LONG $0x28244c02               // add    cl, byte [rsp + 40]
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x244cb60f; BYTE $0x04   // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14   // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x07   // add    dil, byte [rsp + 7]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0xcf89                   // mov    edi, ecx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0840; BYTE $0xf9       // or    cl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x06   // movzx    edi, byte [rsp + 6]
	LONG $0x06e7c040               // shl    dil, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0d   // add    r12b, byte [rsp + 13]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x3e       // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0b   // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x12   // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8       // or    r8b, cl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x03468845               // mov    byte [r14 + 3], r8b
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB9_10
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB9_12:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_14:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x0e1cb60f             // movzx    ebx, byte [rsi + rcx]
	WORD $0x1c3a; BYTE $0x0a     // cmp    bl, byte [rdx + rcx]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_14
	JMP  LBB9_123

LBB9_30:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB9_90
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB9_123
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_36
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_34:
	WORD $0x8b48; BYTE $0x0e       // mov    rcx, qword [rsi]
	LONG $0x08c68348               // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a       // cmp    rcx, qword [rdx]
	LONG $0x08528d48               // lea    rdx, [rdx + 8]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_34
	LONG $0x01c68349               // add    r14, 1

LBB9_36:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_40
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_38:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x2454930f; BYTE $0x14               // setae    byte [rsp + 20]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x2454930f; BYTE $0x15               // setae    byte [rsp + 21]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x2454930f; BYTE $0x16               // setae    byte [rsp + 22]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x2454930f; BYTE $0x17               // setae    byte [rsp + 23]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x2454930f; BYTE $0x04               // setae    byte [rsp + 4]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x2454930f; BYTE $0x09               // setae    byte [rsp + 9]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x2454930f; BYTE $0x05               // setae    byte [rsp + 5]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x2454930f; BYTE $0x06               // setae    byte [rsp + 6]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x2454930f; BYTE $0x07               // setae    byte [rsp + 7]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x888e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x2454930f; BYTE $0x0a               // setae    byte [rsp + 10]
	LONG $0x888a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 136]
	LONG $0x988e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 152]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x988a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 152]
	LONG $0xa88e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 168]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0xa88a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x2454930f; BYTE $0x0b               // setae    byte [rsp + 11]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x2454930f; BYTE $0x0c               // setae    byte [rsp + 12]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x2454930f; BYTE $0x13               // setae    byte [rsp + 19]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x2454930f; BYTE $0x0d               // setae    byte [rsp + 13]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x2454930f; BYTE $0x0e               // setae    byte [rsp + 14]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x2454930f; BYTE $0x0f               // setae    byte [rsp + 15]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x2454930f; BYTE $0x12               // setae    byte [rsp + 18]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x2454930f; BYTE $0x11               // setae    byte [rsp + 17]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB9_38
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB9_40:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_42:
	LONG $0xce048b48             // mov    rax, qword [rsi + 8*rcx]
	LONG $0xca043b48             // cmp    rax, qword [rdx + 8*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_42
	JMP  LBB9_123

LBB9_68:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_72
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_70:
	WORD $0xb70f; BYTE $0x0e       // movzx    ecx, word [rsi]
	LONG $0x02c68348               // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a       // cmp    cx, word [rdx]
	LONG $0x02528d48               // lea    rdx, [rdx + 2]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_70
	LONG $0x01c68349               // add    r14, 1

LBB9_72:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_76
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_74:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x2454930f; BYTE $0x28   // setae    byte [rsp + 40]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x2454930f; BYTE $0x20   // setae    byte [rsp + 32]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x2454930f; BYTE $0x14   // setae    byte [rsp + 20]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x2454930f; BYTE $0x15   // setae    byte [rsp + 21]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x2454930f; BYTE $0x16   // setae    byte [rsp + 22]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x2454930f; BYTE $0x17   // setae    byte [rsp + 23]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x2454930f; BYTE $0x04   // setae    byte [rsp + 4]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd5930f41               // setae    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x2454930f; BYTE $0x09   // setae    byte [rsp + 9]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd0930f41               // setae    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd3930f41               // setae    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd7930f41               // setae    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x2454930f; BYTE $0x05   // setae    byte [rsp + 5]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x2454930f; BYTE $0x06   // setae    byte [rsp + 6]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x2454930f; BYTE $0x07   // setae    byte [rsp + 7]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	WORD $0x930f; BYTE $0xd3       // setae    bl
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x224eb70f               // movzx    ecx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x2454930f; BYTE $0x0a   // setae    byte [rsp + 10]
	LONG $0x224a3b66               // cmp    cx, word [rdx + 34]
	LONG $0x264eb70f               // movzx    ecx, word [rsi + 38]
	LONG $0xd2930f41               // setae    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd6930f41               // setae    r14b
	LONG $0x264a3b66               // cmp    cx, word [rdx + 38]
	LONG $0x2a4eb70f               // movzx    ecx, word [rsi + 42]
	LONG $0xd4930f41               // setae    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x2454930f; BYTE $0x08   // setae    byte [rsp + 8]
	LONG $0x2a4a3b66               // cmp    cx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x2454930f; BYTE $0x0b   // setae    byte [rsp + 11]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x2454930f; BYTE $0x0c   // setae    byte [rsp + 12]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd1930f41               // setae    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x2454930f; BYTE $0x13   // setae    byte [rsp + 19]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x2454930f; BYTE $0x0d   // setae    byte [rsp + 13]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x2454930f; BYTE $0x0e   // setae    byte [rsp + 14]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x2454930f; BYTE $0x0f   // setae    byte [rsp + 15]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x2454930f; BYTE $0x10   // setae    byte [rsp + 16]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x2454930f; BYTE $0x12   // setae    byte [rsp + 18]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x2454930f; BYTE $0x11   // setae    byte [rsp + 17]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	LONG $0xd7930f40               // setae    dil
	LONG $0x2444b60f; BYTE $0x20   // movzx    eax, byte [rsp + 32]
	WORD $0xc000                   // add    al, al
	LONG $0x28244402               // add    al, byte [rsp + 40]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04   // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14   // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09   // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0x8941; BYTE $0xc8       // mov    r8d, ecx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0844; BYTE $0xc1       // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724 // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041               // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	WORD $0x0841; BYTE $0xcd       // or    r13b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a   // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x2e       // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c   // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x11   // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0840; BYTE $0xcf       // or    dil, cl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x037e8841               // mov    byte [r14 + 3], dil
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff38 // add    qword [rsp + 56], -1
	JNE  LBB9_74
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40   // mov    r15, qword [rsp + 64]

LBB9_76:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_78:
	LONG $0x4e04b70f             // movzx    eax, word [rsi + 2*rcx]
	LONG $0x4a043b66             // cmp    ax, word [rdx + 2*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_78
	JMP  LBB9_123

LBB9_79:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_83
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_81:
	WORD $0xb70f; BYTE $0x0e     // movzx    ecx, word [rsi]
	LONG $0x02c68348             // add    rsi, 2
	WORD $0x3b66; BYTE $0x0a     // cmp    cx, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	LONG $0xd29d0f41             // setge    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB9_81
	LONG $0x01c68349             // add    r14, 1

LBB9_83:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_87
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_85:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb70f; BYTE $0x06       // movzx    eax, word [rsi]
	LONG $0x024eb70f               // movzx    ecx, word [rsi + 2]
	WORD $0x3b66; BYTE $0x02       // cmp    ax, word [rdx]
	LONG $0x24549d0f; BYTE $0x28   // setge    byte [rsp + 40]
	LONG $0x024a3b66               // cmp    cx, word [rdx + 2]
	LONG $0x24549d0f; BYTE $0x20   // setge    byte [rsp + 32]
	LONG $0x0446b70f               // movzx    eax, word [rsi + 4]
	LONG $0x04423b66               // cmp    ax, word [rdx + 4]
	LONG $0x24549d0f; BYTE $0x14   // setge    byte [rsp + 20]
	LONG $0x0646b70f               // movzx    eax, word [rsi + 6]
	LONG $0x06423b66               // cmp    ax, word [rdx + 6]
	LONG $0x24549d0f; BYTE $0x15   // setge    byte [rsp + 21]
	LONG $0x0846b70f               // movzx    eax, word [rsi + 8]
	LONG $0x08423b66               // cmp    ax, word [rdx + 8]
	LONG $0x24549d0f; BYTE $0x16   // setge    byte [rsp + 22]
	LONG $0x0a46b70f               // movzx    eax, word [rsi + 10]
	LONG $0x0a423b66               // cmp    ax, word [rdx + 10]
	LONG $0x24549d0f; BYTE $0x17   // setge    byte [rsp + 23]
	LONG $0x0c46b70f               // movzx    eax, word [rsi + 12]
	LONG $0x0c423b66               // cmp    ax, word [rdx + 12]
	LONG $0x24549d0f; BYTE $0x04   // setge    byte [rsp + 4]
	LONG $0x0e46b70f               // movzx    eax, word [rsi + 14]
	LONG $0x0e423b66               // cmp    ax, word [rdx + 14]
	LONG $0xd59d0f41               // setge    r13b
	LONG $0x1046b70f               // movzx    eax, word [rsi + 16]
	LONG $0x10423b66               // cmp    ax, word [rdx + 16]
	LONG $0x24549d0f; BYTE $0x09   // setge    byte [rsp + 9]
	LONG $0x1246b70f               // movzx    eax, word [rsi + 18]
	LONG $0x12423b66               // cmp    ax, word [rdx + 18]
	LONG $0xd09d0f41               // setge    r8b
	LONG $0x1446b70f               // movzx    eax, word [rsi + 20]
	LONG $0x14423b66               // cmp    ax, word [rdx + 20]
	LONG $0xd39d0f41               // setge    r11b
	LONG $0x1646b70f               // movzx    eax, word [rsi + 22]
	LONG $0x16423b66               // cmp    ax, word [rdx + 22]
	LONG $0xd79d0f41               // setge    r15b
	LONG $0x1846b70f               // movzx    eax, word [rsi + 24]
	LONG $0x18423b66               // cmp    ax, word [rdx + 24]
	LONG $0x24549d0f; BYTE $0x05   // setge    byte [rsp + 5]
	LONG $0x1a46b70f               // movzx    eax, word [rsi + 26]
	LONG $0x1a423b66               // cmp    ax, word [rdx + 26]
	LONG $0x24549d0f; BYTE $0x06   // setge    byte [rsp + 6]
	LONG $0x1c46b70f               // movzx    eax, word [rsi + 28]
	LONG $0x1c423b66               // cmp    ax, word [rdx + 28]
	LONG $0x24549d0f; BYTE $0x07   // setge    byte [rsp + 7]
	LONG $0x1e46b70f               // movzx    eax, word [rsi + 30]
	LONG $0x1e423b66               // cmp    ax, word [rdx + 30]
	WORD $0x9d0f; BYTE $0xd3       // setge    bl
	LONG $0x2046b70f               // movzx    eax, word [rsi + 32]
	LONG $0x224eb70f               // movzx    ecx, word [rsi + 34]
	LONG $0x20423b66               // cmp    ax, word [rdx + 32]
	LONG $0x2446b70f               // movzx    eax, word [rsi + 36]
	LONG $0x24549d0f; BYTE $0x0a   // setge    byte [rsp + 10]
	LONG $0x224a3b66               // cmp    cx, word [rdx + 34]
	LONG $0x264eb70f               // movzx    ecx, word [rsi + 38]
	LONG $0xd29d0f41               // setge    r10b
	LONG $0x24423b66               // cmp    ax, word [rdx + 36]
	LONG $0x2846b70f               // movzx    eax, word [rsi + 40]
	LONG $0xd69d0f41               // setge    r14b
	LONG $0x264a3b66               // cmp    cx, word [rdx + 38]
	LONG $0x2a4eb70f               // movzx    ecx, word [rsi + 42]
	LONG $0xd49d0f41               // setge    r12b
	LONG $0x28423b66               // cmp    ax, word [rdx + 40]
	LONG $0x24549d0f; BYTE $0x08   // setge    byte [rsp + 8]
	LONG $0x2a4a3b66               // cmp    cx, word [rdx + 42]
	LONG $0x2c46b70f               // movzx    eax, word [rsi + 44]
	LONG $0x24549d0f; BYTE $0x0b   // setge    byte [rsp + 11]
	LONG $0x2c423b66               // cmp    ax, word [rdx + 44]
	LONG $0x2e46b70f               // movzx    eax, word [rsi + 46]
	LONG $0x24549d0f; BYTE $0x0c   // setge    byte [rsp + 12]
	LONG $0x2e423b66               // cmp    ax, word [rdx + 46]
	LONG $0x3046b70f               // movzx    eax, word [rsi + 48]
	LONG $0xd19d0f41               // setge    r9b
	LONG $0x30423b66               // cmp    ax, word [rdx + 48]
	LONG $0x3246b70f               // movzx    eax, word [rsi + 50]
	LONG $0x24549d0f; BYTE $0x13   // setge    byte [rsp + 19]
	LONG $0x32423b66               // cmp    ax, word [rdx + 50]
	LONG $0x3446b70f               // movzx    eax, word [rsi + 52]
	LONG $0x24549d0f; BYTE $0x0d   // setge    byte [rsp + 13]
	LONG $0x34423b66               // cmp    ax, word [rdx + 52]
	LONG $0x3646b70f               // movzx    eax, word [rsi + 54]
	LONG $0x24549d0f; BYTE $0x0e   // setge    byte [rsp + 14]
	LONG $0x36423b66               // cmp    ax, word [rdx + 54]
	LONG $0x3846b70f               // movzx    eax, word [rsi + 56]
	LONG $0x24549d0f; BYTE $0x0f   // setge    byte [rsp + 15]
	LONG $0x38423b66               // cmp    ax, word [rdx + 56]
	LONG $0x3a46b70f               // movzx    eax, word [rsi + 58]
	LONG $0x24549d0f; BYTE $0x10   // setge    byte [rsp + 16]
	LONG $0x3a423b66               // cmp    ax, word [rdx + 58]
	LONG $0x3c46b70f               // movzx    eax, word [rsi + 60]
	LONG $0x24549d0f; BYTE $0x12   // setge    byte [rsp + 18]
	LONG $0x3c423b66               // cmp    ax, word [rdx + 60]
	LONG $0x3e46b70f               // movzx    eax, word [rsi + 62]
	LONG $0x24549d0f; BYTE $0x11   // setge    byte [rsp + 17]
	LONG $0x40c68348               // add    rsi, 64
	LONG $0x3e423b66               // cmp    ax, word [rdx + 62]
	LONG $0xd79d0f40               // setge    dil
	LONG $0x2444b60f; BYTE $0x20   // movzx    eax, byte [rsp + 32]
	WORD $0xc000                   // add    al, al
	LONG $0x28244402               // add    al, byte [rsp + 40]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04   // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06       // shl    al, 6
	LONG $0x07e5c041               // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5       // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14   // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0x0045; BYTE $0xc0       // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09   // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e3c041               // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3       // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0x8941; BYTE $0xc8       // mov    r8d, ecx
	LONG $0x03e7c041               // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf       // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0844; BYTE $0xc1       // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xf8       // or    al, r15b
	WORD $0x8941; BYTE $0xc0       // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06   // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xc0       // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724 // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041               // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0844; BYTE $0xc3       // or    bl, r8b
	WORD $0x0841; BYTE $0xcd       // or    r13b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xd2       // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a   // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041               // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6       // or    r14b, r10b
	LONG $0x03e4c041               // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4       // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0x0844; BYTE $0xe0       // or    al, r12b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b   // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x2e       // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c   // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d   // movzx    eax, byte [rsp + 13]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12   // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x11   // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c040               // shl    dil, 7
	WORD $0x0840; BYTE $0xcf       // or    dil, cl
	WORD $0x0840; BYTE $0xc7       // or    dil, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x037e8841               // mov    byte [r14 + 3], dil
	LONG $0x40c28348               // add    rdx, 64
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff38 // add    qword [rsp + 56], -1
	JNE  LBB9_85
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40   // mov    r15, qword [rsp + 64]

LBB9_87:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_89:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x4e3cb70f             // movzx    edi, word [rsi + 2*rcx]
	LONG $0x4a3c3b66             // cmp    di, word [rdx + 2*rcx]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_89
	JMP  LBB9_123

LBB9_101:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_105
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_103:
	WORD $0x8b48; BYTE $0x0e     // mov    rcx, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	WORD $0x3b48; BYTE $0x0a     // cmp    rcx, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd29d0f41             // setge    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB9_103
	LONG $0x01c68349             // add    r14, 1

LBB9_105:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_109
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_107:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x8b48; BYTE $0x06                   // mov    rax, qword [rsi]
	LONG $0x084e8b48                           // mov    rcx, qword [rsi + 8]
	WORD $0x3b48; BYTE $0x02                   // cmp    rax, qword [rdx]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	LONG $0x084a3b48                           // cmp    rcx, qword [rdx + 8]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x10468b48                           // mov    rax, qword [rsi + 16]
	LONG $0x10423b48                           // cmp    rax, qword [rdx + 16]
	LONG $0x24549d0f; BYTE $0x14               // setge    byte [rsp + 20]
	LONG $0x18468b48                           // mov    rax, qword [rsi + 24]
	LONG $0x18423b48                           // cmp    rax, qword [rdx + 24]
	LONG $0x24549d0f; BYTE $0x15               // setge    byte [rsp + 21]
	LONG $0x20468b48                           // mov    rax, qword [rsi + 32]
	LONG $0x20423b48                           // cmp    rax, qword [rdx + 32]
	LONG $0x24549d0f; BYTE $0x16               // setge    byte [rsp + 22]
	LONG $0x28468b48                           // mov    rax, qword [rsi + 40]
	LONG $0x28423b48                           // cmp    rax, qword [rdx + 40]
	LONG $0x24549d0f; BYTE $0x17               // setge    byte [rsp + 23]
	LONG $0x30468b48                           // mov    rax, qword [rsi + 48]
	LONG $0x30423b48                           // cmp    rax, qword [rdx + 48]
	LONG $0x24549d0f; BYTE $0x04               // setge    byte [rsp + 4]
	LONG $0x38468b48                           // mov    rax, qword [rsi + 56]
	LONG $0x38423b48                           // cmp    rax, qword [rdx + 56]
	LONG $0xd59d0f41                           // setge    r13b
	LONG $0x40468b48                           // mov    rax, qword [rsi + 64]
	LONG $0x40423b48                           // cmp    rax, qword [rdx + 64]
	LONG $0x24549d0f; BYTE $0x09               // setge    byte [rsp + 9]
	LONG $0x48468b48                           // mov    rax, qword [rsi + 72]
	LONG $0x48423b48                           // cmp    rax, qword [rdx + 72]
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x50468b48                           // mov    rax, qword [rsi + 80]
	LONG $0x50423b48                           // cmp    rax, qword [rdx + 80]
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x58468b48                           // mov    rax, qword [rsi + 88]
	LONG $0x58423b48                           // cmp    rax, qword [rdx + 88]
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x60468b48                           // mov    rax, qword [rsi + 96]
	LONG $0x60423b48                           // cmp    rax, qword [rdx + 96]
	LONG $0x24549d0f; BYTE $0x05               // setge    byte [rsp + 5]
	LONG $0x68468b48                           // mov    rax, qword [rsi + 104]
	LONG $0x68423b48                           // cmp    rax, qword [rdx + 104]
	LONG $0x24549d0f; BYTE $0x06               // setge    byte [rsp + 6]
	LONG $0x70468b48                           // mov    rax, qword [rsi + 112]
	LONG $0x70423b48                           // cmp    rax, qword [rdx + 112]
	LONG $0x24549d0f; BYTE $0x07               // setge    byte [rsp + 7]
	LONG $0x78468b48                           // mov    rax, qword [rsi + 120]
	LONG $0x78423b48                           // cmp    rax, qword [rdx + 120]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x80868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 128]
	LONG $0x888e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 136]
	LONG $0x80823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 128]
	LONG $0x90868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 144]
	LONG $0x24549d0f; BYTE $0x0a               // setge    byte [rsp + 10]
	LONG $0x888a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 136]
	LONG $0x988e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 152]
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x90823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 144]
	LONG $0xa0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 160]
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x988a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 152]
	LONG $0xa88e8b48; WORD $0x0000; BYTE $0x00 // mov    rcx, qword [rsi + 168]
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0xa0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 160]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0xa88a3b48; WORD $0x0000; BYTE $0x00 // cmp    rcx, qword [rdx + 168]
	LONG $0xb0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 176]
	LONG $0x24549d0f; BYTE $0x0b               // setge    byte [rsp + 11]
	LONG $0xb0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 176]
	LONG $0xb8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 184]
	LONG $0x24549d0f; BYTE $0x0c               // setge    byte [rsp + 12]
	LONG $0xb8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 184]
	LONG $0xc0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 192]
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0xc0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 192]
	LONG $0xc8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 200]
	LONG $0x24549d0f; BYTE $0x13               // setge    byte [rsp + 19]
	LONG $0xc8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 200]
	LONG $0xd0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 208]
	LONG $0x24549d0f; BYTE $0x0d               // setge    byte [rsp + 13]
	LONG $0xd0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 208]
	LONG $0xd8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 216]
	LONG $0x24549d0f; BYTE $0x0e               // setge    byte [rsp + 14]
	LONG $0xd8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 216]
	LONG $0xe0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 224]
	LONG $0x24549d0f; BYTE $0x0f               // setge    byte [rsp + 15]
	LONG $0xe0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 224]
	LONG $0xe8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 232]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0xe8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 232]
	LONG $0xf0868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 240]
	LONG $0x24549d0f; BYTE $0x12               // setge    byte [rsp + 18]
	LONG $0xf0823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 240]
	LONG $0xf8868b48; WORD $0x0000; BYTE $0x00 // mov    rax, qword [rsi + 248]
	LONG $0x24549d0f; BYTE $0x11               // setge    byte [rsp + 17]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xf8823b48; WORD $0x0000; BYTE $0x00 // cmp    rax, qword [rdx + 248]
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB9_107
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB9_109:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_111:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0xce3c8b48             // mov    rdi, qword [rsi + 8*rcx]
	LONG $0xca3c3b48             // cmp    rdi, qword [rdx + 8*rcx]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_111
	JMP  LBB9_123

LBB9_112:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_116
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_114:
	LONG $0x06100ff3               // movss    xmm0, dword [rsi]
	LONG $0x04c68348               // add    rsi, 4
	WORD $0x2e0f; BYTE $0x02       // ucomiss    xmm0, dword [rdx]
	LONG $0x04528d48               // lea    rdx, [rdx + 4]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_114
	LONG $0x01c68349               // add    r14, 1

LBB9_116:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_120
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15
	LONG $0x247c894c; BYTE $0x28 // mov    qword [rsp + 40], r15

LBB9_118:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	LONG $0x06100ff3                           // movss    xmm0, dword [rsi]
	LONG $0x4e100ff3; BYTE $0x04               // movss    xmm1, dword [rsi + 4]
	WORD $0x2e0f; BYTE $0x02                   // ucomiss    xmm0, dword [rdx]
	LONG $0x2454930f; BYTE $0x04               // setae    byte [rsp + 4]
	LONG $0x044a2e0f                           // ucomiss    xmm1, dword [rdx + 4]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x46100ff3; BYTE $0x08               // movss    xmm0, dword [rsi + 8]
	LONG $0x08422e0f                           // ucomiss    xmm0, dword [rdx + 8]
	LONG $0x46100ff3; BYTE $0x0c               // movss    xmm0, dword [rsi + 12]
	LONG $0x2454930f; BYTE $0x05               // setae    byte [rsp + 5]
	LONG $0x0c422e0f                           // ucomiss    xmm0, dword [rdx + 12]
	LONG $0x2454930f; BYTE $0x16               // setae    byte [rsp + 22]
	LONG $0x46100ff3; BYTE $0x10               // movss    xmm0, dword [rsi + 16]
	LONG $0x10422e0f                           // ucomiss    xmm0, dword [rdx + 16]
	LONG $0x46100ff3; BYTE $0x14               // movss    xmm0, dword [rsi + 20]
	LONG $0x2454930f; BYTE $0x15               // setae    byte [rsp + 21]
	LONG $0x14422e0f                           // ucomiss    xmm0, dword [rdx + 20]
	LONG $0x2454930f; BYTE $0x17               // setae    byte [rsp + 23]
	LONG $0x46100ff3; BYTE $0x18               // movss    xmm0, dword [rsi + 24]
	LONG $0x18422e0f                           // ucomiss    xmm0, dword [rdx + 24]
	LONG $0x46100ff3; BYTE $0x1c               // movss    xmm0, dword [rsi + 28]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x1c422e0f                           // ucomiss    xmm0, dword [rdx + 28]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x46100ff3; BYTE $0x20               // movss    xmm0, dword [rsi + 32]
	LONG $0x20422e0f                           // ucomiss    xmm0, dword [rdx + 32]
	LONG $0x46100ff3; BYTE $0x24               // movss    xmm0, dword [rsi + 36]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x24422e0f                           // ucomiss    xmm0, dword [rdx + 36]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x46100ff3; BYTE $0x28               // movss    xmm0, dword [rsi + 40]
	LONG $0x28422e0f                           // ucomiss    xmm0, dword [rdx + 40]
	LONG $0x46100ff3; BYTE $0x2c               // movss    xmm0, dword [rsi + 44]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x2c422e0f                           // ucomiss    xmm0, dword [rdx + 44]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x46100ff3; BYTE $0x30               // movss    xmm0, dword [rsi + 48]
	LONG $0x30422e0f                           // ucomiss    xmm0, dword [rdx + 48]
	LONG $0x46100ff3; BYTE $0x34               // movss    xmm0, dword [rsi + 52]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x34422e0f                           // ucomiss    xmm0, dword [rdx + 52]
	LONG $0x2454930f; BYTE $0x07               // setae    byte [rsp + 7]
	LONG $0x46100ff3; BYTE $0x38               // movss    xmm0, dword [rsi + 56]
	LONG $0x38422e0f                           // ucomiss    xmm0, dword [rdx + 56]
	LONG $0x46100ff3; BYTE $0x3c               // movss    xmm0, dword [rsi + 60]
	LONG $0x2454930f; BYTE $0x06               // setae    byte [rsp + 6]
	LONG $0x3c422e0f                           // ucomiss    xmm0, dword [rdx + 60]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x46100ff3; BYTE $0x40               // movss    xmm0, dword [rsi + 64]
	LONG $0x40422e0f                           // ucomiss    xmm0, dword [rdx + 64]
	LONG $0x46100ff3; BYTE $0x44               // movss    xmm0, dword [rsi + 68]
	LONG $0x2454930f; BYTE $0x0e               // setae    byte [rsp + 14]
	LONG $0x44422e0f                           // ucomiss    xmm0, dword [rdx + 68]
	LONG $0x46100ff3; BYTE $0x48               // movss    xmm0, dword [rsi + 72]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x48422e0f                           // ucomiss    xmm0, dword [rdx + 72]
	LONG $0x46100ff3; BYTE $0x4c               // movss    xmm0, dword [rsi + 76]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x4c422e0f                           // ucomiss    xmm0, dword [rdx + 76]
	LONG $0x46100ff3; BYTE $0x50               // movss    xmm0, dword [rsi + 80]
	LONG $0x2454930f; BYTE $0x09               // setae    byte [rsp + 9]
	LONG $0x50422e0f                           // ucomiss    xmm0, dword [rdx + 80]
	LONG $0x46100ff3; BYTE $0x54               // movss    xmm0, dword [rsi + 84]
	LONG $0x2454930f; BYTE $0x0a               // setae    byte [rsp + 10]
	LONG $0x54422e0f                           // ucomiss    xmm0, dword [rdx + 84]
	LONG $0x46100ff3; BYTE $0x58               // movss    xmm0, dword [rsi + 88]
	LONG $0x2454930f; BYTE $0x0b               // setae    byte [rsp + 11]
	LONG $0x58422e0f                           // ucomiss    xmm0, dword [rdx + 88]
	LONG $0x46100ff3; BYTE $0x5c               // movss    xmm0, dword [rsi + 92]
	LONG $0x2454930f; BYTE $0x0c               // setae    byte [rsp + 12]
	LONG $0x5c422e0f                           // ucomiss    xmm0, dword [rdx + 92]
	LONG $0x46100ff3; BYTE $0x60               // movss    xmm0, dword [rsi + 96]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x60422e0f                           // ucomiss    xmm0, dword [rdx + 96]
	LONG $0x46100ff3; BYTE $0x64               // movss    xmm0, dword [rsi + 100]
	LONG $0x2454930f; BYTE $0x14               // setae    byte [rsp + 20]
	LONG $0x64422e0f                           // ucomiss    xmm0, dword [rdx + 100]
	LONG $0x46100ff3; BYTE $0x68               // movss    xmm0, dword [rsi + 104]
	LONG $0x2454930f; BYTE $0x0d               // setae    byte [rsp + 13]
	LONG $0x68422e0f                           // ucomiss    xmm0, dword [rdx + 104]
	LONG $0x46100ff3; BYTE $0x6c               // movss    xmm0, dword [rsi + 108]
	LONG $0x2454930f; BYTE $0x0f               // setae    byte [rsp + 15]
	LONG $0x6c422e0f                           // ucomiss    xmm0, dword [rdx + 108]
	LONG $0x46100ff3; BYTE $0x70               // movss    xmm0, dword [rsi + 112]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x70422e0f                           // ucomiss    xmm0, dword [rdx + 112]
	LONG $0x46100ff3; BYTE $0x74               // movss    xmm0, dword [rsi + 116]
	LONG $0x2454930f; BYTE $0x11               // setae    byte [rsp + 17]
	LONG $0x74422e0f                           // ucomiss    xmm0, dword [rdx + 116]
	LONG $0x46100ff3; BYTE $0x78               // movss    xmm0, dword [rsi + 120]
	LONG $0x2454930f; BYTE $0x13               // setae    byte [rsp + 19]
	LONG $0x78422e0f                           // ucomiss    xmm0, dword [rdx + 120]
	LONG $0x46100ff3; BYTE $0x7c               // movss    xmm0, dword [rsi + 124]
	LONG $0x2454930f; BYTE $0x12               // setae    byte [rsp + 18]
	LONG $0x80ee8348                           // sub    rsi, -128
	LONG $0x7c422e0f                           // ucomiss    xmm0, dword [rdx + 124]
	LONG $0xd7930f40                           // setae    dil
	WORD $0xc000                               // add    al, al
	LONG $0x04244402                           // add    al, byte [rsp + 4]
	LONG $0x06e5c041                           // shl    r13b, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0845; BYTE $0xef                   // or    r15b, r13b
	LONG $0x6cb60f44; WORD $0x0524             // movzx    r13d, byte [rsp + 5]
	LONG $0x02e5c041                           // shl    r13b, 2
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	WORD $0x8944; BYTE $0xe8                   // mov    eax, r13d
	WORD $0xc900                               // add    cl, cl
	LONG $0x08244c02                           // add    cl, byte [rsp + 8]
	LONG $0x6cb60f44; WORD $0x1624             // movzx    r13d, byte [rsp + 22]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	WORD $0x8941; BYTE $0xcd                   // mov    r13d, ecx
	LONG $0x03e3c041                           // shl    r11b, 3
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xda                   // or    r10b, r11b
	LONG $0x2444b60f; BYTE $0x07               // movzx    eax, byte [rsp + 7]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	LONG $0x4cb60f44; WORD $0x0624             // movzx    r9d, byte [rsp + 6]
	LONG $0x06e1c041                           // shl    r9b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xcb                   // or    bl, r9b
	WORD $0x0841; BYTE $0xcf                   // or    r15b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xf6                   // add    r14b, r14b
	LONG $0x24740244; BYTE $0x0e               // add    r14b, byte [rsp + 14]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x09               // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a               // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x3e                   // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x14244402                           // add    al, byte [rsp + 20]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x11               // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x13               // movzx    ecx, byte [rsp + 19]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xc108                               // or    cl, al
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x02468845                           // mov    byte [r14 + 2], r8b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff28             // add    qword [rsp + 40], -1
	JNE  LBB9_118
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]

LBB9_120:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_122:
	LONG $0x04100ff3; BYTE $0x8e // movss    xmm0, dword [rsi + 4*rcx]
	LONG $0x8a042e0f             // ucomiss    xmm0, dword [rdx + 4*rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_122
	JMP  LBB9_123

LBB9_57:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_61
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_59:
	WORD $0xb60f; BYTE $0x0e       // movzx    ecx, byte [rsi]
	LONG $0x01c68348               // add    rsi, 1
	WORD $0x0a3a                   // cmp    cl, byte [rdx]
	LONG $0x01528d48               // lea    rdx, [rdx + 1]
	LONG $0x0000ba41; WORD $0x0000 // mov    r10d, 0
	LONG $0xffd28041               // adc    r10b, -1
	LONG $0x07588d48               // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0       // test    rax, rax
	LONG $0xd8490f48               // cmovns    rbx, rax
	LONG $0x03fbc148               // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e   // movzx    r8d, byte [r14 + rbx]
	WORD $0x3045; BYTE $0xc2       // xor    r10b, r8b
	QUAD $0x00000000dd0c8d44       // lea    r9d, [8*rbx]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9       // sub    ecx, r9d
	LONG $0x000001bf; BYTE $0x00   // mov    edi, 1
	WORD $0xe7d3                   // shl    edi, cl
	WORD $0x2044; BYTE $0xd7       // and    dil, r10b
	WORD $0x3044; BYTE $0xc7       // xor    dil, r8b
	LONG $0x1e3c8841               // mov    byte [r14 + rbx], dil
	LONG $0x01c08348               // add    rax, 1
	LONG $0x08f88348               // cmp    rax, 8
	JNE  LBB9_59
	LONG $0x01c68349               // add    r14, 1

LBB9_61:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_65
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15
	LONG $0x247c894c; BYTE $0x20 // mov    qword [rsp + 32], r15

LBB9_63:
	LONG $0x2474894c; BYTE $0x30   // mov    qword [rsp + 48], r14
	WORD $0xb60f; BYTE $0x06       // movzx    eax, byte [rsi]
	LONG $0x014eb60f               // movzx    ecx, byte [rsi + 1]
	WORD $0x023a                   // cmp    al, byte [rdx]
	LONG $0x2454930f; BYTE $0x28   // setae    byte [rsp + 40]
	WORD $0x4a3a; BYTE $0x01       // cmp    cl, byte [rdx + 1]
	WORD $0x930f; BYTE $0xd1       // setae    cl
	LONG $0x0246b60f               // movzx    eax, byte [rsi + 2]
	WORD $0x423a; BYTE $0x02       // cmp    al, byte [rdx + 2]
	LONG $0x2454930f; BYTE $0x14   // setae    byte [rsp + 20]
	LONG $0x0346b60f               // movzx    eax, byte [rsi + 3]
	WORD $0x423a; BYTE $0x03       // cmp    al, byte [rdx + 3]
	LONG $0x2454930f; BYTE $0x15   // setae    byte [rsp + 21]
	LONG $0x0446b60f               // movzx    eax, byte [rsi + 4]
	WORD $0x423a; BYTE $0x04       // cmp    al, byte [rdx + 4]
	LONG $0x2454930f; BYTE $0x16   // setae    byte [rsp + 22]
	LONG $0x0546b60f               // movzx    eax, byte [rsi + 5]
	WORD $0x423a; BYTE $0x05       // cmp    al, byte [rdx + 5]
	LONG $0x2454930f; BYTE $0x17   // setae    byte [rsp + 23]
	LONG $0x0646b60f               // movzx    eax, byte [rsi + 6]
	WORD $0x423a; BYTE $0x06       // cmp    al, byte [rdx + 6]
	LONG $0x2454930f; BYTE $0x04   // setae    byte [rsp + 4]
	LONG $0x0746b60f               // movzx    eax, byte [rsi + 7]
	WORD $0x423a; BYTE $0x07       // cmp    al, byte [rdx + 7]
	LONG $0xd7930f41               // setae    r15b
	LONG $0x0846b60f               // movzx    eax, byte [rsi + 8]
	WORD $0x423a; BYTE $0x08       // cmp    al, byte [rdx + 8]
	LONG $0x2454930f; BYTE $0x07   // setae    byte [rsp + 7]
	LONG $0x0946b60f               // movzx    eax, byte [rsi + 9]
	WORD $0x423a; BYTE $0x09       // cmp    al, byte [rdx + 9]
	LONG $0xd7930f40               // setae    dil
	LONG $0x0a46b60f               // movzx    eax, byte [rsi + 10]
	WORD $0x423a; BYTE $0x0a       // cmp    al, byte [rdx + 10]
	LONG $0xd2930f41               // setae    r10b
	LONG $0x0b46b60f               // movzx    eax, byte [rsi + 11]
	WORD $0x423a; BYTE $0x0b       // cmp    al, byte [rdx + 11]
	LONG $0xd3930f41               // setae    r11b
	LONG $0x0c46b60f               // movzx    eax, byte [rsi + 12]
	WORD $0x423a; BYTE $0x0c       // cmp    al, byte [rdx + 12]
	LONG $0xd6930f41               // setae    r14b
	LONG $0x0d46b60f               // movzx    eax, byte [rsi + 13]
	WORD $0x423a; BYTE $0x0d       // cmp    al, byte [rdx + 13]
	LONG $0x2454930f; BYTE $0x05   // setae    byte [rsp + 5]
	LONG $0x0e46b60f               // movzx    eax, byte [rsi + 14]
	WORD $0x423a; BYTE $0x0e       // cmp    al, byte [rdx + 14]
	LONG $0x2454930f; BYTE $0x06   // setae    byte [rsp + 6]
	LONG $0x0f46b60f               // movzx    eax, byte [rsi + 15]
	WORD $0x423a; BYTE $0x0f       // cmp    al, byte [rdx + 15]
	WORD $0x930f; BYTE $0xd3       // setae    bl
	LONG $0x1046b60f               // movzx    eax, byte [rsi + 16]
	WORD $0x423a; BYTE $0x10       // cmp    al, byte [rdx + 16]
	LONG $0x2454930f; BYTE $0x0d   // setae    byte [rsp + 13]
	LONG $0x1146b60f               // movzx    eax, byte [rsi + 17]
	WORD $0x423a; BYTE $0x11       // cmp    al, byte [rdx + 17]
	LONG $0xd4930f41               // setae    r12b
	LONG $0x1246b60f               // movzx    eax, byte [rsi + 18]
	WORD $0x423a; BYTE $0x12       // cmp    al, byte [rdx + 18]
	LONG $0xd5930f41               // setae    r13b
	LONG $0x1346b60f               // movzx    eax, byte [rsi + 19]
	WORD $0x423a; BYTE $0x13       // cmp    al, byte [rdx + 19]
	LONG $0x2454930f; BYTE $0x08   // setae    byte [rsp + 8]
	LONG $0x1446b60f               // movzx    eax, byte [rsi + 20]
	WORD $0x423a; BYTE $0x14       // cmp    al, byte [rdx + 20]
	LONG $0x2454930f; BYTE $0x09   // setae    byte [rsp + 9]
	LONG $0x1546b60f               // movzx    eax, byte [rsi + 21]
	WORD $0x423a; BYTE $0x15       // cmp    al, byte [rdx + 21]
	LONG $0x2454930f; BYTE $0x0a   // setae    byte [rsp + 10]
	LONG $0x1646b60f               // movzx    eax, byte [rsi + 22]
	WORD $0x423a; BYTE $0x16       // cmp    al, byte [rdx + 22]
	LONG $0x2454930f; BYTE $0x0b   // setae    byte [rsp + 11]
	LONG $0x1746b60f               // movzx    eax, byte [rsi + 23]
	WORD $0x423a; BYTE $0x17       // cmp    al, byte [rdx + 23]
	LONG $0xd1930f41               // setae    r9b
	LONG $0x1846b60f               // movzx    eax, byte [rsi + 24]
	WORD $0x423a; BYTE $0x18       // cmp    al, byte [rdx + 24]
	LONG $0x2454930f; BYTE $0x13   // setae    byte [rsp + 19]
	LONG $0x1946b60f               // movzx    eax, byte [rsi + 25]
	WORD $0x423a; BYTE $0x19       // cmp    al, byte [rdx + 25]
	LONG $0x2454930f; BYTE $0x0c   // setae    byte [rsp + 12]
	LONG $0x1a46b60f               // movzx    eax, byte [rsi + 26]
	WORD $0x423a; BYTE $0x1a       // cmp    al, byte [rdx + 26]
	LONG $0x2454930f; BYTE $0x0e   // setae    byte [rsp + 14]
	LONG $0x1b46b60f               // movzx    eax, byte [rsi + 27]
	WORD $0x423a; BYTE $0x1b       // cmp    al, byte [rdx + 27]
	LONG $0x2454930f; BYTE $0x0f   // setae    byte [rsp + 15]
	LONG $0x1c46b60f               // movzx    eax, byte [rsi + 28]
	WORD $0x423a; BYTE $0x1c       // cmp    al, byte [rdx + 28]
	LONG $0x2454930f; BYTE $0x10   // setae    byte [rsp + 16]
	LONG $0x1d46b60f               // movzx    eax, byte [rsi + 29]
	WORD $0x423a; BYTE $0x1d       // cmp    al, byte [rdx + 29]
	LONG $0x2454930f; BYTE $0x11   // setae    byte [rsp + 17]
	LONG $0x1e46b60f               // movzx    eax, byte [rsi + 30]
	WORD $0x423a; BYTE $0x1e       // cmp    al, byte [rdx + 30]
	LONG $0x2454930f; BYTE $0x12   // setae    byte [rsp + 18]
	LONG $0x1f46b60f               // movzx    eax, byte [rsi + 31]
	LONG $0x20c68348               // add    rsi, 32
	WORD $0x423a; BYTE $0x1f       // cmp    al, byte [rdx + 31]
	LONG $0xd0930f41               // setae    r8b
	WORD $0xc900                   // add    cl, cl
	LONG $0x28244c02               // add    cl, byte [rsp + 40]
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x244cb60f; BYTE $0x04   // movzx    ecx, byte [rsp + 4]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e7c041               // shl    r15b, 7
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	LONG $0x244cb60f; BYTE $0x14   // movzx    ecx, byte [rsp + 20]
	WORD $0xe1c0; BYTE $0x02       // shl    cl, 2
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	WORD $0x0040; BYTE $0xff       // add    dil, dil
	LONG $0x247c0240; BYTE $0x07   // add    dil, byte [rsp + 7]
	LONG $0x244cb60f; BYTE $0x15   // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03       // shl    cl, 3
	WORD $0xc108                   // or    cl, al
	WORD $0xc889                   // mov    eax, ecx
	LONG $0x02e2c041               // shl    r10b, 2
	WORD $0x0841; BYTE $0xfa       // or    r10b, dil
	LONG $0x244cb60f; BYTE $0x16   // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04       // shl    cl, 4
	WORD $0xc108                   // or    cl, al
	WORD $0xcf89                   // mov    edi, ecx
	LONG $0x03e3c041               // shl    r11b, 3
	WORD $0x0845; BYTE $0xd3       // or    r11b, r10b
	LONG $0x244cb60f; BYTE $0x17   // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05       // shl    cl, 5
	WORD $0x0840; BYTE $0xf9       // or    cl, dil
	LONG $0x04e6c041               // shl    r14b, 4
	WORD $0x0845; BYTE $0xde       // or    r14b, r11b
	LONG $0x2444b60f; BYTE $0x05   // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0x0844; BYTE $0xf0       // or    al, r14b
	LONG $0x247cb60f; BYTE $0x06   // movzx    edi, byte [rsp + 6]
	LONG $0x06e7c040               // shl    dil, 6
	WORD $0xe3c0; BYTE $0x07       // shl    bl, 7
	WORD $0x0840; BYTE $0xfb       // or    bl, dil
	WORD $0x0841; BYTE $0xcf       // or    r15b, cl
	WORD $0xc308                   // or    bl, al
	WORD $0x0045; BYTE $0xe4       // add    r12b, r12b
	LONG $0x24640244; BYTE $0x0d   // add    r12b, byte [rsp + 13]
	LONG $0x02e5c041               // shl    r13b, 2
	WORD $0x0845; BYTE $0xe5       // or    r13b, r12b
	LONG $0x24748b4c; BYTE $0x30   // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x08   // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0x0844; BYTE $0xe8       // or    al, r13b
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x09   // movzx    eax, byte [rsp + 9]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0a   // movzx    eax, byte [rsp + 10]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	WORD $0x8845; BYTE $0x3e       // mov    byte [r14], r15b
	LONG $0x244cb60f; BYTE $0x0b   // movzx    ecx, byte [rsp + 11]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e1c041               // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9       // or    r9b, cl
	LONG $0x015e8841               // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1       // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0c   // movzx    eax, byte [rsp + 12]
	WORD $0xc000                   // add    al, al
	LONG $0x13244402               // add    al, byte [rsp + 19]
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e   // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02       // shl    al, 2
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f   // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03       // shl    al, 3
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10   // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04       // shl    al, 4
	WORD $0xc808                   // or    al, cl
	WORD $0xc189                   // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x11   // movzx    eax, byte [rsp + 17]
	WORD $0xe0c0; BYTE $0x05       // shl    al, 5
	WORD $0xc808                   // or    al, cl
	LONG $0x244cb60f; BYTE $0x12   // movzx    ecx, byte [rsp + 18]
	WORD $0xe1c0; BYTE $0x06       // shl    cl, 6
	LONG $0x07e0c041               // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8       // or    r8b, cl
	WORD $0x0841; BYTE $0xc0       // or    r8b, al
	LONG $0x024e8845               // mov    byte [r14 + 2], r9b
	LONG $0x03468845               // mov    byte [r14 + 3], r8b
	LONG $0x20c28348               // add    rdx, 32
	LONG $0x04c68349               // add    r14, 4
	LONG $0x24448348; WORD $0xff20 // add    qword [rsp + 32], -1
	JNE  LBB9_63
	LONG $0x245c8b4c; BYTE $0x18   // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x38   // mov    r15, qword [rsp + 56]

LBB9_65:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_67:
	LONG $0x0e04b60f             // movzx    eax, byte [rsi + rcx]
	WORD $0x043a; BYTE $0x0a     // cmp    al, byte [rdx + rcx]
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x8948; BYTE $0xcb     // mov    rbx, rcx
	LONG $0x03ebc148             // shr    rbx, 3
	LONG $0x0cb60f45; BYTE $0x1e // movzx    r9d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x1e048841             // mov    byte [r14 + rbx], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_67
	JMP  LBB9_123

LBB9_90:
	LONG $0x1f7b8d4d         // lea    r15, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xfb490f4d         // cmovns    r15, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB9_94
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB9_92:
	WORD $0x0e8b                 // mov    ecx, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	WORD $0x0a3b                 // cmp    ecx, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0xd29d0f41             // setge    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x04b60f45; BYTE $0x3e // movzx    r8d, byte [r14 + rdi]
	WORD $0x3045; BYTE $0xc2     // xor    r10b, r8b
	QUAD $0x00000000fd0c8d44     // lea    r9d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc9     // sub    ecx, r9d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2044; BYTE $0xd3     // and    bl, r10b
	WORD $0x3044; BYTE $0xc3     // xor    bl, r8b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB9_92
	LONG $0x01c68349             // add    r14, 1

LBB9_94:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fb8349             // cmp    r11, 32
	JL   LBB9_98
	LONG $0x245c894c; BYTE $0x18 // mov    qword [rsp + 24], r11
	LONG $0x247c894c; BYTE $0x40 // mov    qword [rsp + 64], r15
	LONG $0x247c894c; BYTE $0x38 // mov    qword [rsp + 56], r15

LBB9_96:
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	WORD $0x068b                               // mov    eax, dword [rsi]
	WORD $0x4e8b; BYTE $0x04                   // mov    ecx, dword [rsi + 4]
	WORD $0x023b                               // cmp    eax, dword [rdx]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	WORD $0x4a3b; BYTE $0x04                   // cmp    ecx, dword [rdx + 4]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	WORD $0x468b; BYTE $0x08                   // mov    eax, dword [rsi + 8]
	WORD $0x423b; BYTE $0x08                   // cmp    eax, dword [rdx + 8]
	LONG $0x24549d0f; BYTE $0x14               // setge    byte [rsp + 20]
	WORD $0x468b; BYTE $0x0c                   // mov    eax, dword [rsi + 12]
	WORD $0x423b; BYTE $0x0c                   // cmp    eax, dword [rdx + 12]
	LONG $0x24549d0f; BYTE $0x15               // setge    byte [rsp + 21]
	WORD $0x468b; BYTE $0x10                   // mov    eax, dword [rsi + 16]
	WORD $0x423b; BYTE $0x10                   // cmp    eax, dword [rdx + 16]
	LONG $0x24549d0f; BYTE $0x16               // setge    byte [rsp + 22]
	WORD $0x468b; BYTE $0x14                   // mov    eax, dword [rsi + 20]
	WORD $0x423b; BYTE $0x14                   // cmp    eax, dword [rdx + 20]
	LONG $0x24549d0f; BYTE $0x17               // setge    byte [rsp + 23]
	WORD $0x468b; BYTE $0x18                   // mov    eax, dword [rsi + 24]
	WORD $0x423b; BYTE $0x18                   // cmp    eax, dword [rdx + 24]
	LONG $0x24549d0f; BYTE $0x04               // setge    byte [rsp + 4]
	WORD $0x468b; BYTE $0x1c                   // mov    eax, dword [rsi + 28]
	WORD $0x423b; BYTE $0x1c                   // cmp    eax, dword [rdx + 28]
	LONG $0xd59d0f41                           // setge    r13b
	WORD $0x468b; BYTE $0x20                   // mov    eax, dword [rsi + 32]
	WORD $0x423b; BYTE $0x20                   // cmp    eax, dword [rdx + 32]
	LONG $0x24549d0f; BYTE $0x09               // setge    byte [rsp + 9]
	WORD $0x468b; BYTE $0x24                   // mov    eax, dword [rsi + 36]
	WORD $0x423b; BYTE $0x24                   // cmp    eax, dword [rdx + 36]
	LONG $0xd09d0f41                           // setge    r8b
	WORD $0x468b; BYTE $0x28                   // mov    eax, dword [rsi + 40]
	WORD $0x423b; BYTE $0x28                   // cmp    eax, dword [rdx + 40]
	LONG $0xd39d0f41                           // setge    r11b
	WORD $0x468b; BYTE $0x2c                   // mov    eax, dword [rsi + 44]
	WORD $0x423b; BYTE $0x2c                   // cmp    eax, dword [rdx + 44]
	LONG $0xd79d0f41                           // setge    r15b
	WORD $0x468b; BYTE $0x30                   // mov    eax, dword [rsi + 48]
	WORD $0x423b; BYTE $0x30                   // cmp    eax, dword [rdx + 48]
	LONG $0x24549d0f; BYTE $0x05               // setge    byte [rsp + 5]
	WORD $0x468b; BYTE $0x34                   // mov    eax, dword [rsi + 52]
	WORD $0x423b; BYTE $0x34                   // cmp    eax, dword [rdx + 52]
	LONG $0x24549d0f; BYTE $0x06               // setge    byte [rsp + 6]
	WORD $0x468b; BYTE $0x38                   // mov    eax, dword [rsi + 56]
	WORD $0x423b; BYTE $0x38                   // cmp    eax, dword [rdx + 56]
	LONG $0x24549d0f; BYTE $0x07               // setge    byte [rsp + 7]
	WORD $0x468b; BYTE $0x3c                   // mov    eax, dword [rsi + 60]
	WORD $0x423b; BYTE $0x3c                   // cmp    eax, dword [rdx + 60]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	WORD $0x468b; BYTE $0x40                   // mov    eax, dword [rsi + 64]
	WORD $0x4e8b; BYTE $0x44                   // mov    ecx, dword [rsi + 68]
	WORD $0x423b; BYTE $0x40                   // cmp    eax, dword [rdx + 64]
	WORD $0x468b; BYTE $0x48                   // mov    eax, dword [rsi + 72]
	LONG $0x24549d0f; BYTE $0x0a               // setge    byte [rsp + 10]
	WORD $0x4a3b; BYTE $0x44                   // cmp    ecx, dword [rdx + 68]
	WORD $0x4e8b; BYTE $0x4c                   // mov    ecx, dword [rsi + 76]
	LONG $0xd29d0f41                           // setge    r10b
	WORD $0x423b; BYTE $0x48                   // cmp    eax, dword [rdx + 72]
	WORD $0x468b; BYTE $0x50                   // mov    eax, dword [rsi + 80]
	LONG $0xd69d0f41                           // setge    r14b
	WORD $0x4a3b; BYTE $0x4c                   // cmp    ecx, dword [rdx + 76]
	WORD $0x4e8b; BYTE $0x54                   // mov    ecx, dword [rsi + 84]
	LONG $0xd49d0f41                           // setge    r12b
	WORD $0x423b; BYTE $0x50                   // cmp    eax, dword [rdx + 80]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	WORD $0x4a3b; BYTE $0x54                   // cmp    ecx, dword [rdx + 84]
	WORD $0x468b; BYTE $0x58                   // mov    eax, dword [rsi + 88]
	LONG $0x24549d0f; BYTE $0x0b               // setge    byte [rsp + 11]
	WORD $0x423b; BYTE $0x58                   // cmp    eax, dword [rdx + 88]
	WORD $0x468b; BYTE $0x5c                   // mov    eax, dword [rsi + 92]
	LONG $0x24549d0f; BYTE $0x0c               // setge    byte [rsp + 12]
	WORD $0x423b; BYTE $0x5c                   // cmp    eax, dword [rdx + 92]
	WORD $0x468b; BYTE $0x60                   // mov    eax, dword [rsi + 96]
	LONG $0xd19d0f41                           // setge    r9b
	WORD $0x423b; BYTE $0x60                   // cmp    eax, dword [rdx + 96]
	WORD $0x468b; BYTE $0x64                   // mov    eax, dword [rsi + 100]
	LONG $0x24549d0f; BYTE $0x13               // setge    byte [rsp + 19]
	WORD $0x423b; BYTE $0x64                   // cmp    eax, dword [rdx + 100]
	WORD $0x468b; BYTE $0x68                   // mov    eax, dword [rsi + 104]
	LONG $0x24549d0f; BYTE $0x0d               // setge    byte [rsp + 13]
	WORD $0x423b; BYTE $0x68                   // cmp    eax, dword [rdx + 104]
	WORD $0x468b; BYTE $0x6c                   // mov    eax, dword [rsi + 108]
	LONG $0x24549d0f; BYTE $0x0e               // setge    byte [rsp + 14]
	WORD $0x423b; BYTE $0x6c                   // cmp    eax, dword [rdx + 108]
	WORD $0x468b; BYTE $0x70                   // mov    eax, dword [rsi + 112]
	LONG $0x24549d0f; BYTE $0x0f               // setge    byte [rsp + 15]
	WORD $0x423b; BYTE $0x70                   // cmp    eax, dword [rdx + 112]
	WORD $0x468b; BYTE $0x74                   // mov    eax, dword [rsi + 116]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	WORD $0x423b; BYTE $0x74                   // cmp    eax, dword [rdx + 116]
	WORD $0x468b; BYTE $0x78                   // mov    eax, dword [rsi + 120]
	LONG $0x24549d0f; BYTE $0x12               // setge    byte [rsp + 18]
	WORD $0x423b; BYTE $0x78                   // cmp    eax, dword [rdx + 120]
	WORD $0x468b; BYTE $0x7c                   // mov    eax, dword [rsi + 124]
	LONG $0x24549d0f; BYTE $0x11               // setge    byte [rsp + 17]
	LONG $0x80ee8348                           // sub    rsi, -128
	WORD $0x423b; BYTE $0x7c                   // cmp    eax, dword [rdx + 124]
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xc000                               // add    al, al
	LONG $0x28244402                           // add    al, byte [rsp + 40]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x04               // movzx    eax, byte [rsp + 4]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	LONG $0x2444b60f; BYTE $0x14               // movzx    eax, byte [rsp + 20]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	LONG $0x24440244; BYTE $0x09               // add    r8b, byte [rsp + 9]
	LONG $0x244cb60f; BYTE $0x15               // movzx    ecx, byte [rsp + 21]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xc108                               // or    cl, al
	WORD $0xc889                               // mov    eax, ecx
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xc3                   // or    r11b, r8b
	LONG $0x244cb60f; BYTE $0x16               // movzx    ecx, byte [rsp + 22]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	LONG $0x244cb60f; BYTE $0x17               // movzx    ecx, byte [rsp + 23]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x2444b60f; BYTE $0x05               // movzx    eax, byte [rsp + 5]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	LONG $0x2444b60f; BYTE $0x06               // movzx    eax, byte [rsp + 6]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	LONG $0x44b60f44; WORD $0x0724             // movzx    r8d, byte [rsp + 7]
	LONG $0x06e0c041                           // shl    r8b, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0844; BYTE $0xc3                   // or    bl, r8b
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	LONG $0x24540244; BYTE $0x0a               // add    r10b, byte [rsp + 10]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x24748b4c; BYTE $0x30               // mov    r14, qword [rsp + 48]
	LONG $0x2444b60f; BYTE $0x0b               // movzx    eax, byte [rsp + 11]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0x8845; BYTE $0x2e                   // mov    byte [r14], r13b
	LONG $0x244cb60f; BYTE $0x0c               // movzx    ecx, byte [rsp + 12]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc9                   // or    r9b, cl
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x2444b60f; BYTE $0x0d               // movzx    eax, byte [rsp + 13]
	WORD $0xc000                               // add    al, al
	LONG $0x13244402                           // add    al, byte [rsp + 19]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0e               // movzx    eax, byte [rsp + 14]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x0f               // movzx    eax, byte [rsp + 15]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x12               // movzx    eax, byte [rsp + 18]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x11               // movzx    ecx, byte [rsp + 17]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	LONG $0x024e8845                           // mov    byte [r14 + 2], r9b
	LONG $0x037e8841                           // mov    byte [r14 + 3], dil
	LONG $0x80c28148; WORD $0x0000; BYTE $0x00 // add    rdx, 128
	LONG $0x04c68349                           // add    r14, 4
	LONG $0x24448348; WORD $0xff38             // add    qword [rsp + 56], -1
	JNE  LBB9_96
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	LONG $0x247c8b4c; BYTE $0x40               // mov    r15, qword [rsp + 64]

LBB9_98:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xdf // cmp    r15, r11
	JGE  LBB9_123
	WORD $0x294d; BYTE $0xfb // sub    r11, r15
	WORD $0xc931             // xor    ecx, ecx

LBB9_100:
	LONG $0x01418d4c             // lea    r8, [rcx + 1]
	WORD $0x3c8b; BYTE $0x8e     // mov    edi, dword [rsi + 4*rcx]
	WORD $0x3c3b; BYTE $0x8a     // cmp    edi, dword [rdx + 4*rcx]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xcf     // mov    rdi, rcx
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xe180; BYTE $0x07     // and    cl, 7
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x894c; BYTE $0xc1     // mov    rcx, r8
	WORD $0x394d; BYTE $0xc3     // cmp    r11, r8
	JNE  LBB9_100

LBB9_123:
	SUBQ $8, SP
	RET

DATA LCDATA7<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA7<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA7<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA7<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA7<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA7<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA7<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA7<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA7<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA7<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA7<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA7<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA7<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA7<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA7<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA7<>+0x080(SB)/8, $0x0202020202020202
DATA LCDATA7<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x090(SB)/8, $0x0404040404040404
DATA LCDATA7<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0a0(SB)/8, $0x0808080808080808
DATA LCDATA7<>+0x0a8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0b0(SB)/8, $0x1010101010101010
DATA LCDATA7<>+0x0b8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0c0(SB)/8, $0x2020202020202020
DATA LCDATA7<>+0x0c8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0d0(SB)/8, $0x4040404040404040
DATA LCDATA7<>+0x0d8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0e0(SB)/8, $0x8080808080808080
DATA LCDATA7<>+0x0e8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x0f0(SB)/8, $0x0f070e060d050c04
DATA LCDATA7<>+0x0f8(SB)/8, $0x0000000000000000
DATA LCDATA7<>+0x100(SB)/8, $0x0202020202020202
DATA LCDATA7<>+0x108(SB)/8, $0x0202020202020202
DATA LCDATA7<>+0x110(SB)/8, $0x0404040404040404
DATA LCDATA7<>+0x118(SB)/8, $0x0404040404040404
DATA LCDATA7<>+0x120(SB)/8, $0x0808080808080808
DATA LCDATA7<>+0x128(SB)/8, $0x0808080808080808
DATA LCDATA7<>+0x130(SB)/8, $0x1010101010101010
DATA LCDATA7<>+0x138(SB)/8, $0x1010101010101010
DATA LCDATA7<>+0x140(SB)/8, $0x2020202020202020
DATA LCDATA7<>+0x148(SB)/8, $0x2020202020202020
DATA LCDATA7<>+0x150(SB)/8, $0x4040404040404040
DATA LCDATA7<>+0x158(SB)/8, $0x4040404040404040
DATA LCDATA7<>+0x160(SB)/8, $0xffffffffffffffff
DATA LCDATA7<>+0x168(SB)/8, $0xffffffffffffffff
GLOBL LCDATA7<>(SB), 8, $368

TEXT ·_comparison_greater_equal_arr_scalar_sse4(SB), $520-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 496(SP)
	LEAQ LCDATA7<>(SB), BP

	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	WORD $0x8949; BYTE $0xce // mov    r14, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB10_26
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB10_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB10_99
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB10_114
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB10_201
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_17
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_15:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	LONG $0x000000ba; BYTE $0x00               // mov    edx, 0
	WORD $0xd280; BYTE $0xff                   // adc    dl, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB10_15
	LONG $0x01c68349                           // add    r14, 1

LBB10_17:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_21
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000170249c894c     // mov    qword [rsp + 368], r11
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11

LBB10_19:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000f02494930f                   // setae    byte [rsp + 240]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd7930f40                           // setae    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000f024940244                   // add    r10b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000015024bc0240                   // add    dil, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x0000012024bcb60f                   // movzx    edi, byte [rsp + 288]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000001302484b60f                   // movzx    eax, byte [rsp + 304]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000e02484b60f                   // movzx    eax, byte [rsp + 224]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_19
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000170249c8b4c                   // mov    r11, qword [rsp + 368]

LBB10_21:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_137
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_24

LBB10_26:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB10_27
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB10_157
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB10_172
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB10_201
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x02100ff2         // movsd    xmm0, qword [rdx]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_49
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_47:
	LONG $0x0e100ff2             // movsd    xmm1, qword [rsi]
	LONG $0x08c68348             // add    rsi, 8
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	LONG $0x000000ba; BYTE $0x00 // mov    edx, 0
	WORD $0xd280; BYTE $0xff     // adc    dl, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB10_47
	LONG $0x01c68349             // add    r14, 1

LBB10_49:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_53
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11
	QUAD $0x000000f0249c894c     // mov    qword [rsp + 240], r11

LBB10_51:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	LONG $0x0e100ff2                           // movsd    xmm1, qword [rsi]
	LONG $0x56100ff2; BYTE $0x08               // movsd    xmm2, qword [rsi + 8]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	LONG $0x4e100ff2; BYTE $0x10               // movsd    xmm1, qword [rsi + 16]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd7930f40                           // setae    dil
	LONG $0x4e100ff2; BYTE $0x18               // movsd    xmm1, qword [rsi + 24]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x4e100ff2; BYTE $0x20               // movsd    xmm1, qword [rsi + 32]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x4e100ff2; BYTE $0x28               // movsd    xmm1, qword [rsi + 40]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x4e100ff2; BYTE $0x30               // movsd    xmm1, qword [rsi + 48]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x4e100ff2; BYTE $0x38               // movsd    xmm1, qword [rsi + 56]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x4e100ff2; BYTE $0x40               // movsd    xmm1, qword [rsi + 64]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x4e100ff2; BYTE $0x48               // movsd    xmm1, qword [rsi + 72]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x4e100ff2; BYTE $0x50               // movsd    xmm1, qword [rsi + 80]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x4e100ff2; BYTE $0x58               // movsd    xmm1, qword [rsi + 88]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x4e100ff2; BYTE $0x60               // movsd    xmm1, qword [rsi + 96]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x4e100ff2; BYTE $0x68               // movsd    xmm1, qword [rsi + 104]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x4e100ff2; BYTE $0x70               // movsd    xmm1, qword [rsi + 112]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x4e100ff2; BYTE $0x78               // movsd    xmm1, qword [rsi + 120]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	QUAD $0x000000808e100ff2                   // movsd    xmm1, qword [rsi + 128]
	QUAD $0x0000008896100ff2                   // movsd    xmm2, qword [rsi + 136]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000908e100ff2                   // movsd    xmm1, qword [rsi + 144]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x0000009896100ff2                   // movsd    xmm2, qword [rsi + 152]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000a08e100ff2                   // movsd    xmm1, qword [rsi + 160]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000a896100ff2                   // movsd    xmm2, qword [rsi + 168]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000b08e100ff2                   // movsd    xmm1, qword [rsi + 176]
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000b896100ff2                   // movsd    xmm2, qword [rsi + 184]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000c08e100ff2                   // movsd    xmm1, qword [rsi + 192]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000c896100ff2                   // movsd    xmm2, qword [rsi + 200]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000d08e100ff2                   // movsd    xmm1, qword [rsi + 208]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000d896100ff2                   // movsd    xmm2, qword [rsi + 216]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000e08e100ff2                   // movsd    xmm1, qword [rsi + 224]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000e896100ff2                   // movsd    xmm2, qword [rsi + 232]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	QUAD $0x000000f08e100ff2                   // movsd    xmm1, qword [rsi + 240]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	QUAD $0x000000f896100ff2                   // movsd    xmm2, qword [rsi + 248]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0xc82e0f66                           // ucomisd    xmm1, xmm0
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0xd02e0f66                           // ucomisd    xmm2, xmm0
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	WORD $0xd200                               // add    dl, dl
	LONG $0x20249402; WORD $0x0001; BYTE $0x00 // add    dl, byte [rsp + 288]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	LONG $0x03e0c041                           // shl    r8b, 3
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x04e1c041                           // shl    r9b, 4
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000001102494b60f                   // movzx    edx, byte [rsp + 272]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0844; BYTE $0xca                   // or    dl, r9b
	WORD $0xd789                               // mov    edi, edx
	QUAD $0x0001302484b60f44; BYTE $0x00       // movzx    r8d, byte [rsp + 304]
	LONG $0x06e0c041                           // shl    r8b, 6
	QUAD $0x000001502494b60f                   // movzx    edx, byte [rsp + 336]
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0x0844; BYTE $0xc2                   // or    dl, r8b
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000c024940244                   // add    r10b, byte [rsp + 192]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0844; BYTE $0xd3                   // or    bl, r10b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x0840; BYTE $0xfa                   // or    dl, dil
	QUAD $0x000000d0249cb60f                   // movzx    ebx, byte [rsp + 208]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0xc308                               // or    bl, al
	WORD $0xdf89                               // mov    edi, ebx
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	QUAD $0x000000e0249cb60f                   // movzx    ebx, byte [rsp + 224]
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x00000090249c0244                   // add    r11b, byte [rsp + 144]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xfb                   // or    bl, dil
	LONG $0x247cb60f; BYTE $0x70               // movzx    edi, byte [rsp + 112]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xfd                   // or    r13b, dil
	WORD $0x8841; BYTE $0x16                   // mov    byte [r14], dl
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd008                               // or    al, dl
	LONG $0x2454b60f; BYTE $0x20               // movzx    edx, byte [rsp + 32]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x015e8841                           // mov    byte [r14 + 1], bl
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	LONG $0x026e8845                           // mov    byte [r14 + 2], r13b
	WORD $0xd108                               // or    cl, dl
	LONG $0x034e8841                           // mov    byte [r14 + 3], cl
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB10_51
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000140249c8b4c                   // mov    r11, qword [rsp + 320]

LBB10_53:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_195
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_197

LBB10_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB10_56
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB10_201
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_6:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	WORD $0x9d0f; BYTE $0xd2     // setge    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB10_6
	LONG $0x01c68349             // add    r14, 1

LBB10_8:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_9
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x245c8844; BYTE $0x08 // mov    byte [rsp + 8], r11b
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x000001b024bc894c     // mov    qword [rsp + 432], r15
	JB   LBB10_82
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB10_85
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB10_85

LBB10_82:
	WORD $0xc031             // xor    eax, eax
	QUAD $0x000000f024848948 // mov    qword [rsp + 240], rax
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14

LBB10_88:
	QUAD $0x000000f024bc2b4c // sub    r15, qword [rsp + 240]
	QUAD $0x0000017024bc894c // mov    qword [rsp + 368], r15

LBB10_89:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x0000014024949d0f                   // setge    byte [rsp + 320]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd69d0f40                           // setge    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x0000011024949d0f                   // setge    byte [rsp + 272]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000f024949d0f                   // setge    byte [rsp + 240]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x0000015024949d0f                   // setge    byte [rsp + 336]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd59d0f41                           // setge    r13b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	QUAD $0x0000012024949d0f                   // setge    byte [rsp + 288]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	QUAD $0x0000013024949d0f                   // setge    byte [rsp + 304]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	QUAD $0x0000010024949d0f                   // setge    byte [rsp + 256]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	QUAD $0x000000c024949d0f                   // setge    byte [rsp + 192]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x0000016024949d0f                   // setge    byte [rsp + 352]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x0000014024b40240                   // add    sil, byte [rsp + 320]
	QUAD $0x000000f02484b60f                   // movzx    eax, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0x50249402; WORD $0x0001; BYTE $0x00 // add    dl, byte [rsp + 336]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0824             // movzx    r15d, byte [rsp + 8]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	QUAD $0x0000012024b4b60f                   // movzx    esi, byte [rsp + 288]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	QUAD $0x000001002494b60f                   // movzx    edx, byte [rsp + 256]
	WORD $0xd200                               // add    dl, dl
	LONG $0x30249402; WORD $0x0001; BYTE $0x00 // add    dl, byte [rsp + 304]
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000d02494b60f                   // movzx    edx, byte [rsp + 208]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000e02494b60f                   // movzx    edx, byte [rsp + 224]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000a02494b60f                   // movzx    edx, byte [rsp + 160]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000c02494b60f                   // movzx    edx, byte [rsp + 192]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x0000009024948b48                   // mov    rdx, qword [rsp + 144]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	QUAD $0x000000b024bcb60f                   // movzx    edi, byte [rsp + 176]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xc000                               // add    al, al
	LONG $0x80248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 128]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000016024b4b60f                   // movzx    esi, byte [rsp + 352]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	QUAD $0x0000009024948948                   // mov    qword [rsp + 144], rdx
	QUAD $0x0000017024848348; BYTE $0xff       // add    qword [rsp + 368], -1
	JNE  LBB10_89
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x000001b024bc8b4c                   // mov    r15, qword [rsp + 432]
	JMP  LBB10_91

LBB10_27:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB10_139
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB10_201
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_33
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_31:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	LONG $0x000000ba; BYTE $0x00               // mov    edx, 0
	WORD $0xd280; BYTE $0xff                   // adc    dl, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB10_31
	LONG $0x01c68349                           // add    r14, 1

LBB10_33:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_37
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000170249c894c     // mov    qword [rsp + 368], r11
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11

LBB10_35:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000f02494930f                   // setae    byte [rsp + 240]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd7930f40                           // setae    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd7930f41                           // setae    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000f024940244                   // add    r10b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000015024bc0240                   // add    dil, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x0000012024bcb60f                   // movzx    edi, byte [rsp + 288]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000001302484b60f                   // movzx    eax, byte [rsp + 304]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000e02484b60f                   // movzx    eax, byte [rsp + 224]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_35
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000170249c8b4c                   // mov    r11, qword [rsp + 368]

LBB10_37:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_155
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_40

LBB10_56:
	WORD $0x8a44; BYTE $0x1a // mov    r11b, byte [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_60
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_58:
	WORD $0x3844; BYTE $0x1e     // cmp    byte [rsi], r11b
	LONG $0x01768d48             // lea    rsi, [rsi + 1]
	LONG $0x000000ba; BYTE $0x00 // mov    edx, 0
	WORD $0xd280; BYTE $0xff     // adc    dl, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB10_58
	LONG $0x01c68349             // add    r14, 1

LBB10_60:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_61
	LONG $0x10ff8349             // cmp    r15, 16
	LONG $0x245c8844; BYTE $0x08 // mov    byte [rsp + 8], r11b
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x000001d024bc894c     // mov    qword [rsp + 464], r15
	JB   LBB10_63
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x05e0c148             // shl    rax, 5
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB10_66
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xc6     // cmp    rsi, rax
	JAE  LBB10_66

LBB10_63:
	WORD $0xc031             // xor    eax, eax
	QUAD $0x000001a024848948 // mov    qword [rsp + 416], rax
	QUAD $0x000000e024b4894c // mov    qword [rsp + 224], r14

LBB10_69:
	QUAD $0x000001a024bc2b4c // sub    r15, qword [rsp + 416]
	QUAD $0x0000017024bc894c // mov    qword [rsp + 368], r15

LBB10_70:
	WORD $0x8948; BYTE $0xf1                   // mov    rcx, rsi
	WORD $0x3844; BYTE $0x1e                   // cmp    byte [rsi], r11b
	QUAD $0x000001402494930f                   // setae    byte [rsp + 320]
	LONG $0x015e3844                           // cmp    byte [rsi + 1], r11b
	LONG $0xd6930f40                           // setae    sil
	LONG $0x02593844                           // cmp    byte [rcx + 2], r11b
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x03                   // cmp    byte [rcx + 3], al
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x04                   // cmp    byte [rcx + 4], al
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x05                   // cmp    byte [rcx + 5], al
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x06                   // cmp    byte [rcx + 6], al
	QUAD $0x000000f02494930f                   // setae    byte [rsp + 240]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x07                   // cmp    byte [rcx + 7], al
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x08                   // cmp    byte [rcx + 8], al
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x09                   // cmp    byte [rcx + 9], al
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0a                   // cmp    byte [rcx + 10], al
	LONG $0xd7930f40                           // setae    dil
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0b                   // cmp    byte [rcx + 11], al
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0c                   // cmp    byte [rcx + 12], al
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0d                   // cmp    byte [rcx + 13], al
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0e                   // cmp    byte [rcx + 14], al
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0x4138; BYTE $0x0f                   // cmp    byte [rcx + 15], al
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x10                   // cmp    byte [rcx + 16], bl
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x11                   // cmp    byte [rcx + 17], bl
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x12                   // cmp    byte [rcx + 18], bl
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x13                   // cmp    byte [rcx + 19], bl
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x14                   // cmp    byte [rcx + 20], bl
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x15                   // cmp    byte [rcx + 21], bl
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x16                   // cmp    byte [rcx + 22], bl
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x17                   // cmp    byte [rcx + 23], bl
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x18                   // cmp    byte [rcx + 24], bl
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x19                   // cmp    byte [rcx + 25], bl
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1a                   // cmp    byte [rcx + 26], bl
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1b                   // cmp    byte [rcx + 27], bl
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1c                   // cmp    byte [rcx + 28], bl
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1d                   // cmp    byte [rcx + 29], bl
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1e                   // cmp    byte [rcx + 30], bl
	QUAD $0x000001602494930f                   // setae    byte [rsp + 352]
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0x5938; BYTE $0x1f                   // cmp    byte [rcx + 31], bl
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	QUAD $0x0000014024b40240                   // add    sil, byte [rsp + 320]
	QUAD $0x000000f02484b60f                   // movzx    eax, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e1c041                           // shl    r9b, 7
	WORD $0x0841; BYTE $0xc1                   // or    r9b, al
	LONG $0x02e7c041                           // shl    r15b, 2
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	WORD $0xd200                               // add    dl, dl
	LONG $0x50249402; WORD $0x0001; BYTE $0x00 // add    dl, byte [rsp + 336]
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x7cb60f44; WORD $0x0824             // movzx    r15d, byte [rsp + 8]
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0841; BYTE $0xfa                   // or    r10b, dil
	QUAD $0x000000802494b60f                   // movzx    edx, byte [rsp + 128]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0xc208                               // or    dl, al
	LONG $0x04e6c041                           // shl    r14b, 4
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x05e5c041                           // shl    r13b, 5
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	QUAD $0x0000012024b4b60f                   // movzx    esi, byte [rsp + 288]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xf0                   // or    r8b, sil
	WORD $0x0841; BYTE $0xd1                   // or    r9b, dl
	WORD $0x0845; BYTE $0xe8                   // or    r8b, r13b
	QUAD $0x000001002494b60f                   // movzx    edx, byte [rsp + 256]
	WORD $0xd200                               // add    dl, dl
	LONG $0x30249402; WORD $0x0001; BYTE $0x00 // add    dl, byte [rsp + 304]
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000d02494b60f                   // movzx    edx, byte [rsp + 208]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000a02494b60f                   // movzx    edx, byte [rsp + 160]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000b02494b60f                   // movzx    edx, byte [rsp + 176]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	QUAD $0x000000e024948b48                   // mov    rdx, qword [rsp + 224]
	WORD $0x8844; BYTE $0x0a                   // mov    byte [rdx], r9b
	QUAD $0x000000c024bcb60f                   // movzx    edi, byte [rsp + 192]
	LONG $0x06e7c040                           // shl    dil, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xfb                   // or    r11b, dil
	LONG $0x01428844                           // mov    byte [rdx + 1], r8b
	WORD $0x0841; BYTE $0xf3                   // or    r11b, sil
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0xc689                               // mov    esi, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	QUAD $0x0000016024b4b60f                   // movzx    esi, byte [rsp + 352]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xc308                               // or    bl, al
	LONG $0x025a8844                           // mov    byte [rdx + 2], r11b
	WORD $0x8945; BYTE $0xfb                   // mov    r11d, r15d
	WORD $0x5a88; BYTE $0x03                   // mov    byte [rdx + 3], bl
	LONG $0x20718d48                           // lea    rsi, [rcx + 32]
	LONG $0x04c28348                           // add    rdx, 4
	QUAD $0x000000e024948948                   // mov    qword [rsp + 224], rdx
	QUAD $0x0000017024848348; BYTE $0xff       // add    qword [rsp + 368], -1
	JNE  LBB10_70
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x000001d024bc8b4c                   // mov    r15, qword [rsp + 464]
	JMP  LBB10_72

LBB10_139:
	WORD $0x8b44; BYTE $0x2a // mov    r13d, dword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_143
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_141:
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	LONG $0x04768d48                           // lea    rsi, [rsi + 4]
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB10_141
	LONG $0x01c68349                           // add    r14, 1

LBB10_143:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_147
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000170249c894c     // mov    qword [rsp + 368], r11
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11

LBB10_145:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	WORD $0x3944; BYTE $0x2e                   // cmp    dword [rsi], r13d
	QUAD $0x000000f024949d0f                   // setge    byte [rsp + 240]
	LONG $0x046e3944                           // cmp    dword [rsi + 4], r13d
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x086e3944                           // cmp    dword [rsi + 8], r13d
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x0c6e3944                           // cmp    dword [rsi + 12], r13d
	QUAD $0x0000011024949d0f                   // setge    byte [rsp + 272]
	LONG $0x106e3944                           // cmp    dword [rsi + 16], r13d
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	LONG $0x146e3944                           // cmp    dword [rsi + 20], r13d
	QUAD $0x000000c024949d0f                   // setge    byte [rsp + 192]
	LONG $0x186e3944                           // cmp    dword [rsi + 24], r13d
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	LONG $0x1c6e3944                           // cmp    dword [rsi + 28], r13d
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x206e3944                           // cmp    dword [rsi + 32], r13d
	QUAD $0x0000015024949d0f                   // setge    byte [rsp + 336]
	LONG $0x246e3944                           // cmp    dword [rsi + 36], r13d
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x286e3944                           // cmp    dword [rsi + 40], r13d
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x2c6e3944                           // cmp    dword [rsi + 44], r13d
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x306e3944                           // cmp    dword [rsi + 48], r13d
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x346e3944                           // cmp    dword [rsi + 52], r13d
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0x386e3944                           // cmp    dword [rsi + 56], r13d
	QUAD $0x0000012024949d0f                   // setge    byte [rsp + 288]
	LONG $0x3c6e3944                           // cmp    dword [rsi + 60], r13d
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x406e3944                           // cmp    dword [rsi + 64], r13d
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x446e3944                           // cmp    dword [rsi + 68], r13d
	QUAD $0x0000013024949d0f                   // setge    byte [rsp + 304]
	LONG $0x486e3944                           // cmp    dword [rsi + 72], r13d
	QUAD $0x0000010024949d0f                   // setge    byte [rsp + 256]
	LONG $0x4c6e3944                           // cmp    dword [rsi + 76], r13d
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x506e3944                           // cmp    dword [rsi + 80], r13d
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0x546e3944                           // cmp    dword [rsi + 84], r13d
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x586e3944                           // cmp    dword [rsi + 88], r13d
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x5c6e3944                           // cmp    dword [rsi + 92], r13d
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x606e3944                           // cmp    dword [rsi + 96], r13d
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x646e3944                           // cmp    dword [rsi + 100], r13d
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	LONG $0x686e3944                           // cmp    dword [rsi + 104], r13d
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x6c6e3944                           // cmp    dword [rsi + 108], r13d
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x706e3944                           // cmp    dword [rsi + 112], r13d
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x746e3944                           // cmp    dword [rsi + 116], r13d
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x786e3944                           // cmp    dword [rsi + 120], r13d
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0x7c6e3944                           // cmp    dword [rsi + 124], r13d
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000f024940244                   // add    r10b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000015024bc0240                   // add    dil, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x0000012024bcb60f                   // movzx    edi, byte [rsp + 288]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000001302484b60f                   // movzx    eax, byte [rsp + 304]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000e02484b60f                   // movzx    eax, byte [rsp + 224]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x80c68148; WORD $0x0000; BYTE $0x00 // add    rsi, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_145
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000170249c8b4c                   // mov    r11, qword [rsp + 368]

LBB10_147:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_153
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_150

LBB10_99:
	LONG $0x2ab70f44         // movzx    r13d, word [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_103
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_101:
	LONG $0x2e394466                           // cmp    word [rsi], r13w
	LONG $0x02768d48                           // lea    rsi, [rsi + 2]
	LONG $0x000000ba; BYTE $0x00               // mov    edx, 0
	WORD $0xd280; BYTE $0xff                   // adc    dl, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB10_101
	LONG $0x01c68349                           // add    r14, 1

LBB10_103:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_107
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000170249c894c     // mov    qword [rsp + 368], r11
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11

LBB10_105:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	LONG $0x2e394466                           // cmp    word [rsi], r13w
	QUAD $0x000000f02494930f                   // setae    byte [rsp + 240]
	LONG $0x6e394466; BYTE $0x02               // cmp    word [rsi + 2], r13w
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x6e394466; BYTE $0x04               // cmp    word [rsi + 4], r13w
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x6e394466; BYTE $0x06               // cmp    word [rsi + 6], r13w
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x6e394466; BYTE $0x08               // cmp    word [rsi + 8], r13w
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x6e394466; BYTE $0x0a               // cmp    word [rsi + 10], r13w
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x6e394466; BYTE $0x0c               // cmp    word [rsi + 12], r13w
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x6e394466; BYTE $0x0e               // cmp    word [rsi + 14], r13w
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x6e394466; BYTE $0x10               // cmp    word [rsi + 16], r13w
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x6e394466; BYTE $0x12               // cmp    word [rsi + 18], r13w
	LONG $0xd7930f40                           // setae    dil
	LONG $0x6e394466; BYTE $0x14               // cmp    word [rsi + 20], r13w
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x6e394466; BYTE $0x16               // cmp    word [rsi + 22], r13w
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x6e394466; BYTE $0x18               // cmp    word [rsi + 24], r13w
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x6e394466; BYTE $0x1a               // cmp    word [rsi + 26], r13w
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x6e394466; BYTE $0x1c               // cmp    word [rsi + 28], r13w
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0x6e394466; BYTE $0x1e               // cmp    word [rsi + 30], r13w
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x6e394466; BYTE $0x20               // cmp    word [rsi + 32], r13w
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x6e394466; BYTE $0x22               // cmp    word [rsi + 34], r13w
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x6e394466; BYTE $0x24               // cmp    word [rsi + 36], r13w
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0x6e394466; BYTE $0x26               // cmp    word [rsi + 38], r13w
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x6e394466; BYTE $0x28               // cmp    word [rsi + 40], r13w
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x6e394466; BYTE $0x2a               // cmp    word [rsi + 42], r13w
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x6e394466; BYTE $0x2c               // cmp    word [rsi + 44], r13w
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x6e394466; BYTE $0x2e               // cmp    word [rsi + 46], r13w
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x6e394466; BYTE $0x30               // cmp    word [rsi + 48], r13w
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x6e394466; BYTE $0x32               // cmp    word [rsi + 50], r13w
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0x6e394466; BYTE $0x34               // cmp    word [rsi + 52], r13w
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x6e394466; BYTE $0x36               // cmp    word [rsi + 54], r13w
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x6e394466; BYTE $0x38               // cmp    word [rsi + 56], r13w
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x6e394466; BYTE $0x3a               // cmp    word [rsi + 58], r13w
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x6e394466; BYTE $0x3c               // cmp    word [rsi + 60], r13w
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x6e394466; BYTE $0x3e               // cmp    word [rsi + 62], r13w
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000f024940244                   // add    r10b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000015024bc0240                   // add    dil, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x0000012024bcb60f                   // movzx    edi, byte [rsp + 288]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000001302484b60f                   // movzx    eax, byte [rsp + 304]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000e02484b60f                   // movzx    eax, byte [rsp + 224]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x40c68348                           // add    rsi, 64
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_105
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000170249c8b4c                   // mov    r11, qword [rsp + 368]

LBB10_107:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_112
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_110

LBB10_114:
	LONG $0x1ab70f44         // movzx    r11d, word [rdx]
	LONG $0x1f7a8d4d         // lea    r15, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xfa490f4d         // cmovns    r15, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_118
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_116:
	LONG $0x1e394466             // cmp    word [rsi], r11w
	LONG $0x02768d48             // lea    rsi, [rsi + 2]
	WORD $0x9d0f; BYTE $0xd2     // setge    dl
	WORD $0xdaf6                 // neg    dl
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB10_116
	LONG $0x01c68349             // add    r14, 1

LBB10_118:
	LONG $0x05ffc149             // sar    r15, 5
	LONG $0x20fa8349             // cmp    r10, 32
	QUAD $0x00000188249c8944     // mov    dword [rsp + 392], r11d
	JL   LBB10_119
	LONG $0x08ff8349             // cmp    r15, 8
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x000001c824bc894c     // mov    qword [rsp + 456], r15
	JB   LBB10_121
	WORD $0x894c; BYTE $0xf8     // mov    rax, r15
	LONG $0x06e0c148             // shl    rax, 6
	WORD $0x0148; BYTE $0xf0     // add    rax, rsi
	WORD $0x3949; BYTE $0xc6     // cmp    r14, rax
	JAE  LBB10_124
	LONG $0xbe048d4b             // lea    rax, [r14 + 4*r15]
	WORD $0x3948; BYTE $0xf0     // cmp    rax, rsi
	JBE  LBB10_124

LBB10_121:
	WORD $0xc031             // xor    eax, eax
	QUAD $0x0000019024848948 // mov    qword [rsp + 400], rax
	WORD $0x8949; BYTE $0xf3 // mov    r11, rsi
	WORD $0x894d; BYTE $0xf4 // mov    r12, r14

LBB10_127:
	LONG $0x2464894c; BYTE $0x08 // mov    qword [rsp + 8], r12
	QUAD $0x0000019024bc2b4c     // sub    r15, qword [rsp + 400]
	QUAD $0x0000014024bc894c     // mov    qword [rsp + 320], r15
	QUAD $0x0000018824ac8b44     // mov    r13d, dword [rsp + 392]

LBB10_128:
	LONG $0x2b394566                           // cmp    word [r11], r13w
	QUAD $0x000000f024949d0f                   // setge    byte [rsp + 240]
	LONG $0x6b394566; BYTE $0x02               // cmp    word [r11 + 2], r13w
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x6b394566; BYTE $0x04               // cmp    word [r11 + 4], r13w
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x6b394566; BYTE $0x06               // cmp    word [r11 + 6], r13w
	QUAD $0x0000011024949d0f                   // setge    byte [rsp + 272]
	LONG $0x6b394566; BYTE $0x08               // cmp    word [r11 + 8], r13w
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	LONG $0x6b394566; BYTE $0x0a               // cmp    word [r11 + 10], r13w
	QUAD $0x000000c024949d0f                   // setge    byte [rsp + 192]
	LONG $0x6b394566; BYTE $0x0c               // cmp    word [r11 + 12], r13w
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	LONG $0x6b394566; BYTE $0x0e               // cmp    word [r11 + 14], r13w
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x6b394566; BYTE $0x10               // cmp    word [r11 + 16], r13w
	QUAD $0x0000015024949d0f                   // setge    byte [rsp + 336]
	LONG $0x6b394566; BYTE $0x12               // cmp    word [r11 + 18], r13w
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x6b394566; BYTE $0x14               // cmp    word [r11 + 20], r13w
	LONG $0xd69d0f40                           // setge    sil
	LONG $0x6b394566; BYTE $0x16               // cmp    word [r11 + 22], r13w
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x6b394566; BYTE $0x18               // cmp    word [r11 + 24], r13w
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x6b394566; BYTE $0x1a               // cmp    word [r11 + 26], r13w
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0x6b394566; BYTE $0x1c               // cmp    word [r11 + 28], r13w
	QUAD $0x0000012024949d0f                   // setge    byte [rsp + 288]
	LONG $0x6b394566; BYTE $0x1e               // cmp    word [r11 + 30], r13w
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x6b394566; BYTE $0x20               // cmp    word [r11 + 32], r13w
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x6b394566; BYTE $0x22               // cmp    word [r11 + 34], r13w
	QUAD $0x0000013024949d0f                   // setge    byte [rsp + 304]
	LONG $0x6b394566; BYTE $0x24               // cmp    word [r11 + 36], r13w
	QUAD $0x0000010024949d0f                   // setge    byte [rsp + 256]
	LONG $0x6b394566; BYTE $0x26               // cmp    word [r11 + 38], r13w
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x6b394566; BYTE $0x28               // cmp    word [r11 + 40], r13w
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0x6b394566; BYTE $0x2a               // cmp    word [r11 + 42], r13w
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x6b394566; BYTE $0x2c               // cmp    word [r11 + 44], r13w
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x6b394566; BYTE $0x2e               // cmp    word [r11 + 46], r13w
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x6b394566; BYTE $0x30               // cmp    word [r11 + 48], r13w
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x6b394566; BYTE $0x32               // cmp    word [r11 + 50], r13w
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	LONG $0x6b394566; BYTE $0x34               // cmp    word [r11 + 52], r13w
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x6b394566; BYTE $0x36               // cmp    word [r11 + 54], r13w
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x6b394566; BYTE $0x38               // cmp    word [r11 + 56], r13w
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x6b394566; BYTE $0x3a               // cmp    word [r11 + 58], r13w
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x6b394566; BYTE $0x3c               // cmp    word [r11 + 60], r13w
	QUAD $0x0000016024949d0f                   // setge    byte [rsp + 352]
	LONG $0x6b394566; BYTE $0x3e               // cmp    word [r11 + 62], r13w
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	QUAD $0x000000f024840244                   // add    r8b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xc900                               // add    cl, cl
	LONG $0x50248c02; WORD $0x0001; BYTE $0x00 // add    cl, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	QUAD $0x000000d0248cb60f                   // movzx    ecx, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xc108                               // or    cl, al
	WORD $0x8941; BYTE $0xc8                   // mov    r8d, ecx
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	QUAD $0x000000c0248cb60f                   // movzx    ecx, byte [rsp + 192]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	QUAD $0x0000012024b4b60f                   // movzx    esi, byte [rsp + 288]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0xcb08                               // or    bl, cl
	WORD $0x0844; BYTE $0xe7                   // or    dil, r12b
	QUAD $0x00000130248cb60f                   // movzx    ecx, byte [rsp + 304]
	WORD $0xc900                               // add    cl, cl
	LONG $0xa0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 160]
	WORD $0xce89                               // mov    esi, ecx
	QUAD $0x00000100248cb60f                   // movzx    ecx, byte [rsp + 256]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	QUAD $0x000000e0248cb60f                   // movzx    ecx, byte [rsp + 224]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	QUAD $0x000000b0248cb60f                   // movzx    ecx, byte [rsp + 176]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0xce89                               // mov    esi, ecx
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	WORD $0x1988                               // mov    byte [rcx], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x01798840                           // mov    byte [rcx + 1], dil
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd808                               // or    al, bl
	WORD $0xc389                               // mov    ebx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd808                               // or    al, bl
	QUAD $0x00000160249cb60f                   // movzx    ebx, byte [rsp + 352]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xda08                               // or    dl, bl
	WORD $0xc208                               // or    dl, al
	LONG $0x02798844                           // mov    byte [rcx + 2], r15b
	WORD $0x5188; BYTE $0x03                   // mov    byte [rcx + 3], dl
	LONG $0x40c38349                           // add    r11, 64
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x244c8948; BYTE $0x08               // mov    qword [rsp + 8], rcx
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_128
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x000001c824bc8b4c                   // mov    r15, qword [rsp + 456]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	JMP  LBB10_130

LBB10_157:
	WORD $0x8b4c; BYTE $0x2a // mov    r13, qword [rdx]
	LONG $0x1f5a8d4d         // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2 // test    r10, r10
	LONG $0xda490f4d         // cmovns    r11, r10
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB10_161
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB10_159:
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	LONG $0x08768d48                           // lea    rsi, [rsi + 8]
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0xdaf6                               // neg    dl
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1e               // movzx    r8d, byte [r14 + rbx]
	WORD $0x3044; BYTE $0xc2                   // xor    dl, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xd7                   // and    dil, dl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1e3c8841                           // mov    byte [r14 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB10_159
	LONG $0x01c68349                           // add    r14, 1

LBB10_161:
	LONG $0x05fbc149             // sar    r11, 5
	LONG $0x20fa8349             // cmp    r10, 32
	JL   LBB10_165
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000170249c894c     // mov    qword [rsp + 368], r11
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11

LBB10_163:
	QUAD $0x0000016024b4894c                   // mov    qword [rsp + 352], r14
	WORD $0x394c; BYTE $0x2e                   // cmp    qword [rsi], r13
	QUAD $0x000000f024949d0f                   // setge    byte [rsp + 240]
	LONG $0x086e394c                           // cmp    qword [rsi + 8], r13
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x106e394c                           // cmp    qword [rsi + 16], r13
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x186e394c                           // cmp    qword [rsi + 24], r13
	QUAD $0x0000011024949d0f                   // setge    byte [rsp + 272]
	LONG $0x206e394c                           // cmp    qword [rsi + 32], r13
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	LONG $0x286e394c                           // cmp    qword [rsi + 40], r13
	QUAD $0x000000c024949d0f                   // setge    byte [rsp + 192]
	LONG $0x306e394c                           // cmp    qword [rsi + 48], r13
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	LONG $0x386e394c                           // cmp    qword [rsi + 56], r13
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x406e394c                           // cmp    qword [rsi + 64], r13
	QUAD $0x0000015024949d0f                   // setge    byte [rsp + 336]
	LONG $0x486e394c                           // cmp    qword [rsi + 72], r13
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x506e394c                           // cmp    qword [rsi + 80], r13
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x586e394c                           // cmp    qword [rsi + 88], r13
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x606e394c                           // cmp    qword [rsi + 96], r13
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x686e394c                           // cmp    qword [rsi + 104], r13
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0x706e394c                           // cmp    qword [rsi + 112], r13
	QUAD $0x0000012024949d0f                   // setge    byte [rsp + 288]
	LONG $0x786e394c                           // cmp    qword [rsi + 120], r13
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x80ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 128], r13
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x88ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 136], r13
	QUAD $0x0000013024949d0f                   // setge    byte [rsp + 304]
	LONG $0x90ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 144], r13
	QUAD $0x0000010024949d0f                   // setge    byte [rsp + 256]
	LONG $0x98ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 152], r13
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0xa0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 160], r13
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0xa8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 168], r13
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0xb0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 176], r13
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0xb8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 184], r13
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0xc0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 192], r13
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0xc8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 200], r13
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	LONG $0xd0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 208], r13
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0xd8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 216], r13
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0xe0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 224], r13
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0xe8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 232], r13
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0xf0ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 240], r13
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0xf8ae394c; WORD $0x0000; BYTE $0x00 // cmp    qword [rsi + 248], r13
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x000000f024940244                   // add    r10b, byte [rsp + 240]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xc308                               // or    bl, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000015024bc0240                   // add    dil, byte [rsp + 336]
	QUAD $0x000001102484b60f                   // movzx    eax, byte [rsp + 272]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0844; BYTE $0xf0                   // or    al, r14b
	WORD $0x8941; BYTE $0xc2                   // mov    r10d, eax
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0x02e0c041                           // shl    r8b, 2
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x000000d02484b60f                   // movzx    eax, byte [rsp + 208]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xd0                   // or    al, r10b
	WORD $0xc789                               // mov    edi, eax
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000c02484b60f                   // movzx    eax, byte [rsp + 192]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xdc                   // or    r12b, r11b
	QUAD $0x0000012024bcb60f                   // movzx    edi, byte [rsp + 288]
	LONG $0x06e7c040                           // shl    dil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf9                   // or    cl, dil
	WORD $0xc308                               // or    bl, al
	WORD $0x0844; BYTE $0xe1                   // or    cl, r12b
	QUAD $0x000001302484b60f                   // movzx    eax, byte [rsp + 304]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000e02484b60f                   // movzx    eax, byte [rsp + 224]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0xc789                               // mov    edi, eax
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0840; BYTE $0xf8                   // or    al, dil
	WORD $0x8841; BYTE $0x1e                   // mov    byte [r14], bl
	QUAD $0x00000080249cb60f                   // movzx    ebx, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xdf                   // or    r15b, bl
	LONG $0x014e8841                           // mov    byte [r14 + 1], cl
	WORD $0x0841; BYTE $0xc7                   // or    r15b, al
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xc000                               // add    al, al
	LONG $0x30244402                           // add    al, byte [rsp + 48]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe2c0; BYTE $0x07                   // shl    dl, 7
	WORD $0xca08                               // or    dl, cl
	WORD $0xc208                               // or    dl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x03568841                           // mov    byte [r14 + 3], dl
	LONG $0x00c68148; WORD $0x0001; BYTE $0x00 // add    rsi, 256
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x0000014024848348; BYTE $0xff       // add    qword [rsp + 320], -1
	JNE  LBB10_163
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000170249c8b4c                   // mov    r11, qword [rsp + 368]

LBB10_165:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_170
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB10_168

LBB10_172:
	LONG $0x1f5a8d4d             // lea    r11, [r10 + 31]
	WORD $0x854d; BYTE $0xd2     // test    r10, r10
	LONG $0xda490f4d             // cmovns    r11, r10
	LONG $0x07418d41             // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9     // test    r9d, r9d
	LONG $0xc1490f41             // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8     // and    eax, -8
	LONG $0x100f44f3; BYTE $0x1a // movss    xmm11, dword [rdx]
	WORD $0x2941; BYTE $0xc1     // sub    r9d, eax
	JE   LBB10_176
	WORD $0x6349; BYTE $0xc1     // movsxd    rax, r9d

LBB10_174:
	LONG $0x06100ff3             // movss    xmm0, dword [rsi]
	LONG $0x04c68348             // add    rsi, 4
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	LONG $0x000000ba; BYTE $0x00 // mov    edx, 0
	WORD $0xd280; BYTE $0xff     // adc    dl, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB10_174
	LONG $0x01c68349             // add    r14, 1

LBB10_176:
	LONG $0x05fbc149         // sar    r11, 5
	LONG $0x20fa8349         // cmp    r10, 32
	JL   LBB10_177
	LONG $0x04fb8349         // cmp    r11, 4
	JB   LBB10_179
	WORD $0x894c; BYTE $0xd8 // mov    rax, r11
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xf0 // add    rax, rsi
	WORD $0x3949; BYTE $0xc6 // cmp    r14, rax
	JAE  LBB10_182
	LONG $0x9e048d4b         // lea    rax, [r14 + 4*r11]
	WORD $0x3948; BYTE $0xf0 // cmp    rax, rsi
	JBE  LBB10_182

LBB10_179:
	WORD $0xc031             // xor    eax, eax
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14

LBB10_185:
	LONG $0x247c894c; BYTE $0x08 // mov    qword [rsp + 8], r15
	LONG $0x2454894c; BYTE $0x48 // mov    qword [rsp + 72], r10
	QUAD $0x00000140249c894c     // mov    qword [rsp + 320], r11
	WORD $0x2949; BYTE $0xc3     // sub    r11, rax
	QUAD $0x000000f0249c894c     // mov    qword [rsp + 240], r11

LBB10_186:
	LONG $0x02100ff3                           // movss    xmm0, dword [rdx]
	LONG $0x4a100ff3; BYTE $0x04               // movss    xmm1, dword [rdx + 4]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000001202494930f                   // setae    byte [rsp + 288]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x42100ff3; BYTE $0x08               // movss    xmm0, dword [rdx + 8]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd6930f40                           // setae    sil
	LONG $0x42100ff3; BYTE $0x0c               // movss    xmm0, dword [rdx + 12]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd7930f40                           // setae    dil
	LONG $0x42100ff3; BYTE $0x10               // movss    xmm0, dword [rdx + 16]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x42100ff3; BYTE $0x14               // movss    xmm0, dword [rdx + 20]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000001102494930f                   // setae    byte [rsp + 272]
	LONG $0x42100ff3; BYTE $0x18               // movss    xmm0, dword [rdx + 24]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000001302494930f                   // setae    byte [rsp + 304]
	LONG $0x42100ff3; BYTE $0x1c               // movss    xmm0, dword [rdx + 28]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000001502494930f                   // setae    byte [rsp + 336]
	LONG $0x42100ff3; BYTE $0x20               // movss    xmm0, dword [rdx + 32]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000000c02494930f                   // setae    byte [rsp + 192]
	LONG $0x42100ff3; BYTE $0x24               // movss    xmm0, dword [rdx + 36]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x42100ff3; BYTE $0x28               // movss    xmm0, dword [rdx + 40]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x42100ff3; BYTE $0x2c               // movss    xmm0, dword [rdx + 44]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x42100ff3; BYTE $0x30               // movss    xmm0, dword [rdx + 48]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x42100ff3; BYTE $0x34               // movss    xmm0, dword [rdx + 52]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x42100ff3; BYTE $0x38               // movss    xmm0, dword [rdx + 56]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x42100ff3; BYTE $0x3c               // movss    xmm0, dword [rdx + 60]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x42100ff3; BYTE $0x40               // movss    xmm0, dword [rdx + 64]
	LONG $0x4a100ff3; BYTE $0x44               // movss    xmm1, dword [rdx + 68]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x48               // movss    xmm0, dword [rdx + 72]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x4c               // movss    xmm1, dword [rdx + 76]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x50               // movss    xmm0, dword [rdx + 80]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x54               // movss    xmm1, dword [rdx + 84]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x58               // movss    xmm0, dword [rdx + 88]
	QUAD $0x000001002494930f                   // setae    byte [rsp + 256]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x5c               // movss    xmm1, dword [rdx + 92]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x60               // movss    xmm0, dword [rdx + 96]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x64               // movss    xmm1, dword [rdx + 100]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x68               // movss    xmm0, dword [rdx + 104]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x6c               // movss    xmm1, dword [rdx + 108]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x70               // movss    xmm0, dword [rdx + 112]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x74               // movss    xmm1, dword [rdx + 116]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	LONG $0x42100ff3; BYTE $0x78               // movss    xmm0, dword [rdx + 120]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	LONG $0x4a100ff3; BYTE $0x7c               // movss    xmm1, dword [rdx + 124]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0xc32e0f41                           // ucomiss    xmm0, xmm11
	QUAD $0x000001602494930f                   // setae    byte [rsp + 352]
	LONG $0x80ea8348                           // sub    rdx, -128
	LONG $0xcb2e0f41                           // ucomiss    xmm1, xmm11
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	WORD $0xc900                               // add    cl, cl
	LONG $0x20248c02; WORD $0x0001; BYTE $0x00 // add    cl, byte [rsp + 288]
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	QUAD $0x00000110248cb60f                   // movzx    ecx, byte [rsp + 272]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0x0844; BYTE $0xc1                   // or    cl, r8b
	QUAD $0x0000013024bcb60f                   // movzx    edi, byte [rsp + 304]
	LONG $0x06e7c040                           // shl    dil, 6
	QUAD $0x0000015024b4b60f                   // movzx    esi, byte [rsp + 336]
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xfe                   // or    sil, dil
	WORD $0x0045; BYTE $0xc9                   // add    r9b, r9b
	QUAD $0x000000c0248c0244                   // add    r9b, byte [rsp + 192]
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xdf                   // or    r15b, r11b
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xf8                   // or    al, r15b
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	QUAD $0x000000d0248cb60f                   // movzx    ecx, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xc108                               // or    cl, al
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	QUAD $0x000000e024bcb60f                   // movzx    edi, byte [rsp + 224]
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xc7                   // or    dil, al
	WORD $0x0045; BYTE $0xd2                   // add    r10b, r10b
	QUAD $0x0000009024940244                   // add    r10b, byte [rsp + 144]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xd6                   // or    r14b, r10b
	LONG $0x03e4c041                           // shl    r12b, 3
	WORD $0x0845; BYTE $0xf4                   // or    r12b, r14b
	QUAD $0x000001002484b60f                   // movzx    eax, byte [rsp + 256]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	WORD $0x8941; BYTE $0xc0                   // mov    r8d, eax
	QUAD $0x000000a02484b60f                   // movzx    eax, byte [rsp + 160]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xc0                   // or    al, r8b
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e5c041                           // shl    r13b, 7
	WORD $0x0841; BYTE $0xcd                   // or    r13b, cl
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	WORD $0x8841; BYTE $0x30                   // mov    byte [r8], sil
	WORD $0x0841; BYTE $0xc5                   // or    r13b, al
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xc000                               // add    al, al
	LONG $0x10244402                           // add    al, byte [rsp + 16]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	LONG $0x01788841                           // mov    byte [r8 + 1], dil
	QUAD $0x00000160248cb60f                   // movzx    ecx, byte [rsp + 352]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	WORD $0xe3c0; BYTE $0x07                   // shl    bl, 7
	WORD $0xcb08                               // or    bl, cl
	LONG $0x02688845                           // mov    byte [r8 + 2], r13b
	WORD $0xc308                               // or    bl, al
	LONG $0x03588841                           // mov    byte [r8 + 3], bl
	LONG $0x04c08349                           // add    r8, 4
	LONG $0x2444894c; BYTE $0x08               // mov    qword [rsp + 8], r8
	QUAD $0x000000f024848348; BYTE $0xff       // add    qword [rsp + 240], -1
	JNE  LBB10_186
	LONG $0x247c8b4c; BYTE $0x08               // mov    r15, qword [rsp + 8]
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	QUAD $0x00000140249c8b4c                   // mov    r11, qword [rsp + 320]
	JMP  LBB10_188

LBB10_9:
	QUAD $0x0000009024b4894c // mov    qword [rsp + 144], r14

LBB10_91:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB10_94
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB10_97

LBB10_61:
	QUAD $0x000000e024b4894c // mov    qword [rsp + 224], r14

LBB10_72:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB10_75
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB10_78

LBB10_119:
	WORD $0x894d; BYTE $0xf4 // mov    r12, r14
	WORD $0x8949; BYTE $0xf3 // mov    r11, rsi

LBB10_130:
	LONG $0x05e7c149         // shl    r15, 5
	WORD $0x394d; BYTE $0xd7 // cmp    r15, r10
	JGE  LBB10_201
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xf8 // sub    r8, r15
	WORD $0xf749; BYTE $0xd7 // not    r15
	WORD $0x014d; BYTE $0xd7 // add    r15, r10
	JNE  LBB10_135
	WORD $0xf631             // xor    esi, esi
	JMP  LBB10_133

LBB10_177:
	WORD $0x894d; BYTE $0xf7 // mov    r15, r14
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi

LBB10_188:
	LONG $0x05e3c149         // shl    r11, 5
	WORD $0x394d; BYTE $0xd3 // cmp    r11, r10
	JGE  LBB10_201
	WORD $0x8948; BYTE $0xd0 // mov    rax, rdx
	WORD $0x894d; BYTE $0xd0 // mov    r8, r10
	WORD $0x294d; BYTE $0xd8 // sub    r8, r11
	WORD $0xf749; BYTE $0xd3 // not    r11
	WORD $0x014d; BYTE $0xd3 // add    r11, r10
	JNE  LBB10_193
	WORD $0xf631             // xor    esi, esi
	JMP  LBB10_191

LBB10_155:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_156:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB10_156

LBB10_40:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x394c; BYTE $0x2e // cmp    qword [rsi], r13
	JMP  LBB10_199

LBB10_153:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_154:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB10_154

LBB10_150:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0x3944; BYTE $0x2e // cmp    dword [rsi], r13d
	JMP  LBB10_152

LBB10_94:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	QUAD $0x0000009024b48b4c // mov    r14, qword [rsp + 144]

LBB10_95:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB10_95
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB10_97:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0x3844; BYTE $0x1e // cmp    byte [rsi], r11b
	WORD $0x9d0f; BYTE $0xd0 // setge    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xca // mov    rdx, r9
	LONG $0x03eac148         // shr    rdx, 3
	QUAD $0x0000009024848b4c // mov    r8, qword [rsp + 144]
	LONG $0x103c8a41         // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041         // and    r9b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xc9 // mov    ecx, r9d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	JMP  LBB10_80

LBB10_75:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	QUAD $0x000000e024b48b4c // mov    r14, qword [rsp + 224]

LBB10_76:
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	LONG $0x0e1c3846             // cmp    byte [rsi + r9], r11b
	LONG $0x000000bb; BYTE $0x00 // mov    ebx, 0
	WORD $0xd380; BYTE $0xff     // adc    bl, -1
	WORD $0x894c; BYTE $0xcf     // mov    rdi, r9
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	LONG $0x065c3844; BYTE $0x01 // cmp    byte [rsi + rax + 1], r11b
	LONG $0x02488d4c             // lea    r9, [rax + 2]
	LONG $0x000000bb; BYTE $0x00 // mov    ebx, 0
	WORD $0xd380; BYTE $0xff     // adc    bl, -1
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	WORD $0x394d; BYTE $0xca     // cmp    r10, r9
	JNE  LBB10_76
	WORD $0x014c; BYTE $0xce     // add    rsi, r9

LBB10_78:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x3844; BYTE $0x1e // cmp    byte [rsi], r11b
	WORD $0xff14             // adc    al, -1
	WORD $0x894c; BYTE $0xca // mov    rdx, r9
	LONG $0x03eac148         // shr    rdx, 3
	QUAD $0x000000e024848b4c // mov    r8, qword [rsp + 224]
	LONG $0x103c8a41         // mov    dil, byte [r8 + rdx]
	LONG $0x07e18041         // and    r9b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xc9 // mov    ecx, r9d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al

LBB10_80:
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x101c8841         // mov    byte [r8 + rdx], bl
	JMP  LBB10_201

LBB10_137:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_138:
	WORD $0x3944; BYTE $0x2e     // cmp    dword [rsi], r13d
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x046e3944             // cmp    dword [rsi + 4], r13d
	LONG $0x08768d48             // lea    rsi, [rsi + 8]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB10_138

LBB10_24:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x3944; BYTE $0x2e // cmp    dword [rsi], r13d
	JMP  LBB10_199

LBB10_195:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_196:
	LONG $0x0e100ff2             // movsd    xmm1, qword [rsi]
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	LONG $0x000000b8; BYTE $0x00 // mov    eax, 0
	WORD $0xff14                 // adc    al, -1
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x4e100ff2; BYTE $0x08 // movsd    xmm1, qword [rsi + 8]
	LONG $0x10c68348             // add    rsi, 16
	LONG $0xc82e0f66             // ucomisd    xmm1, xmm0
	LONG $0x000000b8; BYTE $0x00 // mov    eax, 0
	WORD $0xff14                 // adc    al, -1
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB10_196

LBB10_197:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB10_201
	LONG $0x0e100ff2 // movsd    xmm1, qword [rsi]
	WORD $0xc031     // xor    eax, eax
	LONG $0xc82e0f66 // ucomisd    xmm1, xmm0
	JMP  LBB10_199

LBB10_112:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_113:
	LONG $0x2e394466             // cmp    word [rsi], r13w
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xda     // mov    rdx, r11
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x14b60f45; BYTE $0x16 // movzx    r10d, byte [r14 + rdx]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x16048841             // mov    byte [r14 + rdx], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x6e394466; BYTE $0x02 // cmp    word [rsi + 2], r13w
	LONG $0x04768d48             // lea    rsi, [rsi + 4]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x161c8841             // mov    byte [r14 + rdx], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB10_113

LBB10_110:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB10_201
	WORD $0xc031     // xor    eax, eax
	LONG $0x2e394466 // cmp    word [rsi], r13w

LBB10_199:
	WORD $0xff14             // adc    al, -1
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	JMP  LBB10_200

LBB10_170:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB10_171:
	WORD $0x394c; BYTE $0x2e     // cmp    qword [rsi], r13
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3e1c8841             // mov    byte [r14 + rdi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x086e394c             // cmp    qword [rsi + 8], r13
	LONG $0x10768d48             // lea    rsi, [rsi + 16]
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0xd830                 // xor    al, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xc220                 // and    dl, al
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB10_171

LBB10_168:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	WORD $0x394c; BYTE $0x2e // cmp    qword [rsi], r13

LBB10_152:
	WORD $0x9d0f; BYTE $0xd0 // setge    al
	WORD $0xd8f6             // neg    al
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al

LBB10_200:
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x161c8841         // mov    byte [r14 + rdx], bl

LBB10_201:
	MOVQ 496(SP), SP
	RET

LBB10_135:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xf631             // xor    esi, esi
	QUAD $0x0000018824b48b44 // mov    r14d, dword [rsp + 392]

LBB10_136:
	LONG $0x33394566             // cmp    word [r11], r14w
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3c // movzx    r9d, byte [r12 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x73394566; BYTE $0x02 // cmp    word [r11 + 2], r14w
	LONG $0x045b8d4d             // lea    r11, [r11 + 4]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3c048841             // mov    byte [r12 + rdi], al
	WORD $0x3949; BYTE $0xf2     // cmp    r10, rsi
	JNE  LBB10_136

LBB10_133:
	LONG $0x01c0f641                           // test    r8b, 1
	JE   LBB10_201
	LONG $0x8824848b; WORD $0x0001; BYTE $0x00 // mov    eax, dword [rsp + 392]
	LONG $0x03394166                           // cmp    word [r11], ax
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	WORD $0xd8f6                               // neg    al
	WORD $0x8948; BYTE $0xf2                   // mov    rdx, rsi
	LONG $0x03eac148                           // shr    rdx, 3
	LONG $0x143c8a41                           // mov    dil, byte [r12 + rdx]
	LONG $0x07e68040                           // and    sil, 7
	WORD $0x01b3                               // mov    bl, 1
	WORD $0xf189                               // mov    ecx, esi
	WORD $0xe3d2                               // shl    bl, cl
	WORD $0x3040; BYTE $0xf8                   // xor    al, dil
	WORD $0xc320                               // and    bl, al
	WORD $0x3040; BYTE $0xfb                   // xor    bl, dil
	LONG $0x141c8841                           // mov    byte [r12 + rdx], bl
	JMP  LBB10_201

LBB10_193:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xf631             // xor    esi, esi
	WORD $0x894d; BYTE $0xfb // mov    r11, r15

LBB10_194:
	LONG $0x00100ff3             // movss    xmm0, dword [rax]
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	LONG $0x000000bb; BYTE $0x00 // mov    ebx, 0
	WORD $0xd380; BYTE $0xff     // adc    bl, -1
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3b // movzx    r9d, byte [r11 + rdi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0xda20                 // and    dl, bl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	LONG $0x3b148841             // mov    byte [r11 + rdi], dl
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x40100ff3; BYTE $0x04 // movss    xmm0, dword [rax + 4]
	LONG $0x08c08348             // add    rax, 8
	LONG $0xc32e0f41             // ucomiss    xmm0, xmm11
	LONG $0x000000bb; BYTE $0x00 // mov    ebx, 0
	WORD $0xd380; BYTE $0xff     // adc    bl, -1
	WORD $0xd330                 // xor    bl, dl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x8949; BYTE $0xc1     // mov    r9, rax
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0xd820                 // and    al, bl
	WORD $0xd030                 // xor    al, dl
	LONG $0x3b048841             // mov    byte [r11 + rdi], al
	WORD $0x894c; BYTE $0xc8     // mov    rax, r9
	WORD $0x3949; BYTE $0xf2     // cmp    r10, rsi
	JNE  LBB10_194

LBB10_191:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB10_201
	LONG $0x00100ff3         // movss    xmm0, dword [rax]
	WORD $0xc031             // xor    eax, eax
	LONG $0xc32e0f41         // ucomiss    xmm0, xmm11
	WORD $0xff14             // adc    al, -1
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x173c8a41         // mov    dil, byte [r15 + rdx]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x171c8841         // mov    byte [r15 + rdx], bl
	JMP  LBB10_201

LBB10_85:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000017024848948             // mov    qword [rsp + 368], rax
	QUAD $0x000000f024bc894c             // mov    qword [rsp + 240], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	QUAD $0x0000009024848948             // mov    qword [rsp + 144], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000140248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 320], xmm1
	WORD $0x3145; BYTE $0xc0             // xor    r8d, r8d
	QUAD $0x0000016024b4894c             // mov    qword [rsp + 352], r14

LBB10_86:
	QUAD $0x000001002484894c                   // mov    qword [rsp + 256], r8
	LONG $0x05e0c149                           // shl    r8, 5
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	QUAD $0x000000802484894c                   // mov    qword [rsp + 128], r8
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	LONG $0x2444894c; BYTE $0x10               // mov    qword [rsp + 16], r8
	WORD $0x894d; BYTE $0xc3                   // mov    r11, r8
	WORD $0x894d; BYTE $0xc2                   // mov    r10, r8
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	WORD $0x894d; BYTE $0xc6                   // mov    r14, r8
	LONG $0x0cb60f42; BYTE $0x06               // movzx    ecx, byte [rsi + r8]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x4cb60f42; WORD $0x0106             // movzx    ecx, byte [rsi + r8 + 1]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x4cb60f42; WORD $0x0206             // movzx    ecx, byte [rsi + r8 + 2]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x4cb60f42; WORD $0x0306             // movzx    ecx, byte [rsi + r8 + 3]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x4cb60f42; WORD $0x0406             // movzx    ecx, byte [rsi + r8 + 4]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x4cb60f42; WORD $0x0506             // movzx    ecx, byte [rsi + r8 + 5]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x447f0f66; WORD $0x7024             // movdqa    oword [rsp + 112], xmm0
	LONG $0x4cb60f42; WORD $0x0606             // movzx    ecx, byte [rsi + r8 + 6]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x4cb60f42; WORD $0x0706             // movzx    ecx, byte [rsi + r8 + 7]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x00013024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm0
	LONG $0x4cb60f42; WORD $0x0806             // movzx    ecx, byte [rsi + r8 + 8]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x4cb60f42; WORD $0x0906             // movzx    ecx, byte [rsi + r8 + 9]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x4cb60f42; WORD $0x0a06             // movzx    ecx, byte [rsi + r8 + 10]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x4cb60f42; WORD $0x0b06             // movzx    ecx, byte [rsi + r8 + 11]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x4cb60f42; WORD $0x0c06             // movzx    ecx, byte [rsi + r8 + 12]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x4cb60f42; WORD $0x1006             // movzx    ecx, byte [rsi + r8 + 16]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	QUAD $0x000000c02484894c                   // mov    qword [rsp + 192], r8
	LONG $0x4cb60f42; WORD $0x1806             // movzx    ecx, byte [rsi + r8 + 24]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	WORD $0x894c; BYTE $0xc1                   // mov    rcx, r8
	LONG $0x20c98348                           // or    rcx, 32
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	LONG $0x244c8948; BYTE $0x50               // mov    qword [rsp + 80], rcx
	LONG $0x40c98349                           // or    r9, 64
	LONG $0x244c894c; BYTE $0x20               // mov    qword [rsp + 32], r9
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	WORD $0x894d; BYTE $0xc1                   // mov    r9, r8
	LONG $0x60c98349                           // or    r9, 96
	QUAD $0x00000080248c8148; LONG $0x00000080 // or    qword [rsp + 128], 128
	LONG $0xa0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 160
	LONG $0xc0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 192
	LONG $0x245c8b48; BYTE $0x10               // mov    rbx, qword [rsp + 16]
	LONG $0xe0cb8148; WORD $0x0000; BYTE $0x00 // or    rbx, 224
	LONG $0x00cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 256
	LONG $0x20ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 288
	LONG $0x01400d48; WORD $0x0000             // or    rax, 320
	LONG $0x60ca8148; WORD $0x0001; BYTE $0x00 // or    rdx, 352
	LONG $0x24548948; BYTE $0x30               // mov    qword [rsp + 48], rdx
	LONG $0x80ce8149; WORD $0x0001; BYTE $0x00 // or    r14, 384
	QUAD $0x000000b024b4894c                   // mov    qword [rsp + 176], r14
	LONG $0xa0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 416
	LONG $0x247c8948; BYTE $0x60               // mov    qword [rsp + 96], rdi
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	LONG $0xc0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 448
	LONG $0x247c8948; BYTE $0x10               // mov    qword [rsp + 16], rdi
	WORD $0x894c; BYTE $0xc7                   // mov    rdi, r8
	LONG $0xe0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 480
	QUAD $0x012e0c203a0f4666                   // pinsrb    xmm9, byte [rsi + r13], 1
	QUAD $0x020e0c203a0f4466                   // pinsrb    xmm9, byte [rsi + rcx], 2
	QUAD $0x030e0c203a0f4666                   // pinsrb    xmm9, byte [rsi + r9], 3
	QUAD $0x0000008024848b4c                   // mov    r8, qword [rsp + 128]
	QUAD $0x04060c203a0f4666                   // pinsrb    xmm9, byte [rsi + r8], 4
	QUAD $0x05260c203a0f4666                   // pinsrb    xmm9, byte [rsi + r12], 5
	QUAD $0x063e0c203a0f4666                   // pinsrb    xmm9, byte [rsi + r15], 6
	QUAD $0x071e0c203a0f4466                   // pinsrb    xmm9, byte [rsi + rbx], 7
	QUAD $0x081e0c203a0f4666                   // pinsrb    xmm9, byte [rsi + r11], 8
	QUAD $0x09160c203a0f4666                   // pinsrb    xmm9, byte [rsi + r10], 9
	QUAD $0x0a060c203a0f4466                   // pinsrb    xmm9, byte [rsi + rax], 10
	QUAD $0x0b160c203a0f4466                   // pinsrb    xmm9, byte [rsi + rdx], 11
	QUAD $0x0c360c203a0f4666                   // pinsrb    xmm9, byte [rsi + r14], 12
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x0d2e0c203a0f4666                   // pinsrb    xmm9, byte [rsi + r13], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e0e0c203a0f4466                   // pinsrb    xmm9, byte [rsi + rcx], 14
	QUAD $0x000000d024bc8948                   // mov    qword [rsp + 208], rdi
	QUAD $0x0f3e0c203a0f4466                   // pinsrb    xmm9, byte [rsi + rdi], 15
	QUAD $0x014024bc6f0f4466; WORD $0x0000     // movdqa    xmm15, oword [rsp + 320]
	LONG $0x6f0f4566; BYTE $0xdf               // movdqa    xmm11, xmm15
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x01010e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 1], 1
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x02010e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 1], 2
	QUAD $0x010e54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r9 + 1], 3
	QUAD $0x010654203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rsi + r8 + 1], 4
	QUAD $0x012654203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r12 + 1], 5
	QUAD $0x013e54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r15 + 1], 6
	QUAD $0x07011e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 1], 7
	QUAD $0x011e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r11 + 1], 8
	QUAD $0x011654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r10 + 1], 9
	QUAD $0x0a010654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 1], 10
	QUAD $0x0b011654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 1], 11
	QUAD $0x013654203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r14 + 1], 12
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x012e54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r13 + 1], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e010e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 1], 14
	QUAD $0x0f013e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 1], 15
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x01020e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 2], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x022e5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r13 + 2], 2
	QUAD $0x020e5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r9 + 2], 3
	QUAD $0x02065c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r8 + 2], 4
	QUAD $0x02265c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r12 + 2], 5
	QUAD $0x023e5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r15 + 2], 6
	QUAD $0x07021e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 2], 7
	QUAD $0x021e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 2], 8
	QUAD $0x02165c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r10 + 2], 9
	QUAD $0x0a02065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 2], 10
	QUAD $0x0b02165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 2], 11
	QUAD $0x02365c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r14 + 2], 12
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0d020e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 2], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e020e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 2], 14
	QUAD $0x0f023e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 2], 15
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x01030e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 3], 1
	QUAD $0x032e64203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r13 + 3], 2
	QUAD $0x030e64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r9 + 3], 3
	QUAD $0x030664203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rsi + r8 + 3], 4
	QUAD $0x032664203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r12 + 3], 5
	QUAD $0x033e64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r15 + 3], 6
	QUAD $0x07031e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 3], 7
	QUAD $0x031e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r11 + 3], 8
	QUAD $0x031664203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r10 + 3], 9
	QUAD $0x0a030664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 3], 10
	QUAD $0x0b031664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 3], 11
	QUAD $0x033664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r14 + 3], 12
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0d030e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 3], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e030e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 3], 14
	QUAD $0x0f033e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 3], 15
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x01040e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 4], 1
	QUAD $0x042e74203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r13 + 4], 2
	QUAD $0x040e74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r9 + 4], 3
	QUAD $0x040674203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rsi + r8 + 4], 4
	QUAD $0x042674203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r12 + 4], 5
	QUAD $0x043e74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r15 + 4], 6
	QUAD $0x07041e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 4], 7
	QUAD $0x041e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r11 + 4], 8
	QUAD $0x041674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r10 + 4], 9
	QUAD $0x0a040674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 4], 10
	QUAD $0x0b041674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 4], 11
	QUAD $0x043674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r14 + 4], 12
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0d040e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 4], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e040e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 4], 14
	QUAD $0x0f043e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 4], 15
	LONG $0x5c6f0f66; WORD $0x7024             // movdqa    xmm3, oword [rsp + 112]
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	QUAD $0x01050e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 5], 1
	QUAD $0x052e5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r13 + 5], 2
	QUAD $0x050e5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r9 + 5], 3
	QUAD $0x05065c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r8 + 5], 4
	QUAD $0x05265c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r12 + 5], 5
	QUAD $0x053e5c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r15 + 5], 6
	QUAD $0x07051e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 5], 7
	QUAD $0x051e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 5], 8
	QUAD $0x05165c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r10 + 5], 9
	QUAD $0x0a05065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 5], 10
	QUAD $0x0b05165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 5], 11
	QUAD $0x05365c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r14 + 5], 12
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0d050e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 5], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e050e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 5], 14
	QUAD $0x0f053e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 5], 15
	LONG $0x5c7f0f66; WORD $0x7024             // movdqa    oword [rsp + 112], xmm3
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x01063e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 6], 1
	WORD $0x894c; BYTE $0xe9                   // mov    rcx, r13
	QUAD $0x062e7c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rsi + r13 + 6], 2
	QUAD $0x060e7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r9 + 6], 3
	QUAD $0x06067c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rsi + r8 + 6], 4
	QUAD $0x06267c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r12 + 6], 5
	QUAD $0x063e7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r15 + 6], 6
	QUAD $0x07061e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 6], 7
	QUAD $0x061e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r11 + 6], 8
	QUAD $0x06167c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r10 + 6], 9
	QUAD $0x0a06067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 6], 10
	QUAD $0x0b06167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 6], 11
	QUAD $0x06367c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r14 + 6], 12
	QUAD $0x083e6c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rsi + rdi + 8], 1
	WORD $0x8949; BYTE $0xfd                   // mov    r13, rdi
	QUAD $0x080e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rcx + 8], 2
	QUAD $0x080e6c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r9 + 8], 3
	QUAD $0x08066c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rsi + r8 + 8], 4
	QUAD $0x08266c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rsi + r12 + 8], 5
	QUAD $0x083e6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r15 + 8], 6
	QUAD $0x081e6c203a0f4466; BYTE $0x07       // pinsrb    xmm13, byte [rsi + rbx + 8], 7
	QUAD $0x081e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r11 + 8], 8
	QUAD $0x08166c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rsi + r10 + 8], 9
	QUAD $0x08066c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + rax + 8], 10
	QUAD $0x08166c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + rdx + 8], 11
	QUAD $0x08366c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + r14 + 8], 12
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x08066c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + r8 + 8], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x080e6c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + rcx + 8], 14
	LONG $0x640f4566; BYTE $0xd9               // pcmpgtb    xmm11, xmm9
	QUAD $0x000000d024bc8b48                   // mov    rdi, qword [rsp + 208]
	QUAD $0x083e6c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rdi + 8], 15
	LONG $0x6f0f4566; BYTE $0xcf               // movdqa    xmm9, xmm15
	LONG $0x640f4566; BYTE $0xcd               // pcmpgtb    xmm9, xmm13
	QUAD $0x102e74203a0f4666; BYTE $0x01       // pinsrb    xmm14, byte [rsi + r13 + 16], 1
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x100e74203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rsi + rcx + 16], 2
	QUAD $0x100e74203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r9 + 16], 3
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	QUAD $0x000000a0248c894c                   // mov    qword [rsp + 160], r9
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x100e74203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rcx + 16], 4
	QUAD $0x102674203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rsi + r12 + 16], 5
	QUAD $0x000000e024a4894c                   // mov    qword [rsp + 224], r12
	QUAD $0x103e74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r15 + 16], 6
	QUAD $0x101e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rbx + 16], 7
	QUAD $0x101e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r11 + 16], 8
	QUAD $0x101674203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r10 + 16], 9
	QUAD $0x100674203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + rax + 16], 10
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x101674203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + rdx + 16], 11
	QUAD $0x000000b024948b48                   // mov    rdx, qword [rsp + 176]
	QUAD $0x101674203a0f4466; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + rdx + 16], 12
	QUAD $0x100674203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + r8 + 16], 13
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x102e74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r13 + 16], 14
	QUAD $0x103e74203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + rdi + 16], 15
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0118066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 24], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0218066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 24], 2
	QUAD $0x18366c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r14 + 24], 3
	QUAD $0x04180e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 24], 4
	QUAD $0x18266c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r12 + 24], 5
	QUAD $0x183e6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r15 + 24], 6
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	QUAD $0x07181e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 24], 7
	QUAD $0x181e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r11 + 24], 8
	QUAD $0x18166c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r10 + 24], 9
	QUAD $0x180e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r9 + 24], 10
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x0b18066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 24], 11
	QUAD $0x0c18166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 24], 12
	QUAD $0x18066c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r8 + 24], 13
	QUAD $0x182e6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r13 + 24], 14
	QUAD $0x0f183e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 24], 15
	LONG $0x640f4166; BYTE $0xde               // pcmpgtb    xmm3, xmm14
	QUAD $0x000150249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 336], xmm3
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xdd640f66                           // pcmpgtb    xmm3, xmm5
	QUAD $0x000120249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 288], xmm3
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0xea640f66                           // pcmpgtb    xmm5, xmm2
	QUAD $0x000000c0248c8b48                   // mov    rcx, qword [rsp + 192]
	LONG $0x0e54b60f; BYTE $0x0d               // movzx    edx, byte [rsi + rcx + 13]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	QUAD $0x06067c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r8 + 6], 13
	QUAD $0x000001009d6f0f66                   // movdqa    xmm3, oword 256[rbp] /* [rip + .LCPI10_16] */
	LONG $0xebdf0f66                           // pandn    xmm5, xmm3
	LONG $0xfc0f4166; BYTE $0xeb               // paddb    xmm5, xmm11
	LONG $0x6f0f4566; BYTE $0xef               // movdqa    xmm13, xmm15
	LONG $0x640f4466; BYTE $0xe8               // pcmpgtb    xmm13, xmm0
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xdc640f66                           // pcmpgtb    xmm3, xmm4
	LONG $0x0e54b60f; BYTE $0x0e               // movzx    edx, byte [rsi + rcx + 14]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	QUAD $0x062e7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r13 + 6], 14
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI10_17] */
	LONG $0xdf0f4466; BYTE $0xe8               // pandn    xmm13, xmm0
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xeb0f4166; BYTE $0xdd               // por    xmm3, xmm13
	LONG $0x6f0f4566; BYTE $0xf7               // movdqa    xmm14, xmm15
	LONG $0x640f4466; BYTE $0xf6               // pcmpgtb    xmm14, xmm6
	LONG $0x0e54b60f; BYTE $0x0f               // movzx    edx, byte [rsi + rcx + 15]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI10_19] */
	LONG $0xdf0f4466; BYTE $0xf0               // pandn    xmm14, xmm0
	LONG $0xeb0f4466; BYTE $0xf3               // por    xmm14, xmm3
	LONG $0x0e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rcx + 17]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	QUAD $0x0f063e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 6], 15
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8f80f66                           // psubb    xmm5, xmm0
	LONG $0xeb0f4466; BYTE $0xf5               // por    xmm14, xmm5
	LONG $0x6f0f4166; BYTE $0xef               // movdqa    xmm5, xmm15
	LONG $0x6c640f66; WORD $0x7024             // pcmpgtb    xmm5, oword [rsp + 112]
	LONG $0x6f0f4566; BYTE $0xef               // movdqa    xmm13, xmm15
	LONG $0x6f0f4566; BYTE $0xdf               // movdqa    xmm11, xmm15
	LONG $0x640f4466; BYTE $0xef               // pcmpgtb    xmm13, xmm7
	LONG $0x0e54b60f; BYTE $0x12               // movzx    edx, byte [rsi + rcx + 18]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xdf0f4466; BYTE $0xe8               // pandn    xmm13, xmm0
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x0e54b60f; BYTE $0x13               // movzx    edx, byte [rsi + rcx + 19]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	QUAD $0x00013024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 304]
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x01073e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 7], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x02070644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 7], 2
	QUAD $0x000000a0248c8b48                   // mov    rcx, qword [rsp + 160]
	QUAD $0x03070e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 7], 3
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x04070644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 7], 4
	QUAD $0x000000e024bc8b4c                   // mov    r15, qword [rsp + 224]
	QUAD $0x073e44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rsi + r15 + 7], 5
	QUAD $0x073644203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r14 + 7], 6
	QUAD $0x07071e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 7], 7
	QUAD $0x071e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r11 + 7], 8
	QUAD $0x071644203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r10 + 7], 9
	QUAD $0x070e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r9 + 7], 10
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x0b071644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 7], 11
	QUAD $0x000000b024948b48                   // mov    rdx, qword [rsp + 176]
	QUAD $0x0c071644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 7], 12
	QUAD $0x070644203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r8 + 7], 13
	QUAD $0x072e44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r13 + 7], 14
	QUAD $0x000000d024a48b4c                   // mov    r12, qword [rsp + 208]
	QUAD $0x072644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r12 + 7], 15
	QUAD $0x093e44203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rdi + 9], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x092e44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rsi + r13 + 9], 2
	QUAD $0x090e44203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rcx + 9], 3
	QUAD $0x090644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rax + 9], 4
	QUAD $0x093e44203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r15 + 9], 5
	QUAD $0x093644203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r14 + 9], 6
	QUAD $0x091e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 9], 7
	QUAD $0x091e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r11 + 9], 8
	QUAD $0x091644203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r10 + 9], 9
	QUAD $0x090e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r9 + 9], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x093e44203a0f4466; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + rdi + 9], 11
	QUAD $0x091644203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + rdx + 9], 12
	QUAD $0x090644203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r8 + 9], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x093e44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rdi + 9], 14
	QUAD $0x092644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r12 + 9], 15
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x0a2e54203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rsi + r13 + 10], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x0a3e54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rdi + 10], 2
	QUAD $0x0a0e54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rcx + 10], 3
	QUAD $0x0a0654203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rax + 10], 4
	QUAD $0x0a3e54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r15 + 10], 5
	QUAD $0x0a3654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r14 + 10], 6
	QUAD $0x0a1e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 10], 7
	QUAD $0x0a1e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r11 + 10], 8
	QUAD $0x0a1654203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r10 + 10], 9
	QUAD $0x0a0e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r9 + 10], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0a3e54203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rdi + 10], 11
	QUAD $0x0a1654203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + rdx + 10], 12
	QUAD $0x0a0654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r8 + 10], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0a3e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rdi + 10], 14
	QUAD $0x0a2654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r12 + 10], 15
	QUAD $0x0b2e4c203a0f4266; BYTE $0x01       // pinsrb    xmm1, byte [rsi + r13 + 11], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x020b3e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 11], 2
	QUAD $0x030b0e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 11], 3
	QUAD $0x040b064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 11], 4
	QUAD $0x0b3e4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rsi + r15 + 11], 5
	QUAD $0x0b364c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r14 + 11], 6
	QUAD $0x070b1e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 11], 7
	QUAD $0x0b1e4c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r11 + 11], 8
	QUAD $0x0b164c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r10 + 11], 9
	QUAD $0x0b0e4c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r9 + 11], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b0b3e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 11], 11
	QUAD $0x0c0b164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 11], 12
	QUAD $0x0b064c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r8 + 11], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e0b3e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 11], 14
	QUAD $0x0b264c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r12 + 11], 15
	QUAD $0x0c2e64203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rsi + r13 + 12], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x0c3e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rdi + 12], 2
	QUAD $0x0c0e64203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rcx + 12], 3
	QUAD $0x0c0664203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rax + 12], 4
	QUAD $0x0c3e64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rsi + r15 + 12], 5
	QUAD $0x0c3664203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r14 + 12], 6
	QUAD $0x0c1e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rbx + 12], 7
	QUAD $0x0c1e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r11 + 12], 8
	QUAD $0x0c1664203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r10 + 12], 9
	QUAD $0x0c0e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r9 + 12], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0c3e64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + rdi + 12], 11
	QUAD $0x0c1664203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + rdx + 12], 12
	QUAD $0x0c0664203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + r8 + 12], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0c3e64203a0f4466; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + rdi + 12], 14
	QUAD $0x0c2664203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r12 + 12], 15
	QUAD $0x0d2e54203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r13 + 13], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x020d3e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 13], 2
	QUAD $0x030d0e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 13], 3
	QUAD $0x040d0654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 13], 4
	QUAD $0x0d3e54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r15 + 13], 5
	QUAD $0x0d3654203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r14 + 13], 6
	QUAD $0x070d1e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 13], 7
	QUAD $0x0d1e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r11 + 13], 8
	QUAD $0x0d1654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r10 + 13], 9
	QUAD $0x0d0e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r9 + 13], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b0d3e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 13], 11
	QUAD $0x0c0d1654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 13], 12
	QUAD $0x0d0654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r8 + 13], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e0d3e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 13], 14
	QUAD $0x0d2654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r12 + 13], 15
	QUAD $0x0e2e64203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r13 + 14], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x020e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 2
	QUAD $0x030e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 14], 3
	QUAD $0x040e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 14], 4
	QUAD $0x0e3e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r15 + 14], 5
	QUAD $0x0e3664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r14 + 14], 6
	QUAD $0x070e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 14], 7
	QUAD $0x0e1e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r11 + 14], 8
	QUAD $0x0e1664203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r10 + 14], 9
	QUAD $0x0e0e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r9 + 14], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b0e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 11
	QUAD $0x0c0e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 14], 12
	QUAD $0x0e0664203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r8 + 14], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e0e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 14], 14
	QUAD $0x0e2664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r12 + 14], 15
	QUAD $0x0f2e74203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r13 + 15], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x020f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 2
	QUAD $0x030f0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 15], 3
	QUAD $0x040f0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 15], 4
	QUAD $0x0f3e74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rsi + r15 + 15], 5
	QUAD $0x0f3674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r14 + 15], 6
	QUAD $0x070f1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 15], 7
	QUAD $0x0f1e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r11 + 15], 8
	QUAD $0x0f1674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r10 + 15], 9
	QUAD $0x0f0e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r9 + 15], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b0f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 11
	QUAD $0x0c0f1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 15], 12
	QUAD $0x0f0674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r8 + 15], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e0f3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 15], 14
	QUAD $0x0f2674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r12 + 15], 15
	QUAD $0x112e5c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r13 + 17], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x02113e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 17], 2
	QUAD $0x03110e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 17], 3
	QUAD $0x0411065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 17], 4
	QUAD $0x113e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r15 + 17], 5
	QUAD $0x11365c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r14 + 17], 6
	QUAD $0x07111e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 17], 7
	QUAD $0x111e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 17], 8
	QUAD $0x11165c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r10 + 17], 9
	QUAD $0x110e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r9 + 17], 10
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b113e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 17], 11
	QUAD $0x0c11165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 17], 12
	QUAD $0x11065c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r8 + 17], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e113e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 17], 14
	QUAD $0x11265c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r12 + 17], 15
	QUAD $0x122e7c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rsi + r13 + 18], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x02123e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 18], 2
	QUAD $0x03120e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 18], 3
	QUAD $0x0412067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 18], 4
	QUAD $0x123e7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rsi + r15 + 18], 5
	QUAD $0x12367c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rsi + r14 + 18], 6
	QUAD $0x07121e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 18], 7
	QUAD $0x121e7c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r11 + 18], 8
	QUAD $0x12167c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r10 + 18], 9
	QUAD $0x120e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r9 + 18], 10
	QUAD $0x00000110248c894c                   // mov    qword [rsp + 272], r9
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x0b123e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 18], 11
	QUAD $0x0c12167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 18], 12
	WORD $0x8949; BYTE $0xd7                   // mov    r15, rdx
	QUAD $0x12067c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r8 + 18], 13
	LONG $0x24448b4c; BYTE $0x10               // mov    r8, qword [rsp + 16]
	QUAD $0x12067c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rsi + r8 + 18], 14
	QUAD $0x12267c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r12 + 18], 15
	QUAD $0x132e7c203a0f4666; BYTE $0x01       // pinsrb    xmm15, byte [rsi + r13 + 19], 1
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x132e7c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r13 + 19], 2
	QUAD $0x130e7c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rcx + 19], 3
	QUAD $0x13067c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rax + 19], 4
	QUAD $0x000000e0248c8b48                   // mov    rcx, qword [rsp + 224]
	QUAD $0x130e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rcx + 19], 5
	QUAD $0x13367c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rsi + r14 + 19], 6
	QUAD $0x131e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 19], 7
	QUAD $0x131e7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r11 + 19], 8
	QUAD $0x13167c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r10 + 19], 9
	QUAD $0x130e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r9 + 19], 10
	QUAD $0x133e7c203a0f4466; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + rdi + 19], 11
	LONG $0x6f0f4166; BYTE $0xeb               // movdqa    xmm5, xmm11
	LONG $0xe8640f66                           // pcmpgtb    xmm5, xmm0
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000c024848b48                   // mov    rax, qword [rsp + 192]
	LONG $0x0654b60f; BYTE $0x14               // movzx    edx, byte [rsi + rax + 20]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0xeb0f4166; BYTE $0xee               // por    xmm5, xmm14
	LONG $0x6c7f0f66; WORD $0x7024             // movdqa    oword [rsp + 112], xmm5
	LONG $0x6f0f4566; BYTE $0xeb               // movdqa    xmm13, xmm11
	LONG $0x640f4566; BYTE $0xe8               // pcmpgtb    xmm13, xmm8
	LONG $0x0654b60f; BYTE $0x15               // movzx    edx, byte [rsi + rax + 21]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	QUAD $0x133e7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r15 + 19], 12
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI10_16] */
	LONG $0xfc0f4566; BYTE $0xe9               // paddb    xmm13, xmm9
	LONG $0x6f0f4166; BYTE $0xeb               // movdqa    xmm5, xmm11
	LONG $0x640f4166; BYTE $0xea               // pcmpgtb    xmm5, xmm10
	LONG $0x6f0f4566; BYTE $0xcb               // movdqa    xmm9, xmm11
	LONG $0x640f4466; BYTE $0xc9               // pcmpgtb    xmm9, xmm1
	LONG $0x0654b60f; BYTE $0x16               // movzx    edx, byte [rsi + rax + 22]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x13167c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdx + 19], 13
	QUAD $0x00000110addf0f66                   // pandn    xmm5, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x0001208ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xeb0f4466; BYTE $0xcd               // por    xmm9, xmm5
	LONG $0x6f0f4166; BYTE $0xcb               // movdqa    xmm1, xmm11
	LONG $0x640f4166; BYTE $0xcc               // pcmpgtb    xmm1, xmm12
	LONG $0x0654b60f; BYTE $0x17               // movzx    edx, byte [rsi + rax + 23]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	QUAD $0x000001308ddf0f66                   // pandn    xmm1, oword 304[rbp] /* [rip + .LCPI10_19] */
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	LONG $0x0654b60f; BYTE $0x19               // movzx    edx, byte [rsi + rax + 25]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x13067c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r8 + 19], 14
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI10_22] */
	LONG $0xeb0f4166; BYTE $0xcd               // por    xmm1, xmm13
	LONG $0x6f0f4566; BYTE $0xf3               // movdqa    xmm14, xmm11
	LONG $0x640f4466; BYTE $0xf2               // pcmpgtb    xmm14, xmm2
	LONG $0x6f0f4566; BYTE $0xeb               // movdqa    xmm13, xmm11
	LONG $0x640f4466; BYTE $0xec               // pcmpgtb    xmm13, xmm4
	LONG $0x0654b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rax + 26]
	LONG $0x6e0f4466; BYTE $0xe2               // movd    xmm12, edx
	QUAD $0x13267c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r12 + 19], 15
	QUAD $0x000140b5df0f4466; BYTE $0x00       // pandn    xmm14, oword 320[rbp] /* [rip + .LCPI10_20] */
	QUAD $0x000150addf0f4466; BYTE $0x00       // pandn    xmm13, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xeb0f4566; BYTE $0xee               // por    xmm13, xmm14
	LONG $0x6f0f4166; BYTE $0xe3               // movdqa    xmm4, xmm11
	LONG $0x6f0f4566; BYTE $0xf3               // movdqa    xmm14, xmm11
	LONG $0x640f4466; BYTE $0xf6               // pcmpgtb    xmm14, xmm6
	LONG $0x0654b60f; BYTE $0x1b               // movzx    edx, byte [rsi + rax + 27]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	LONG $0xdf0f4466; WORD $0x6075             // pandn    xmm14, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xeb0f4566; BYTE $0xf5               // por    xmm14, xmm13
	LONG $0x0654b60f; BYTE $0x1c               // movzx    edx, byte [rsi + rax + 28]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	LONG $0xeb0f4466; BYTE $0xf1               // por    xmm14, xmm1
	LONG $0x640f4466; BYTE $0xdb               // pcmpgtb    xmm11, xmm3
	LONG $0x0654b60f; BYTE $0x1d               // movzx    edx, byte [rsi + rax + 29]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	QUAD $0x0001009ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 256[rbp] /* [rip + .LCPI10_16] */
	QUAD $0x0150249cfc0f4466; WORD $0x0000     // paddb    xmm11, oword [rsp + 336]
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xcf640f66                           // pcmpgtb    xmm1, xmm7
	LONG $0x6f0f4466; BYTE $0xec               // movdqa    xmm13, xmm4
	LONG $0xfc6f0f66                           // movdqa    xmm7, xmm4
	LONG $0x640f4566; BYTE $0xef               // pcmpgtb    xmm13, xmm15
	LONG $0x0654b60f; BYTE $0x1e               // movzx    edx, byte [rsi + rax + 30]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0x0654b60f; BYTE $0x1f               // movzx    edx, byte [rsi + rax + 31]
	QUAD $0x000001108ddf0f66                   // pandn    xmm1, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xeb0f4466; BYTE $0xe9               // por    xmm13, xmm1
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x01140644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 20], 1
	QUAD $0x150644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rax + 21], 1
	QUAD $0x160654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rax + 22], 1
	QUAD $0x0117066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 23], 1
	QUAD $0x19064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 25], 1
	QUAD $0x1a0664203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rsi + rax + 26], 1
	QUAD $0x011b0654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 27], 1
	QUAD $0x011c0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 28], 1
	QUAD $0x011d065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 29], 1
	QUAD $0x011e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 30], 1
	QUAD $0x1f067c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rax + 31], 1
	QUAD $0x142e44203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rsi + r13 + 20], 2
	QUAD $0x152e44203a0f4666; BYTE $0x02       // pinsrb    xmm8, byte [rsi + r13 + 21], 2
	QUAD $0x162e54203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r13 + 22], 2
	QUAD $0x172e6c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r13 + 23], 2
	QUAD $0x192e4c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rsi + r13 + 25], 2
	QUAD $0x1a2e64203a0f4666; BYTE $0x02       // pinsrb    xmm12, byte [rsi + r13 + 26], 2
	QUAD $0x1b2e54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rsi + r13 + 27], 2
	QUAD $0x1c2e74203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rsi + r13 + 28], 2
	QUAD $0x1d2e5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r13 + 29], 2
	QUAD $0x1e2e64203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rsi + r13 + 30], 2
	QUAD $0x1f2e7c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rsi + r13 + 31], 2
	QUAD $0x000000a024948b48                   // mov    rdx, qword [rsp + 160]
	QUAD $0x03141644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 20], 3
	QUAD $0x151644203a0f4466; BYTE $0x03       // pinsrb    xmm8, byte [rsi + rdx + 21], 3
	QUAD $0x161654203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rsi + rdx + 22], 3
	QUAD $0x0317166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 23], 3
	QUAD $0x19164c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rsi + rdx + 25], 3
	QUAD $0x1a1664203a0f4466; BYTE $0x03       // pinsrb    xmm12, byte [rsi + rdx + 26], 3
	QUAD $0x031b1654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 27], 3
	QUAD $0x031c1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 28], 3
	QUAD $0x031d165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 29], 3
	QUAD $0x031e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 30], 3
	QUAD $0x1f167c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rsi + rdx + 31], 3
	QUAD $0x0000008024948b48                   // mov    rdx, qword [rsp + 128]
	QUAD $0x04141644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 20], 4
	QUAD $0x151644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rdx + 21], 4
	QUAD $0x161654203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rdx + 22], 4
	QUAD $0x0417166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 23], 4
	QUAD $0x19164c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rdx + 25], 4
	QUAD $0x1a1664203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rdx + 26], 4
	QUAD $0x041b1654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 27], 4
	QUAD $0x041c1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 28], 4
	QUAD $0x041d165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 29], 4
	QUAD $0x041e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 30], 4
	QUAD $0x1f167c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rdx + 31], 4
	QUAD $0x05140e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 20], 5
	QUAD $0x150e44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rcx + 21], 5
	QUAD $0x160e54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rcx + 22], 5
	QUAD $0x05170e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 23], 5
	QUAD $0x190e4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rsi + rcx + 25], 5
	QUAD $0x1a0e64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rcx + 26], 5
	QUAD $0x051b0e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 27], 5
	QUAD $0x051c0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 28], 5
	QUAD $0x051d0e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 29], 5
	QUAD $0x051e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 30], 5
	QUAD $0x1f0e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rcx + 31], 5
	QUAD $0x143644203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r14 + 20], 6
	QUAD $0x153644203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rsi + r14 + 21], 6
	QUAD $0x163654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r14 + 22], 6
	QUAD $0x17366c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r14 + 23], 6
	QUAD $0x19364c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rsi + r14 + 25], 6
	QUAD $0x1a3664203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r14 + 26], 6
	QUAD $0x1b3654203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r14 + 27], 6
	QUAD $0x1c3674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r14 + 28], 6
	QUAD $0x1d365c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r14 + 29], 6
	QUAD $0x1e3664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r14 + 30], 6
	QUAD $0x1f367c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rsi + r14 + 31], 6
	QUAD $0x07141e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 20], 7
	QUAD $0x151e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 21], 7
	QUAD $0x161e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 22], 7
	QUAD $0x07171e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 23], 7
	QUAD $0x191e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rbx + 25], 7
	QUAD $0x1a1e64203a0f4466; BYTE $0x07       // pinsrb    xmm12, byte [rsi + rbx + 26], 7
	QUAD $0x071b1e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 27], 7
	QUAD $0x071c1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 28], 7
	QUAD $0x071d1e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 29], 7
	QUAD $0x071e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 30], 7
	QUAD $0x1f1e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 31], 7
	QUAD $0x141e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r11 + 20], 8
	QUAD $0x151e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r11 + 21], 8
	QUAD $0x161e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r11 + 22], 8
	QUAD $0x171e6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r11 + 23], 8
	QUAD $0x191e4c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r11 + 25], 8
	QUAD $0x1a1e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r11 + 26], 8
	QUAD $0x1b1e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r11 + 27], 8
	QUAD $0x1c1e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r11 + 28], 8
	QUAD $0x1d1e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 29], 8
	QUAD $0x1e1e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r11 + 30], 8
	QUAD $0x1f1e7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r11 + 31], 8
	QUAD $0x141644203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r10 + 20], 9
	QUAD $0x151644203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r10 + 21], 9
	QUAD $0x161654203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r10 + 22], 9
	QUAD $0x17166c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r10 + 23], 9
	QUAD $0x19164c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r10 + 25], 9
	QUAD $0x1a1664203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r10 + 26], 9
	QUAD $0x1b1654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r10 + 27], 9
	QUAD $0x1c1674203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r10 + 28], 9
	QUAD $0x1d165c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r10 + 29], 9
	QUAD $0x1e1664203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r10 + 30], 9
	QUAD $0x1f167c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r10 + 31], 9
	QUAD $0x0000011024948b4c                   // mov    r10, qword [rsp + 272]
	QUAD $0x141644203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r10 + 20], 10
	QUAD $0x151644203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r10 + 21], 10
	QUAD $0x161654203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r10 + 22], 10
	QUAD $0x17166c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r10 + 23], 10
	QUAD $0x19164c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r10 + 25], 10
	QUAD $0x1a1664203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r10 + 26], 10
	QUAD $0x1b1654203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r10 + 27], 10
	QUAD $0x1c1674203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r10 + 28], 10
	QUAD $0x1d165c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r10 + 29], 10
	QUAD $0x1e1664203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r10 + 30], 10
	QUAD $0x1f167c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r10 + 31], 10
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x141644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r10 + 20], 11
	QUAD $0x151644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r10 + 21], 11
	QUAD $0x161654203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r10 + 22], 11
	QUAD $0x17166c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r10 + 23], 11
	QUAD $0x19164c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r10 + 25], 11
	QUAD $0x1a1664203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r10 + 26], 11
	QUAD $0x1b1654203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r10 + 27], 11
	QUAD $0x1c1674203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r10 + 28], 11
	QUAD $0x1d165c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r10 + 29], 11
	QUAD $0x1e1664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r10 + 30], 11
	QUAD $0x1f167c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r10 + 31], 11
	QUAD $0x143e44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r15 + 20], 12
	QUAD $0x153e44203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r15 + 21], 12
	QUAD $0x163e54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r15 + 22], 12
	QUAD $0x173e6c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r15 + 23], 12
	QUAD $0x193e4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r15 + 25], 12
	QUAD $0x1a3e64203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + r15 + 26], 12
	QUAD $0x1b3e54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r15 + 27], 12
	QUAD $0x1c3e74203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r15 + 28], 12
	QUAD $0x1d3e5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r15 + 29], 12
	QUAD $0x1e3e64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r15 + 30], 12
	QUAD $0x1f3e7c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r15 + 31], 12
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x0d140644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 20], 13
	QUAD $0x150644203a0f4466; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + rax + 21], 13
	QUAD $0x160654203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + rax + 22], 13
	QUAD $0x0d17066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 23], 13
	QUAD $0x19064c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + rax + 25], 13
	QUAD $0x1a0664203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rax + 26], 13
	QUAD $0x0d1b0654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 27], 13
	QUAD $0x0d1c0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 28], 13
	QUAD $0x0d1d065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 29], 13
	QUAD $0x0d1e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 30], 13
	QUAD $0x1f067c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rax + 31], 13
	QUAD $0x140644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r8 + 20], 14
	QUAD $0x150644203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + r8 + 21], 14
	QUAD $0x160654203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + r8 + 22], 14
	QUAD $0x17066c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rsi + r8 + 23], 14
	QUAD $0x19064c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + r8 + 25], 14
	QUAD $0x1a0664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r8 + 26], 14
	QUAD $0x1b0654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r8 + 27], 14
	QUAD $0x1c0674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r8 + 28], 14
	QUAD $0x1d065c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rsi + r8 + 29], 14
	QUAD $0x1e0664203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r8 + 30], 14
	QUAD $0x1f067c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r8 + 31], 14
	QUAD $0x142644203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r12 + 20], 15
	QUAD $0x152644203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r12 + 21], 15
	QUAD $0x162654203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r12 + 22], 15
	QUAD $0x17266c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r12 + 23], 15
	QUAD $0x19264c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r12 + 25], 15
	QUAD $0x1a2664203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + r12 + 26], 15
	LONG $0xcf6f0f66                           // movdqa    xmm1, xmm7
	LONG $0xc8640f66                           // pcmpgtb    xmm1, xmm0
	QUAD $0x1b2654203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r12 + 27], 15
	QUAD $0x000001308ddf0f66                   // pandn    xmm1, oword 304[rbp] /* [rip + .LCPI10_19] */
	LONG $0xeb0f4166; BYTE $0xcd               // por    xmm1, xmm13
	LONG $0x760f4566; BYTE $0xed               // pcmpeqd    xmm13, xmm13
	LONG $0xf80f4566; BYTE $0xdd               // psubb    xmm11, xmm13
	LONG $0xeb0f4166; BYTE $0xcb               // por    xmm1, xmm11
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x640f4166; BYTE $0xc0               // pcmpgtb    xmm0, xmm8
	LONG $0x6f0f4466; BYTE $0xc7               // movdqa    xmm8, xmm7
	LONG $0x640f4166; BYTE $0xfa               // pcmpgtb    xmm7, xmm10
	QUAD $0x000140956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xdf0f4166; BYTE $0xc2               // pandn    xmm0, xmm10
	QUAD $0x0001509d6f0f4466; BYTE $0x00       // movdqa    xmm11, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xdf0f4166; BYTE $0xfb               // pandn    xmm7, xmm11
	LONG $0xf8eb0f66                           // por    xmm7, xmm0
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc5640f66                           // pcmpgtb    xmm0, xmm5
	QUAD $0x1c2674203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r12 + 28], 15
	LONG $0x6d6f0f66; BYTE $0x60               // movdqa    xmm5, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xc5df0f66                           // pandn    xmm0, xmm5
	LONG $0xc7eb0f66                           // por    xmm0, xmm7
	QUAD $0x1d265c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r12 + 29], 15
	LONG $0xc1eb0f66                           // por    xmm0, xmm1
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0x640f4166; BYTE $0xc9               // pcmpgtb    xmm1, xmm9
	QUAD $0x000001008ddf0f66                   // pandn    xmm1, oword 256[rbp] /* [rip + .LCPI10_16] */
	QUAD $0x000120248cfc0f66; BYTE $0x00       // paddb    xmm1, oword [rsp + 288]
	LONG $0x6f0f4166; BYTE $0xe8               // movdqa    xmm5, xmm8
	LONG $0x640f4166; BYTE $0xec               // pcmpgtb    xmm5, xmm12
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0xfa640f66                           // pcmpgtb    xmm7, xmm2
	QUAD $0x00000110addf0f66                   // pandn    xmm5, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x00000120bddf0f66                   // pandn    xmm7, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0xd6640f66                           // pcmpgtb    xmm2, xmm6
	QUAD $0x1e2664203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r12 + 30], 15
	QUAD $0x0000013095df0f66                   // pandn    xmm2, oword 304[rbp] /* [rip + .LCPI10_19] */
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0xf80f4166; BYTE $0xcd               // psubb    xmm1, xmm13
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xcb640f66                           // pcmpgtb    xmm1, xmm3
	LONG $0x6f0f4166; BYTE $0xd8               // movdqa    xmm3, xmm8
	LONG $0xdc640f66                           // pcmpgtb    xmm3, xmm4
	QUAD $0x1f267c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r12 + 31], 15
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	LONG $0xdf0f4166; BYTE $0xca               // pandn    xmm1, xmm10
	LONG $0xdf0f4166; BYTE $0xdb               // pandn    xmm3, xmm11
	LONG $0xd9eb0f66                           // por    xmm3, xmm1
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0x640f4166; BYTE $0xcf               // pcmpgtb    xmm1, xmm15
	LONG $0x4ddf0f66; BYTE $0x60               // pandn    xmm1, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xcbeb0f66                           // por    xmm1, xmm3
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0xd1600f66                           // punpcklbw    xmm2, xmm1
	LONG $0x6c6f0f66; WORD $0x7024             // movdqa    xmm5, oword [rsp + 112]
	LONG $0xdd6f0f66                           // movdqa    xmm3, xmm5
	LONG $0x600f4166; BYTE $0xde               // punpcklbw    xmm3, xmm14
	LONG $0xe36f0f66                           // movdqa    xmm4, xmm3
	LONG $0xe2610f66                           // punpcklwd    xmm4, xmm2
	LONG $0xda690f66                           // punpckhwd    xmm3, xmm2
	LONG $0xc1680f66                           // punpckhbw    xmm0, xmm1
	LONG $0x680f4166; BYTE $0xee               // punpckhbw    xmm5, xmm14
	LONG $0xcd6f0f66                           // movdqa    xmm1, xmm5
	LONG $0xc8610f66                           // punpcklwd    xmm1, xmm0
	LONG $0xe8690f66                           // punpckhwd    xmm5, xmm0
	QUAD $0x00000100248c8b48                   // mov    rcx, qword [rsp + 256]
	LONG $0x7f0f41f3; WORD $0x8e6c; BYTE $0x30 // movdqu    oword [r14 + 4*rcx + 48], xmm5
	LONG $0x7f0f41f3; WORD $0x8e4c; BYTE $0x20 // movdqu    oword [r14 + 4*rcx + 32], xmm1
	LONG $0x7f0f41f3; WORD $0x8e5c; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm3
	LONG $0x7f0f41f3; WORD $0x8e24             // movdqu    oword [r14 + 4*rcx], xmm4
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8949; BYTE $0xc8                   // mov    r8, rcx
	QUAD $0x000000f0248c3b48                   // cmp    rcx, qword [rsp + 240]
	JNE  LBB10_86
	QUAD $0x000001b024bc8b4c                   // mov    r15, qword [rsp + 432]
	QUAD $0x000000f024bc3b4c                   // cmp    r15, qword [rsp + 240]
	LONG $0x245c8a44; BYTE $0x08               // mov    r11b, byte [rsp + 8]
	QUAD $0x0000017024b48b48                   // mov    rsi, qword [rsp + 368]
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	JNE  LBB10_88
	JMP  LBB10_91

LBB10_66:
	LONG $0xf0e78349                     // and    r15, -16
	WORD $0x894c; BYTE $0xf8             // mov    rax, r15
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xf0             // add    rax, rsi
	QUAD $0x0000018824848948             // mov    qword [rsp + 392], rax
	QUAD $0x000001a024bc894c             // mov    qword [rsp + 416], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	QUAD $0x000000e024848948             // mov    qword [rsp + 224], rax
	LONG $0xc3b60f41                     // movzx    eax, r11b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000190248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 400], xmm1
	WORD $0xc031                         // xor    eax, eax
	QUAD $0x0000016024b4894c             // mov    qword [rsp + 352], r14

LBB10_67:
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	QUAD $0x0000015024848948                   // mov    qword [rsp + 336], rax
	LONG $0x05e1c149                           // shl    r9, 5
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	LONG $0x244c894c; BYTE $0x30               // mov    qword [rsp + 48], r9
	WORD $0x894d; BYTE $0xce                   // mov    r14, r9
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	WORD $0x894d; BYTE $0xca                   // mov    r10, r9
	WORD $0x894d; BYTE $0xcc                   // mov    r12, r9
	WORD $0x894d; BYTE $0xcb                   // mov    r11, r9
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	QUAD $0x000000d0248c894c                   // mov    qword [rsp + 208], r9
	LONG $0x0cb60f42; BYTE $0x0e               // movzx    ecx, byte [rsi + r9]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x4cb60f42; WORD $0x010e             // movzx    ecx, byte [rsi + r9 + 1]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x4cb60f42; WORD $0x020e             // movzx    ecx, byte [rsi + r9 + 2]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x4cb60f42; WORD $0x030e             // movzx    ecx, byte [rsi + r9 + 3]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x4cb60f42; WORD $0x040e             // movzx    ecx, byte [rsi + r9 + 4]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x4cb60f42; WORD $0x050e             // movzx    ecx, byte [rsi + r9 + 5]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x4cb60f42; WORD $0x060e             // movzx    ecx, byte [rsi + r9 + 6]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x4cb60f42; WORD $0x070e             // movzx    ecx, byte [rsi + r9 + 7]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	QUAD $0x00014024947f0f66; BYTE $0x00       // movdqa    oword [rsp + 320], xmm2
	LONG $0x4cb60f42; WORD $0x080e             // movzx    ecx, byte [rsi + r9 + 8]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x4cb60f42; WORD $0x090e             // movzx    ecx, byte [rsi + r9 + 9]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	QUAD $0x00011024947f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm2
	LONG $0x4cb60f42; WORD $0x0a0e             // movzx    ecx, byte [rsi + r9 + 10]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x4cb60f42; WORD $0x0b0e             // movzx    ecx, byte [rsi + r9 + 11]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x4cb60f42; WORD $0x0c0e             // movzx    ecx, byte [rsi + r9 + 12]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x4cb60f42; WORD $0x100e             // movzx    ecx, byte [rsi + r9 + 16]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x4cb60f42; WORD $0x180e             // movzx    ecx, byte [rsi + r9 + 24]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	QUAD $0x00000090248c894c                   // mov    qword [rsp + 144], r9
	WORD $0x894d; BYTE $0xcf                   // mov    r15, r9
	LONG $0x20cf8349                           // or    r15, 32
	LONG $0x247c894c; BYTE $0x50               // mov    qword [rsp + 80], r15
	LONG $0x40cb8348                           // or    rbx, 64
	QUAD $0x00000080249c8948                   // mov    qword [rsp + 128], rbx
	LONG $0x60cf8348                           // or    rdi, 96
	QUAD $0x000000c024bc8948                   // mov    qword [rsp + 192], rdi
	LONG $0x80ca8148; WORD $0x0000; BYTE $0x00 // or    rdx, 128
	LONG $0x24548948; BYTE $0x70               // mov    qword [rsp + 112], rdx
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	LONG $0xa0c98148; WORD $0x0000; BYTE $0x00 // or    rcx, 160
	LONG $0xc0ce8149; WORD $0x0000; BYTE $0x00 // or    r14, 192
	LONG $0xe0c88149; WORD $0x0000; BYTE $0x00 // or    r8, 224
	LONG $0x00ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 256
	LONG $0x20cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 288
	LONG $0x40cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 320
	LONG $0x60cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 352
	QUAD $0x000000a024ac894c                   // mov    qword [rsp + 160], r13
	QUAD $0x000000d024ac8b4c                   // mov    r13, qword [rsp + 208]
	LONG $0x80cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 384
	QUAD $0x000000d024ac894c                   // mov    qword [rsp + 208], r13
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x01a00d48; WORD $0x0000             // or    rax, 416
	LONG $0x24448948; BYTE $0x60               // mov    qword [rsp + 96], rax
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x01c00d48; WORD $0x0000             // or    rax, 448
	LONG $0x24448948; BYTE $0x10               // mov    qword [rsp + 16], rax
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	LONG $0x01e00d48; WORD $0x0000             // or    rax, 480
	LONG $0x24448948; BYTE $0x20               // mov    qword [rsp + 32], rax
	QUAD $0x013e04203a0f4266                   // pinsrb    xmm0, byte [rsi + r15], 1
	LONG $0x203a0f66; WORD $0x1e04; BYTE $0x02 // pinsrb    xmm0, byte [rsi + rbx], 2
	LONG $0x203a0f66; WORD $0x3e04; BYTE $0x03 // pinsrb    xmm0, byte [rsi + rdi], 3
	LONG $0x203a0f66; WORD $0x1604; BYTE $0x04 // pinsrb    xmm0, byte [rsi + rdx], 4
	LONG $0x244c8948; BYTE $0x30               // mov    qword [rsp + 48], rcx
	LONG $0x203a0f66; WORD $0x0e04; BYTE $0x05 // pinsrb    xmm0, byte [rsi + rcx], 5
	QUAD $0x063604203a0f4266                   // pinsrb    xmm0, byte [rsi + r14], 6
	QUAD $0x070604203a0f4266                   // pinsrb    xmm0, byte [rsi + r8], 7
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	QUAD $0x081604203a0f4266                   // pinsrb    xmm0, byte [rsi + r10], 8
	QUAD $0x092604203a0f4266                   // pinsrb    xmm0, byte [rsi + r12], 9
	QUAD $0x0a1e04203a0f4266                   // pinsrb    xmm0, byte [rsi + r11], 10
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x0b3e04203a0f4266                   // pinsrb    xmm0, byte [rsi + r15], 11
	QUAD $0x0c2e04203a0f4266                   // pinsrb    xmm0, byte [rsi + r13], 12
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	LONG $0x203a0f66; WORD $0x3e04; BYTE $0x0d // pinsrb    xmm0, byte [rsi + rdi], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	LONG $0x203a0f66; WORD $0x0e04; BYTE $0x0e // pinsrb    xmm0, byte [rsi + rcx], 14
	LONG $0x203a0f66; WORD $0x0604; BYTE $0x0f // pinsrb    xmm0, byte [rsi + rax], 15
	LONG $0x6f0f4466; BYTE $0xc8               // movdqa    xmm9, xmm0
	QUAD $0x00019024bc6f0f66; BYTE $0x00       // movdqa    xmm7, oword [rsp + 400]
	LONG $0xde0f4466; BYTE $0xcf               // pmaxub    xmm9, xmm7
	LONG $0x6f0f4466; BYTE $0xff               // movdqa    xmm15, xmm7
	LONG $0x740f4466; BYTE $0xc8               // pcmpeqb    xmm9, xmm0
	LONG $0x6f0f4166; BYTE $0xc1               // movdqa    xmm0, xmm9
	LONG $0x24548b4c; BYTE $0x50               // mov    r10, qword [rsp + 80]
	QUAD $0x01165c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rsi + r10 + 1], 1
	QUAD $0x011e5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rbx + 1], 2
	QUAD $0x000000c024ac8b4c                   // mov    r13, qword [rsp + 192]
	QUAD $0x012e5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r13 + 1], 3
	QUAD $0x01165c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rdx + 1], 4
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x010e5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rsi + rcx + 1], 5
	QUAD $0x01365c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r14 + 1], 6
	QUAD $0x01065c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rsi + r8 + 1], 7
	QUAD $0x010e5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r9 + 1], 8
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x0000013024a4894c                   // mov    qword [rsp + 304], r12
	QUAD $0x01265c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r12 + 1], 9
	QUAD $0x011e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r11 + 1], 10
	QUAD $0x013e5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r15 + 1], 11
	QUAD $0x000000d024a48b4c                   // mov    r12, qword [rsp + 208]
	QUAD $0x01265c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r12 + 1], 12
	QUAD $0x013e5c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + rdi + 1], 13
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x01265c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + r12 + 1], 14
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x013e5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + rdi + 1], 15
	QUAD $0x08166c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rsi + r10 + 8], 1
	QUAD $0x081e6c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rsi + rbx + 8], 2
	QUAD $0x082e6c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rsi + r13 + 8], 3
	QUAD $0x08166c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rsi + rdx + 8], 4
	QUAD $0x080e6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rsi + rcx + 8], 5
	QUAD $0x08366c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rsi + r14 + 8], 6
	QUAD $0x08066c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rsi + r8 + 8], 7
	QUAD $0x080e6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rsi + r9 + 8], 8
	QUAD $0x08066c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rsi + rax + 8], 9
	QUAD $0x081e6c203a0f4666; BYTE $0x0a       // pinsrb    xmm13, byte [rsi + r11 + 8], 10
	QUAD $0x083e6c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rsi + r15 + 8], 11
	QUAD $0x000000d024848b48                   // mov    rax, qword [rsp + 208]
	QUAD $0x08066c203a0f4466; BYTE $0x0c       // pinsrb    xmm13, byte [rsi + rax + 8], 12
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x08066c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rsi + rax + 8], 13
	QUAD $0x08266c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rsi + r12 + 8], 14
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x08066c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rsi + rax + 8], 15
	LONG $0x6f0f4566; BYTE $0xcd               // movdqa    xmm9, xmm13
	LONG $0xde0f4466; BYTE $0xcf               // pmaxub    xmm9, xmm7
	LONG $0x740f4566; BYTE $0xcd               // pcmpeqb    xmm9, xmm13
	QUAD $0x101664203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rsi + r10 + 16], 1
	QUAD $0x101e64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rsi + rbx + 16], 2
	QUAD $0x102e64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rsi + r13 + 16], 3
	QUAD $0x101664203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rsi + rdx + 16], 4
	QUAD $0x100e64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rsi + rcx + 16], 5
	QUAD $0x103664203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rsi + r14 + 16], 6
	QUAD $0x100664203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rsi + r8 + 16], 7
	WORD $0x894c; BYTE $0xc2                   // mov    rdx, r8
	QUAD $0x000001b02484894c                   // mov    qword [rsp + 432], r8
	QUAD $0x100e64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rsi + r9 + 16], 8
	QUAD $0x0000013024a48b4c                   // mov    r12, qword [rsp + 304]
	QUAD $0x102664203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rsi + r12 + 16], 9
	QUAD $0x101e64203a0f4666; BYTE $0x0a       // pinsrb    xmm12, byte [rsi + r11 + 16], 10
	QUAD $0x000000b0249c894c                   // mov    qword [rsp + 176], r11
	QUAD $0x103e64203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rsi + r15 + 16], 11
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x103e64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rsi + rdi + 16], 12
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x103e64203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rsi + rdi + 16], 13
	LONG $0x24448b4c; BYTE $0x10               // mov    r8, qword [rsp + 16]
	QUAD $0x100664203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rsi + r8 + 16], 14
	QUAD $0x100664203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rsi + rax + 16], 15
	LONG $0x6f0f4166; BYTE $0xfc               // movdqa    xmm7, xmm12
	LONG $0xde0f4166; BYTE $0xff               // pmaxub    xmm7, xmm15
	LONG $0x740f4166; BYTE $0xfc               // pcmpeqb    xmm7, xmm12
	QUAD $0x00017024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 368], xmm7
	QUAD $0x181654203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rsi + r10 + 24], 1
	QUAD $0x02181e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 24], 2
	QUAD $0x182e54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r13 + 24], 3
	LONG $0x245c8b48; BYTE $0x70               // mov    rbx, qword [rsp + 112]
	QUAD $0x04181e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 24], 4
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x181654203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rsi + r10 + 24], 5
	QUAD $0x183654203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rsi + r14 + 24], 6
	QUAD $0x07181654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 24], 7
	QUAD $0x180e54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r9 + 24], 8
	QUAD $0x182654203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r12 + 24], 9
	QUAD $0x181e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r11 + 24], 10
	QUAD $0x183e54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r15 + 24], 11
	WORD $0x894d; BYTE $0xfc                   // mov    r12, r15
	QUAD $0x0c180e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 24], 12
	QUAD $0x0d183e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 24], 13
	QUAD $0x180654203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rsi + r8 + 24], 14
	WORD $0x894d; BYTE $0xc5                   // mov    r13, r8
	QUAD $0x0f180654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 24], 15
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xde0f4166; BYTE $0xff               // pmaxub    xmm7, xmm15
	LONG $0xfa740f66                           // pcmpeqb    xmm7, xmm2
	QUAD $0x0000f024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm7
	LONG $0x6f0f4566; BYTE $0xe3               // movdqa    xmm12, xmm11
	LONG $0x6f0f4566; BYTE $0xef               // movdqa    xmm13, xmm15
	LONG $0xde0f4566; BYTE $0xe7               // pmaxub    xmm12, xmm15
	LONG $0x740f4566; BYTE $0xe3               // pcmpeqb    xmm12, xmm11
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	LONG $0x0654b60f; BYTE $0x0d               // movzx    edx, byte [rsi + rax + 13]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0x24448b4c; BYTE $0x50               // mov    r8, qword [rsp + 80]
	QUAD $0x020674203a0f4666; BYTE $0x01       // pinsrb    xmm14, byte [rsi + r8 + 2], 1
	QUAD $0x0000008024bc8b4c                   // mov    r15, qword [rsp + 128]
	QUAD $0x023e74203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rsi + r15 + 2], 2
	QUAD $0x000000c024bc8b48                   // mov    rdi, qword [rsp + 192]
	QUAD $0x023e74203a0f4466; BYTE $0x03       // pinsrb    xmm14, byte [rsi + rdi + 2], 3
	WORD $0x8949; BYTE $0xdb                   // mov    r11, rbx
	QUAD $0x021e74203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rbx + 2], 4
	QUAD $0x021674203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rsi + r10 + 2], 5
	QUAD $0x023674203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r14 + 2], 6
	QUAD $0x000001b0249c8b48                   // mov    rbx, qword [rsp + 432]
	QUAD $0x021e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rbx + 2], 7
	WORD $0x894c; BYTE $0xca                   // mov    rdx, r9
	QUAD $0x00000100248c894c                   // mov    qword [rsp + 256], r9
	QUAD $0x020e74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rsi + r9 + 2], 8
	QUAD $0x00000130248c8b4c                   // mov    r9, qword [rsp + 304]
	QUAD $0x020e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 2], 9
	QUAD $0x000000b024848b48                   // mov    rax, qword [rsp + 176]
	QUAD $0x020674203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + rax + 2], 10
	QUAD $0x022674203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + r12 + 2], 11
	WORD $0x8949; BYTE $0xcc                   // mov    r12, rcx
	QUAD $0x020e74203a0f4466; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + rcx + 2], 12
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x020e74203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + rcx + 2], 13
	QUAD $0x022e74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + r13 + 2], 14
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x022e74203a0f4666; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + r13 + 2], 15
	QUAD $0x03066c203a0f4266; BYTE $0x01       // pinsrb    xmm5, byte [rsi + r8 + 3], 1
	QUAD $0x033e6c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rsi + r15 + 3], 2
	QUAD $0x03033e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 3], 3
	WORD $0x8949; BYTE $0xf8                   // mov    r8, rdi
	QUAD $0x031e6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rsi + r11 + 3], 4
	QUAD $0x03166c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rsi + r10 + 3], 5
	QUAD $0x03366c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rsi + r14 + 3], 6
	QUAD $0x07031e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 3], 7
	QUAD $0x0803166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 3], 8
	QUAD $0x030e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 3], 9
	QUAD $0x0a03066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 3], 10
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x033e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r15 + 3], 11
	QUAD $0x03266c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r12 + 3], 12
	QUAD $0x0d030e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 3], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e03066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 3], 14
	QUAD $0x032e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r13 + 3], 15
	QUAD $0x00000100956f0f66                   // movdqa    xmm2, oword 256[rbp] /* [rip + .LCPI10_16] */
	LONG $0xdb0f4466; BYTE $0xe2               // pand    xmm12, xmm2
	LONG $0xf80f4466; BYTE $0xe0               // psubb    xmm12, xmm0
	LONG $0x6f0f4566; BYTE $0xde               // movdqa    xmm11, xmm14
	LONG $0xde0f4566; BYTE $0xdd               // pmaxub    xmm11, xmm13
	LONG $0x740f4566; BYTE $0xde               // pcmpeqb    xmm11, xmm14
	LONG $0xd56f0f66                           // movdqa    xmm2, xmm5
	LONG $0xde0f4166; BYTE $0xd5               // pmaxub    xmm2, xmm13
	LONG $0xd5740f66                           // pcmpeqb    xmm2, xmm5
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	LONG $0x0654b60f; BYTE $0x0e               // movzx    edx, byte [rsi + rax + 14]
	LONG $0x6e0f4466; BYTE $0xf2               // movd    xmm14, edx
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x01043e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 4], 1
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x0204065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 4], 2
	QUAD $0x04065c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r8 + 4], 3
	QUAD $0x041e5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rsi + r11 + 4], 4
	WORD $0x894c; BYTE $0xd1                   // mov    rcx, r10
	QUAD $0x04165c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r10 + 4], 5
	QUAD $0x04365c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r14 + 4], 6
	QUAD $0x07041e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 4], 7
	QUAD $0x0000010024948b4c                   // mov    r10, qword [rsp + 256]
	QUAD $0x04165c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r10 + 4], 8
	QUAD $0x040e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 4], 9
	QUAD $0x000000b024848b4c                   // mov    r8, qword [rsp + 176]
	QUAD $0x04065c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r8 + 4], 10
	QUAD $0x043e5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r15 + 4], 11
	QUAD $0x04265c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r12 + 4], 12
	LONG $0x245c8b4c; BYTE $0x60               // mov    r11, qword [rsp + 96]
	QUAD $0x041e5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r11 + 4], 13
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0e04165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 4], 14
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x042e5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r13 + 4], 15
	QUAD $0x01053e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 5], 1
	QUAD $0x0205064c203a0f66                   // pinsrb    xmm1, byte [rsi + rax + 5], 2
	QUAD $0x000000c024bc8b48                   // mov    rdi, qword [rsp + 192]
	QUAD $0x03053e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 5], 3
	LONG $0x247c8b48; BYTE $0x70               // mov    rdi, qword [rsp + 112]
	QUAD $0x04053e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rdi + 5], 4
	QUAD $0x05050e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rcx + 5], 5
	QUAD $0x05364c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rsi + r14 + 5], 6
	QUAD $0x07051e4c203a0f66                   // pinsrb    xmm1, byte [rsi + rbx + 5], 7
	QUAD $0x05164c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rsi + r10 + 5], 8
	WORD $0x894c; BYTE $0xd1                   // mov    rcx, r10
	QUAD $0x050e4c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rsi + r9 + 5], 9
	QUAD $0x05064c203a0f4266; BYTE $0x0a       // pinsrb    xmm1, byte [rsi + r8 + 5], 10
	QUAD $0x053e4c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rsi + r15 + 5], 11
	WORD $0x894d; BYTE $0xfa                   // mov    r10, r15
	QUAD $0x05264c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rsi + r12 + 5], 12
	QUAD $0x051e4c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rsi + r11 + 5], 13
	QUAD $0x0e05164c203a0f66                   // pinsrb    xmm1, byte [rsi + rdx + 5], 14
	QUAD $0x00000110ad6f0f66                   // movdqa    xmm5, oword 272[rbp] /* [rip + .LCPI10_17] */
	LONG $0xdb0f4466; BYTE $0xdd               // pand    xmm11, xmm5
	QUAD $0x00000120ad6f0f66                   // movdqa    xmm5, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xd5db0f66                           // pand    xmm2, xmm5
	LONG $0xeb0f4166; BYTE $0xd3               // por    xmm2, xmm11
	QUAD $0x0000009024bc8b48                   // mov    rdi, qword [rsp + 144]
	LONG $0x3e54b60f; BYTE $0x0f               // movzx    edx, byte [rsi + rdi + 15]
	LONG $0x6e0f4466; BYTE $0xda               // movd    xmm11, edx
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x052e4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rsi + r13 + 5], 15
	LONG $0xeb0f4166; BYTE $0xd4               // por    xmm2, xmm12
	LONG $0x6f0f4466; BYTE $0xe3               // movdqa    xmm12, xmm3
	LONG $0xde0f4566; BYTE $0xe5               // pmaxub    xmm12, xmm13
	LONG $0x740f4466; BYTE $0xe3               // pcmpeqb    xmm12, xmm3
	LONG $0xe96f0f66                           // movdqa    xmm5, xmm1
	LONG $0xde0f4166; BYTE $0xed               // pmaxub    xmm5, xmm13
	LONG $0xe9740f66                           // pcmpeqb    xmm5, xmm1
	LONG $0x3e54b60f; BYTE $0x11               // movzx    edx, byte [rsi + rdi + 17]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x24448b4c; BYTE $0x50               // mov    r8, qword [rsp + 80]
	QUAD $0x060664203a0f4266; BYTE $0x01       // pinsrb    xmm4, byte [rsi + r8 + 6], 1
	QUAD $0x02060664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 6], 2
	QUAD $0x000000c024bc8b48                   // mov    rdi, qword [rsp + 192]
	QUAD $0x03063e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 6], 3
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x04060664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 6], 4
	LONG $0x245c8b4c; BYTE $0x30               // mov    r11, qword [rsp + 48]
	QUAD $0x061e64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rsi + r11 + 6], 5
	QUAD $0x063664203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r14 + 6], 6
	QUAD $0x07061e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 6], 7
	QUAD $0x08060e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 6], 8
	QUAD $0x060e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 6], 9
	QUAD $0x000000b024bc8b4c                   // mov    r15, qword [rsp + 176]
	QUAD $0x063e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r15 + 6], 10
	QUAD $0x061664203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r10 + 6], 11
	QUAD $0x062664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 6], 12
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x0d061664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 6], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e060e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 6], 14
	QUAD $0x062e64203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r13 + 6], 15
	QUAD $0x000140249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 320]
	QUAD $0x07065c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rsi + r8 + 7], 1
	QUAD $0x0000008024848b4c                   // mov    r8, qword [rsp + 128]
	QUAD $0x07065c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r8 + 7], 2
	QUAD $0x03073e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 7], 3
	QUAD $0x0407065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 7], 4
	WORD $0x894c; BYTE $0xdf                   // mov    rdi, r11
	QUAD $0x071e5c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r11 + 7], 5
	QUAD $0x07365c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r14 + 7], 6
	QUAD $0x0000012024b4894c                   // mov    qword [rsp + 288], r14
	QUAD $0x07071e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 7], 7
	QUAD $0x00000100249c8b4c                   // mov    r11, qword [rsp + 256]
	QUAD $0x071e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 7], 8
	QUAD $0x070e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 7], 9
	QUAD $0x073e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r15 + 7], 10
	QUAD $0x07165c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r10 + 7], 11
	QUAD $0x07265c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r12 + 7], 12
	QUAD $0x0d07165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 7], 13
	QUAD $0x0e070e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 7], 14
	QUAD $0x072e5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r13 + 7], 15
	QUAD $0x000001308d6f0f66                   // movdqa    xmm1, oword 304[rbp] /* [rip + .LCPI10_19] */
	LONG $0xdb0f4466; BYTE $0xe1               // pand    xmm12, xmm1
	QUAD $0x000001408d6f0f66                   // movdqa    xmm1, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xe9db0f66                           // pand    xmm5, xmm1
	LONG $0xeb0f4166; BYTE $0xec               // por    xmm5, xmm12
	LONG $0xcc6f0f66                           // movdqa    xmm1, xmm4
	LONG $0xde0f4166; BYTE $0xcd               // pmaxub    xmm1, xmm13
	LONG $0xcc740f66                           // pcmpeqb    xmm1, xmm4
	QUAD $0x0000009024948b4c                   // mov    r10, qword [rsp + 144]
	LONG $0x54b60f42; WORD $0x1216             // movzx    edx, byte [rsi + r10 + 18]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xcfdb0f66                           // pand    xmm1, xmm7
	LONG $0xcdeb0f66                           // por    xmm1, xmm5
	LONG $0x54b60f42; WORD $0x1316             // movzx    edx, byte [rsi + r10 + 19]
	LONG $0xea6e0f66                           // movd    xmm5, edx
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0xd36f0f66                           // movdqa    xmm2, xmm3
	LONG $0xde0f4166; BYTE $0xd5               // pmaxub    xmm2, xmm13
	LONG $0xd3740f66                           // pcmpeqb    xmm2, xmm3
	LONG $0x6f0f4466; BYTE $0xe2               // movdqa    xmm12, xmm2
	LONG $0x54b60f42; WORD $0x1416             // movzx    edx, byte [rsi + r10 + 20]
	LONG $0xd26e0f66                           // movd    xmm2, edx
	QUAD $0x000110249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 272]
	LONG $0x247c8b48; BYTE $0x50               // mov    rdi, qword [rsp + 80]
	QUAD $0x01093e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 9], 1
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x09065c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rsi + r8 + 9], 2
	QUAD $0x000000c0248c8b48                   // mov    rcx, qword [rsp + 192]
	QUAD $0x03090e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 9], 3
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x04090e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 9], 4
	LONG $0x24448b4c; BYTE $0x30               // mov    r8, qword [rsp + 48]
	QUAD $0x09065c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rsi + r8 + 9], 5
	QUAD $0x09365c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rsi + r14 + 9], 6
	QUAD $0x07091e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 9], 7
	QUAD $0x091e5c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r11 + 9], 8
	QUAD $0x090e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 9], 9
	QUAD $0x093e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r15 + 9], 10
	QUAD $0x000000a024a48b4c                   // mov    r12, qword [rsp + 160]
	QUAD $0x09265c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r12 + 9], 11
	QUAD $0x000000d024948b48                   // mov    rdx, qword [rsp + 208]
	QUAD $0x0c09165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 9], 12
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x092e5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r13 + 9], 13
	LONG $0x24548b48; BYTE $0x10               // mov    rdx, qword [rsp + 16]
	QUAD $0x0e09165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 9], 14
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0f09165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 9], 15
	LONG $0x7d6f0f66; BYTE $0x60               // movdqa    xmm7, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xdb0f4466; BYTE $0xe7               // pand    xmm12, xmm7
	LONG $0xeb0f4466; BYTE $0xe1               // por    xmm12, xmm1
	QUAD $0x011024a47f0f4466; WORD $0x0000     // movdqa    oword [rsp + 272], xmm12
	LONG $0xfb6f0f66                           // movdqa    xmm7, xmm3
	LONG $0xde0f4166; BYTE $0xfd               // pmaxub    xmm7, xmm13
	LONG $0xfb740f66                           // pcmpeqb    xmm7, xmm3
	LONG $0x54b60f42; WORD $0x1516             // movzx    edx, byte [rsi + r10 + 21]
	LONG $0xda6e0f66                           // movd    xmm3, edx
	QUAD $0x0a3e44203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rdi + 10], 1
	QUAD $0x0a0644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rax + 10], 2
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	QUAD $0x0a1644203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r10 + 10], 3
	QUAD $0x0a0e44203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rcx + 10], 4
	QUAD $0x0a0644203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rsi + r8 + 10], 5
	QUAD $0x0000012024848b48                   // mov    rax, qword [rsp + 288]
	QUAD $0x0a0644203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rax + 10], 6
	QUAD $0x0a1e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 10], 7
	QUAD $0x0a1e44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r11 + 10], 8
	QUAD $0x0a0e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 10], 9
	WORD $0x894c; BYTE $0xf8                   // mov    rax, r15
	QUAD $0x0a3e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r15 + 10], 10
	WORD $0x894c; BYTE $0xe2                   // mov    rdx, r12
	QUAD $0x0a2644203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r12 + 10], 11
	QUAD $0x000000d024a48b4c                   // mov    r12, qword [rsp + 208]
	QUAD $0x0a2644203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r12 + 10], 12
	WORD $0x894d; BYTE $0xef                   // mov    r15, r13
	QUAD $0x0a2e44203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r13 + 10], 13
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0a0e44203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rcx + 10], 14
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0a2e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r13 + 10], 15
	QUAD $0x0b3e54203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rdi + 11], 1
	QUAD $0x0b3654203a0f4666; BYTE $0x02       // pinsrb    xmm10, byte [rsi + r14 + 11], 2
	QUAD $0x0b1654203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r10 + 11], 3
	LONG $0x247c8b48; BYTE $0x70               // mov    rdi, qword [rsp + 112]
	QUAD $0x0b3e54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rdi + 11], 4
	QUAD $0x0b0654203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rsi + r8 + 11], 5
	QUAD $0x0000012024b48b4c                   // mov    r14, qword [rsp + 288]
	QUAD $0x0b3654203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rsi + r14 + 11], 6
	QUAD $0x0b1e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 11], 7
	QUAD $0x0b1e54203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r11 + 11], 8
	QUAD $0x0b0e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 11], 9
	QUAD $0x0b0654203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + rax + 11], 10
	QUAD $0x0b1654203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + rdx + 11], 11
	QUAD $0x0b2654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r12 + 11], 12
	QUAD $0x0b3e54203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r15 + 11], 13
	QUAD $0x0b0e54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rcx + 11], 14
	QUAD $0x0b2e54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r13 + 11], 15
	QUAD $0x00000100bddb0f66                   // pand    xmm7, oword 256[rbp] /* [rip + .LCPI10_16] */
	LONG $0xf80f4166; BYTE $0xf9               // psubb    xmm7, xmm9
	LONG $0x6f0f4166; BYTE $0xc8               // movdqa    xmm1, xmm8
	LONG $0xde0f4166; BYTE $0xcd               // pmaxub    xmm1, xmm13
	LONG $0x740f4166; BYTE $0xc8               // pcmpeqb    xmm1, xmm8
	LONG $0x6f0f4566; BYTE $0xca               // movdqa    xmm9, xmm10
	LONG $0xde0f4566; BYTE $0xcd               // pmaxub    xmm9, xmm13
	LONG $0x740f4566; BYTE $0xca               // pcmpeqb    xmm9, xmm10
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	LONG $0x0654b60f; BYTE $0x16               // movzx    edx, byte [rsi + rax + 22]
	LONG $0x6e0f4466; BYTE $0xd2               // movd    xmm10, edx
	LONG $0x24448b4c; BYTE $0x50               // mov    r8, qword [rsp + 80]
	QUAD $0x0c0674203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rsi + r8 + 12], 1
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x020c0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 12], 2
	QUAD $0x0c1674203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r10 + 12], 3
	WORD $0x894d; BYTE $0xd7                   // mov    r15, r10
	WORD $0x8948; BYTE $0xf9                   // mov    rcx, rdi
	QUAD $0x040c3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 12], 4
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x050c3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 12], 5
	QUAD $0x0c3674203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rsi + r14 + 12], 6
	QUAD $0x070c1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 12], 7
	QUAD $0x0c1e74203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r11 + 12], 8
	QUAD $0x0c0e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 12], 9
	QUAD $0x000000b024948b48                   // mov    rdx, qword [rsp + 176]
	QUAD $0x0a0c1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 12], 10
	QUAD $0x000000a0249c8b4c                   // mov    r11, qword [rsp + 160]
	QUAD $0x0c1e74203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r11 + 12], 11
	QUAD $0x0c2674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r12 + 12], 12
	LONG $0x24548b48; BYTE $0x60               // mov    rdx, qword [rsp + 96]
	QUAD $0x0d0c1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 12], 13
	LONG $0x24548b4c; BYTE $0x10               // mov    r10, qword [rsp + 16]
	QUAD $0x0c1674203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rsi + r10 + 12], 14
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0c2e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r13 + 12], 15
	QUAD $0x0d067c203a0f4666; BYTE $0x01       // pinsrb    xmm15, byte [rsi + r8 + 13], 1
	QUAD $0x0d067c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rax + 13], 2
	QUAD $0x0d3e7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r15 + 13], 3
	QUAD $0x0d0e7c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rcx + 13], 4
	QUAD $0x0d3e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rdi + 13], 5
	WORD $0x8949; BYTE $0xf8                   // mov    r8, rdi
	QUAD $0x0d367c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rsi + r14 + 13], 6
	QUAD $0x0d1e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 13], 7
	QUAD $0x0000010024bc8b48                   // mov    rdi, qword [rsp + 256]
	QUAD $0x0d3e7c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rsi + rdi + 13], 8
	QUAD $0x0d0e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 13], 9
	QUAD $0x000000b024bc8b4c                   // mov    r15, qword [rsp + 176]
	QUAD $0x0d3e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r15 + 13], 10
	QUAD $0x0d1e7c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r11 + 13], 11
	QUAD $0x0d267c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r12 + 13], 12
	QUAD $0x0d167c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + rdx + 13], 13
	WORD $0x8949; BYTE $0xd3                   // mov    r11, rdx
	QUAD $0x0d167c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + r10 + 13], 14
	QUAD $0x000001108ddb0f66                   // pand    xmm1, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x0001208ddb0f4466; BYTE $0x00       // pand    xmm9, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xeb0f4466; BYTE $0xc9               // por    xmm9, xmm1
	QUAD $0x0000009024848b48                   // mov    rax, qword [rsp + 144]
	LONG $0x0654b60f; BYTE $0x17               // movzx    edx, byte [rsi + rax + 23]
	LONG $0x6e0f4466; BYTE $0xc2               // movd    xmm8, edx
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x0d2e7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r13 + 13], 15
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0xce6f0f66                           // movdqa    xmm1, xmm6
	LONG $0xde0f4166; BYTE $0xcd               // pmaxub    xmm1, xmm13
	LONG $0xce740f66                           // pcmpeqb    xmm1, xmm6
	LONG $0x6f0f4166; BYTE $0xff               // movdqa    xmm7, xmm15
	LONG $0xde0f4166; BYTE $0xfd               // pmaxub    xmm7, xmm13
	LONG $0x740f4166; BYTE $0xff               // pcmpeqb    xmm7, xmm15
	LONG $0x0654b60f; BYTE $0x19               // movzx    edx, byte [rsi + rax + 25]
	LONG $0x6e0f4466; BYTE $0xfa               // movd    xmm15, edx
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0e0674203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rsi + rax + 14], 1
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	QUAD $0x0e0e74203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rsi + rcx + 14], 2
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]
	QUAD $0x0e1674203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rsi + r10 + 14], 3
	LONG $0x24548b48; BYTE $0x70               // mov    rdx, qword [rsp + 112]
	QUAD $0x0e1674203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rsi + rdx + 14], 4
	QUAD $0x0e0674203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rsi + r8 + 14], 5
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x0e3674203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rsi + r14 + 14], 6
	QUAD $0x0e1e74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rsi + rbx + 14], 7
	QUAD $0x0e3e74203a0f4466; BYTE $0x08       // pinsrb    xmm14, byte [rsi + rdi + 14], 8
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x0e0e74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rsi + r9 + 14], 9
	QUAD $0x0e3e74203a0f4666; BYTE $0x0a       // pinsrb    xmm14, byte [rsi + r15 + 14], 10
	QUAD $0x000000a024bc8b48                   // mov    rdi, qword [rsp + 160]
	QUAD $0x0e3e74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rsi + rdi + 14], 11
	QUAD $0x0e2674203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rsi + r12 + 14], 12
	QUAD $0x0e1e74203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rsi + r11 + 14], 13
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x0e3e74203a0f4466; BYTE $0x0e       // pinsrb    xmm14, byte [rsi + rdi + 14], 14
	QUAD $0x0e2e74203a0f4666; BYTE $0x0f       // pinsrb    xmm14, byte [rsi + r13 + 14], 15
	QUAD $0x0f065c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rsi + rax + 15], 1
	QUAD $0x0f0e5c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rsi + rcx + 15], 2
	QUAD $0x0f165c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rsi + r10 + 15], 3
	QUAD $0x0f165c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rsi + rdx + 15], 4
	WORD $0x8948; BYTE $0xd1                   // mov    rcx, rdx
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x0f165c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rsi + rdx + 15], 5
	QUAD $0x0f065c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rsi + r8 + 15], 6
	QUAD $0x0f1e5c203a0f4466; BYTE $0x07       // pinsrb    xmm11, byte [rsi + rbx + 15], 7
	QUAD $0x0f365c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rsi + r14 + 15], 8
	QUAD $0x0f0e5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rsi + r9 + 15], 9
	QUAD $0x0f3e5c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rsi + r15 + 15], 10
	QUAD $0x000000a024848b4c                   // mov    r8, qword [rsp + 160]
	QUAD $0x0f065c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rsi + r8 + 15], 11
	QUAD $0x0f265c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rsi + r12 + 15], 12
	QUAD $0x0f1e5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rsi + r11 + 15], 13
	QUAD $0x0f3e5c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rsi + rdi + 15], 14
	QUAD $0x0f2e5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rsi + r13 + 15], 15
	QUAD $0x000001308ddb0f66                   // pand    xmm1, oword 304[rbp] /* [rip + .LCPI10_19] */
	QUAD $0x00000140bddb0f66                   // pand    xmm7, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x6f0f4166; BYTE $0xce               // movdqa    xmm1, xmm14
	LONG $0xde0f4166; BYTE $0xcd               // pmaxub    xmm1, xmm13
	LONG $0x740f4166; BYTE $0xce               // pcmpeqb    xmm1, xmm14
	QUAD $0x0000009024bc8b48                   // mov    rdi, qword [rsp + 144]
	LONG $0x3e54b60f; BYTE $0x1a               // movzx    edx, byte [rsi + rdi + 26]
	LONG $0xf26e0f66                           // movd    xmm6, edx
	QUAD $0x000001508ddb0f66                   // pand    xmm1, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xcfeb0f66                           // por    xmm1, xmm7
	LONG $0x3e54b60f; BYTE $0x1b               // movzx    edx, byte [rsi + rdi + 27]
	LONG $0xfa6e0f66                           // movd    xmm7, edx
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	LONG $0x6f0f4566; BYTE $0xf3               // movdqa    xmm14, xmm11
	LONG $0xde0f4566; BYTE $0xf5               // pmaxub    xmm14, xmm13
	LONG $0x740f4566; BYTE $0xf3               // pcmpeqb    xmm14, xmm11
	LONG $0x3e54b60f; BYTE $0x1c               // movzx    edx, byte [rsi + rdi + 28]
	LONG $0x6e0f4466; BYTE $0xca               // movd    xmm9, edx
	QUAD $0x01110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 1
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x02110644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 17], 2
	QUAD $0x111644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 17], 3
	QUAD $0x04110e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 17], 4
	LONG $0x24548b48; BYTE $0x30               // mov    rdx, qword [rsp + 48]
	QUAD $0x05111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 5
	QUAD $0x00000120248c8b4c                   // mov    r9, qword [rsp + 288]
	QUAD $0x110e44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rsi + r9 + 17], 6
	QUAD $0x07111e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 17], 7
	QUAD $0x00000100249c8b4c                   // mov    r11, qword [rsp + 256]
	QUAD $0x111e44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r11 + 17], 8
	QUAD $0x0000013024bc8b4c                   // mov    r15, qword [rsp + 304]
	QUAD $0x113e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r15 + 17], 9
	QUAD $0x000000b024948b48                   // mov    rdx, qword [rsp + 176]
	QUAD $0x0a111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 10
	QUAD $0x110644203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r8 + 17], 11
	QUAD $0x112644203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r12 + 17], 12
	LONG $0x246c8b4c; BYTE $0x60               // mov    r13, qword [rsp + 96]
	QUAD $0x112e44203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r13 + 17], 13
	LONG $0x24748b4c; BYTE $0x10               // mov    r14, qword [rsp + 16]
	QUAD $0x113644203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rsi + r14 + 17], 14
	LONG $0x24548b48; BYTE $0x20               // mov    rdx, qword [rsp + 32]
	QUAD $0x0f111644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 17], 15
	LONG $0xdb0f4466; WORD $0x6075             // pand    xmm14, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xeb0f4466; BYTE $0xf1               // por    xmm14, xmm1
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0x6f0f4566; BYTE $0xe5               // movdqa    xmm12, xmm13
	LONG $0xde0f4166; BYTE $0xcd               // pmaxub    xmm1, xmm13
	LONG $0xc8740f66                           // pcmpeqb    xmm1, xmm0
	LONG $0x3e54b60f; BYTE $0x1d               // movzx    edx, byte [rsi + rdi + 29]
	LONG $0xc26e0f66                           // movd    xmm0, edx
	LONG $0x24548b48; BYTE $0x50               // mov    rdx, qword [rsp + 80]
	QUAD $0x01121664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 18], 1
	QUAD $0x02120664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 18], 2
	QUAD $0x121664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r10 + 18], 3
	QUAD $0x04120e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 18], 4
	LONG $0x244c8b48; BYTE $0x30               // mov    rcx, qword [rsp + 48]
	QUAD $0x05120e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 18], 5
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x120e64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rsi + r9 + 18], 6
	QUAD $0x07121e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 18], 7
	WORD $0x894d; BYTE $0xd8                   // mov    r8, r11
	QUAD $0x121e64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r11 + 18], 8
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	QUAD $0x123e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r15 + 18], 9
	QUAD $0x000000b0249c8b4c                   // mov    r11, qword [rsp + 176]
	QUAD $0x121e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r11 + 18], 10
	QUAD $0x000000a024bc8b4c                   // mov    r15, qword [rsp + 160]
	QUAD $0x123e64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r15 + 18], 11
	QUAD $0x122664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 18], 12
	WORD $0x894c; BYTE $0xea                   // mov    rdx, r13
	QUAD $0x122e64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r13 + 18], 13
	QUAD $0x123664203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rsi + r14 + 18], 14
	LONG $0x246c8b4c; BYTE $0x20               // mov    r13, qword [rsp + 32]
	QUAD $0x122e64203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r13 + 18], 15
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0113066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 1
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x0213066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 2
	QUAD $0x13166c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r10 + 19], 3
	LONG $0x24448b48; BYTE $0x70               // mov    rax, qword [rsp + 112]
	QUAD $0x0413066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 4
	QUAD $0x05130e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 19], 5
	QUAD $0x06133e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 19], 6
	QUAD $0x07131e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 19], 7
	QUAD $0x13066c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r8 + 19], 8
	WORD $0x894d; BYTE $0xc6                   // mov    r14, r8
	QUAD $0x130e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 19], 9
	QUAD $0x131e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r11 + 19], 10
	QUAD $0x133e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r15 + 19], 11
	QUAD $0x13266c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r12 + 19], 12
	QUAD $0x0d13166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 19], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e13066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 19], 14
	QUAD $0x132e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r13 + 19], 15
	QUAD $0x000001008ddb0f66                   // pand    xmm1, oword 256[rbp] /* [rip + .LCPI10_16] */
	QUAD $0x000170248cf80f66; BYTE $0x00       // psubb    xmm1, oword [rsp + 368]
	LONG $0x6f0f4466; BYTE $0xec               // movdqa    xmm13, xmm4
	LONG $0xde0f4566; BYTE $0xec               // pmaxub    xmm13, xmm12
	LONG $0x740f4466; BYTE $0xec               // pcmpeqb    xmm13, xmm4
	LONG $0x6f0f4466; BYTE $0xdd               // movdqa    xmm11, xmm5
	LONG $0xde0f4566; BYTE $0xdc               // pmaxub    xmm11, xmm12
	LONG $0x740f4466; BYTE $0xdd               // pcmpeqb    xmm11, xmm5
	QUAD $0x0000009024848b4c                   // mov    r8, qword [rsp + 144]
	LONG $0x54b60f42; WORD $0x1e06             // movzx    edx, byte [rsi + r8 + 30]
	LONG $0xe26e0f66                           // movd    xmm4, edx
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x01140654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 20], 1
	QUAD $0x0115065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 21], 1
	QUAD $0x160654203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rsi + rax + 22], 1
	QUAD $0x170644203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rsi + rax + 23], 1
	QUAD $0x19067c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rsi + rax + 25], 1
	QUAD $0x011a0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 26], 1
	QUAD $0x011b067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 27], 1
	QUAD $0x1c064c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rsi + rax + 28], 1
	QUAD $0x011d0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 29], 1
	LONG $0x54b60f42; WORD $0x1f06             // movzx    edx, byte [rsi + r8 + 31]
	QUAD $0x011e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 30], 1
	LONG $0xea6e0f66                           // movd    xmm5, edx
	QUAD $0x011f066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 31], 1
	QUAD $0x0000008024848b48                   // mov    rax, qword [rsp + 128]
	QUAD $0x02140654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 20], 2
	QUAD $0x0215065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 21], 2
	QUAD $0x160654203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rsi + rax + 22], 2
	QUAD $0x170644203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rsi + rax + 23], 2
	QUAD $0x19067c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rsi + rax + 25], 2
	QUAD $0x021a0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 26], 2
	QUAD $0x021b067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 27], 2
	QUAD $0x1c064c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rsi + rax + 28], 2
	QUAD $0x021d0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 29], 2
	QUAD $0x021e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 30], 2
	QUAD $0x021f066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 31], 2
	QUAD $0x141654203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rsi + r10 + 20], 3
	LONG $0x24548b48; BYTE $0x70               // mov    rdx, qword [rsp + 112]
	QUAD $0x04141654203a0f66                   // pinsrb    xmm2, byte [rsi + rdx + 20], 4
	QUAD $0x05140e54203a0f66                   // pinsrb    xmm2, byte [rsi + rcx + 20], 5
	QUAD $0x06143e54203a0f66                   // pinsrb    xmm2, byte [rsi + rdi + 20], 6
	QUAD $0x07141e54203a0f66                   // pinsrb    xmm2, byte [rsi + rbx + 20], 7
	QUAD $0x143654203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rsi + r14 + 20], 8
	QUAD $0x140e54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rsi + r9 + 20], 9
	QUAD $0x141e54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rsi + r11 + 20], 10
	QUAD $0x143e54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rsi + r15 + 20], 11
	QUAD $0x142654203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rsi + r12 + 20], 12
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x140654203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rsi + r8 + 20], 13
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0e140654203a0f66                   // pinsrb    xmm2, byte [rsi + rax + 20], 14
	QUAD $0x142e54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rsi + r13 + 20], 15
	QUAD $0x15165c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rsi + r10 + 21], 3
	QUAD $0x0415165c203a0f66                   // pinsrb    xmm3, byte [rsi + rdx + 21], 4
	QUAD $0x05150e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rcx + 21], 5
	QUAD $0x06153e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rdi + 21], 6
	QUAD $0x07151e5c203a0f66                   // pinsrb    xmm3, byte [rsi + rbx + 21], 7
	QUAD $0x15365c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rsi + r14 + 21], 8
	QUAD $0x150e5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rsi + r9 + 21], 9
	QUAD $0x151e5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rsi + r11 + 21], 10
	QUAD $0x153e5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rsi + r15 + 21], 11
	QUAD $0x15265c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rsi + r12 + 21], 12
	QUAD $0x15065c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rsi + r8 + 21], 13
	QUAD $0x0e15065c203a0f66                   // pinsrb    xmm3, byte [rsi + rax + 21], 14
	QUAD $0x000110addb0f4466; BYTE $0x00       // pand    xmm13, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x0001209ddb0f4466; BYTE $0x00       // pand    xmm11, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xeb0f4566; BYTE $0xdd               // por    xmm11, xmm13
	QUAD $0x152e5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rsi + r13 + 21], 15
	LONG $0xeb0f4466; BYTE $0xd9               // por    xmm11, xmm1
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0xde0f4166; BYTE $0xcc               // pmaxub    xmm1, xmm12
	LONG $0xca740f66                           // pcmpeqb    xmm1, xmm2
	LONG $0xd36f0f66                           // movdqa    xmm2, xmm3
	LONG $0xde0f4166; BYTE $0xd4               // pmaxub    xmm2, xmm12
	LONG $0xd3740f66                           // pcmpeqb    xmm2, xmm3
	QUAD $0x161654203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rsi + r10 + 22], 3
	QUAD $0x161654203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rsi + rdx + 22], 4
	QUAD $0x160e54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rsi + rcx + 22], 5
	QUAD $0x163e54203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rsi + rdi + 22], 6
	QUAD $0x161e54203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rsi + rbx + 22], 7
	QUAD $0x163654203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rsi + r14 + 22], 8
	QUAD $0x160e54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rsi + r9 + 22], 9
	QUAD $0x161e54203a0f4666; BYTE $0x0a       // pinsrb    xmm10, byte [rsi + r11 + 22], 10
	QUAD $0x163e54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rsi + r15 + 22], 11
	QUAD $0x162654203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rsi + r12 + 22], 12
	QUAD $0x160654203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rsi + r8 + 22], 13
	QUAD $0x160654203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rsi + rax + 22], 14
	QUAD $0x162e54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rsi + r13 + 22], 15
	QUAD $0x171644203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rsi + r10 + 23], 3
	QUAD $0x171644203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rsi + rdx + 23], 4
	QUAD $0x170e44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rsi + rcx + 23], 5
	QUAD $0x173e44203a0f4466; BYTE $0x06       // pinsrb    xmm8, byte [rsi + rdi + 23], 6
	QUAD $0x171e44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rsi + rbx + 23], 7
	QUAD $0x173644203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rsi + r14 + 23], 8
	QUAD $0x170e44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rsi + r9 + 23], 9
	QUAD $0x171e44203a0f4666; BYTE $0x0a       // pinsrb    xmm8, byte [rsi + r11 + 23], 10
	QUAD $0x173e44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rsi + r15 + 23], 11
	QUAD $0x172644203a0f4666; BYTE $0x0c       // pinsrb    xmm8, byte [rsi + r12 + 23], 12
	QUAD $0x170644203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rsi + r8 + 23], 13
	QUAD $0x000001308ddb0f66                   // pand    xmm1, oword 304[rbp] /* [rip + .LCPI10_19] */
	QUAD $0x0000014095db0f66                   // pand    xmm2, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x6f0f4166; BYTE $0xca               // movdqa    xmm1, xmm10
	LONG $0xde0f4166; BYTE $0xcc               // pmaxub    xmm1, xmm12
	LONG $0x740f4166; BYTE $0xca               // pcmpeqb    xmm1, xmm10
	QUAD $0x170644203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rsi + rax + 23], 14
	QUAD $0x000001508ddb0f66                   // pand    xmm1, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x172e44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rsi + r13 + 23], 15
	LONG $0xeb0f4166; BYTE $0xcb               // por    xmm1, xmm11
	LONG $0x6f0f4566; BYTE $0xd0               // movdqa    xmm10, xmm8
	LONG $0xde0f4566; BYTE $0xd4               // pmaxub    xmm10, xmm12
	LONG $0x740f4566; BYTE $0xd0               // pcmpeqb    xmm10, xmm8
	QUAD $0x19167c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rsi + r10 + 25], 3
	QUAD $0x19167c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rsi + rdx + 25], 4
	QUAD $0x190e7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rsi + rcx + 25], 5
	QUAD $0x193e7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rsi + rdi + 25], 6
	QUAD $0x191e7c203a0f4466; BYTE $0x07       // pinsrb    xmm15, byte [rsi + rbx + 25], 7
	QUAD $0x19367c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rsi + r14 + 25], 8
	QUAD $0x190e7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rsi + r9 + 25], 9
	QUAD $0x191e7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rsi + r11 + 25], 10
	QUAD $0x193e7c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rsi + r15 + 25], 11
	QUAD $0x19267c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rsi + r12 + 25], 12
	QUAD $0x19067c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rsi + r8 + 25], 13
	QUAD $0x19067c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rsi + rax + 25], 14
	QUAD $0x192e7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rsi + r13 + 25], 15
	LONG $0x6f0f4466; WORD $0x605d             // movdqa    xmm11, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xdb0f4566; BYTE $0xd3               // pand    xmm10, xmm11
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	LONG $0x6f0f4166; BYTE $0xdf               // movdqa    xmm3, xmm15
	LONG $0xde0f4166; BYTE $0xdc               // pmaxub    xmm3, xmm12
	LONG $0x740f4166; BYTE $0xdf               // pcmpeqb    xmm3, xmm15
	QUAD $0x1a1674203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rsi + r10 + 26], 3
	QUAD $0x041a1674203a0f66                   // pinsrb    xmm6, byte [rsi + rdx + 26], 4
	QUAD $0x051a0e74203a0f66                   // pinsrb    xmm6, byte [rsi + rcx + 26], 5
	QUAD $0x061a3e74203a0f66                   // pinsrb    xmm6, byte [rsi + rdi + 26], 6
	QUAD $0x071a1e74203a0f66                   // pinsrb    xmm6, byte [rsi + rbx + 26], 7
	QUAD $0x1a3674203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rsi + r14 + 26], 8
	QUAD $0x1a0e74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rsi + r9 + 26], 9
	QUAD $0x1a1e74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rsi + r11 + 26], 10
	QUAD $0x1a3e74203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rsi + r15 + 26], 11
	QUAD $0x1a2674203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rsi + r12 + 26], 12
	QUAD $0x1a0674203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rsi + r8 + 26], 13
	QUAD $0x0e1a0674203a0f66                   // pinsrb    xmm6, byte [rsi + rax + 26], 14
	QUAD $0x1a2e74203a0f4266; BYTE $0x0f       // pinsrb    xmm6, byte [rsi + r13 + 26], 15
	QUAD $0x1b167c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rsi + r10 + 27], 3
	QUAD $0x041b167c203a0f66                   // pinsrb    xmm7, byte [rsi + rdx + 27], 4
	QUAD $0x051b0e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rcx + 27], 5
	QUAD $0x061b3e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rdi + 27], 6
	QUAD $0x071b1e7c203a0f66                   // pinsrb    xmm7, byte [rsi + rbx + 27], 7
	QUAD $0x1b367c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rsi + r14 + 27], 8
	QUAD $0x1b0e7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rsi + r9 + 27], 9
	QUAD $0x1b1e7c203a0f4266; BYTE $0x0a       // pinsrb    xmm7, byte [rsi + r11 + 27], 10
	QUAD $0x1b3e7c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rsi + r15 + 27], 11
	QUAD $0x1b267c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rsi + r12 + 27], 12
	QUAD $0x1b067c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rsi + r8 + 27], 13
	QUAD $0x0e1b067c203a0f66                   // pinsrb    xmm7, byte [rsi + rax + 27], 14
	QUAD $0x1b2e7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rsi + r13 + 27], 15
	QUAD $0x000001009ddb0f66                   // pand    xmm3, oword 256[rbp] /* [rip + .LCPI10_16] */
	QUAD $0x0000f0249cf80f66; BYTE $0x00       // psubb    xmm3, oword [rsp + 240]
	LONG $0xd66f0f66                           // movdqa    xmm2, xmm6
	LONG $0xde0f4166; BYTE $0xd4               // pmaxub    xmm2, xmm12
	LONG $0xd6740f66                           // pcmpeqb    xmm2, xmm6
	LONG $0xcf6f0f66                           // movdqa    xmm1, xmm7
	LONG $0xde0f4166; BYTE $0xcc               // pmaxub    xmm1, xmm12
	LONG $0xcf740f66                           // pcmpeqb    xmm1, xmm7
	QUAD $0x1c164c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rsi + r10 + 28], 3
	QUAD $0x1c164c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rsi + rdx + 28], 4
	QUAD $0x1c0e4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rsi + rcx + 28], 5
	QUAD $0x1c3e4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rsi + rdi + 28], 6
	QUAD $0x1c1e4c203a0f4466; BYTE $0x07       // pinsrb    xmm9, byte [rsi + rbx + 28], 7
	QUAD $0x1c364c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rsi + r14 + 28], 8
	QUAD $0x1c0e4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rsi + r9 + 28], 9
	QUAD $0x1c1e4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rsi + r11 + 28], 10
	QUAD $0x1c3e4c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rsi + r15 + 28], 11
	QUAD $0x1c264c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rsi + r12 + 28], 12
	QUAD $0x1c064c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rsi + r8 + 28], 13
	QUAD $0x1c064c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rsi + rax + 28], 14
	QUAD $0x1c2e4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rsi + r13 + 28], 15
	QUAD $0x1d1644203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rsi + r10 + 29], 3
	QUAD $0x041d1644203a0f66                   // pinsrb    xmm0, byte [rsi + rdx + 29], 4
	QUAD $0x051d0e44203a0f66                   // pinsrb    xmm0, byte [rsi + rcx + 29], 5
	QUAD $0x061d3e44203a0f66                   // pinsrb    xmm0, byte [rsi + rdi + 29], 6
	QUAD $0x071d1e44203a0f66                   // pinsrb    xmm0, byte [rsi + rbx + 29], 7
	QUAD $0x1d3644203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rsi + r14 + 29], 8
	QUAD $0x1d0e44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rsi + r9 + 29], 9
	QUAD $0x1d1e44203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rsi + r11 + 29], 10
	QUAD $0x1d3e44203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rsi + r15 + 29], 11
	QUAD $0x1d2644203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rsi + r12 + 29], 12
	QUAD $0x1d0644203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rsi + r8 + 29], 13
	QUAD $0x0e1d0644203a0f66                   // pinsrb    xmm0, byte [rsi + rax + 29], 14
	QUAD $0x1d2e44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rsi + r13 + 29], 15
	QUAD $0x0000011095db0f66                   // pand    xmm2, oword 272[rbp] /* [rip + .LCPI10_17] */
	QUAD $0x000001208ddb0f66                   // pand    xmm1, oword 288[rbp] /* [rip + .LCPI10_18] */
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0xcbeb0f66                           // por    xmm1, xmm3
	LONG $0x6f0f4166; BYTE $0xd1               // movdqa    xmm2, xmm9
	LONG $0xde0f4166; BYTE $0xd4               // pmaxub    xmm2, xmm12
	LONG $0x740f4166; BYTE $0xd1               // pcmpeqb    xmm2, xmm9
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xde0f4166; BYTE $0xdc               // pmaxub    xmm3, xmm12
	LONG $0xd8740f66                           // pcmpeqb    xmm3, xmm0
	QUAD $0x1e1664203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rsi + r10 + 30], 3
	QUAD $0x1f166c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rsi + r10 + 31], 3
	QUAD $0x041e1664203a0f66                   // pinsrb    xmm4, byte [rsi + rdx + 30], 4
	QUAD $0x041f166c203a0f66                   // pinsrb    xmm5, byte [rsi + rdx + 31], 4
	QUAD $0x051e0e64203a0f66                   // pinsrb    xmm4, byte [rsi + rcx + 30], 5
	QUAD $0x051f0e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rcx + 31], 5
	QUAD $0x061e3e64203a0f66                   // pinsrb    xmm4, byte [rsi + rdi + 30], 6
	QUAD $0x061f3e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rdi + 31], 6
	QUAD $0x071e1e64203a0f66                   // pinsrb    xmm4, byte [rsi + rbx + 30], 7
	QUAD $0x071f1e6c203a0f66                   // pinsrb    xmm5, byte [rsi + rbx + 31], 7
	QUAD $0x1e3664203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rsi + r14 + 30], 8
	QUAD $0x1f366c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rsi + r14 + 31], 8
	QUAD $0x1e0e64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rsi + r9 + 30], 9
	QUAD $0x1f0e6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rsi + r9 + 31], 9
	QUAD $0x1e1e64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rsi + r11 + 30], 10
	QUAD $0x1f1e6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rsi + r11 + 31], 10
	QUAD $0x0000016024b48b4c                   // mov    r14, qword [rsp + 352]
	QUAD $0x1e3e64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rsi + r15 + 30], 11
	QUAD $0x1f3e6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rsi + r15 + 31], 11
	QUAD $0x1e2664203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rsi + r12 + 30], 12
	QUAD $0x1f266c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rsi + r12 + 31], 12
	QUAD $0x1e0664203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rsi + r8 + 30], 13
	QUAD $0x1f066c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rsi + r8 + 31], 13
	QUAD $0x0e1e0664203a0f66                   // pinsrb    xmm4, byte [rsi + rax + 30], 14
	QUAD $0x0e1f066c203a0f66                   // pinsrb    xmm5, byte [rsi + rax + 31], 14
	QUAD $0x1e2e64203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rsi + r13 + 30], 15
	QUAD $0x0000013095db0f66                   // pand    xmm2, oword 304[rbp] /* [rip + .LCPI10_19] */
	QUAD $0x000001409ddb0f66                   // pand    xmm3, oword 320[rbp] /* [rip + .LCPI10_20] */
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0xde0f4166; BYTE $0xc4               // pmaxub    xmm0, xmm12
	LONG $0xc4740f66                           // pcmpeqb    xmm0, xmm4
	QUAD $0x1f2e6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rsi + r13 + 31], 15
	QUAD $0x0000015085db0f66                   // pand    xmm0, oword 336[rbp] /* [rip + .LCPI10_21] */
	LONG $0xc3eb0f66                           // por    xmm0, xmm3
	LONG $0xc1eb0f66                           // por    xmm0, xmm1
	LONG $0xcd6f0f66                           // movdqa    xmm1, xmm5
	LONG $0xde0f4166; BYTE $0xcc               // pmaxub    xmm1, xmm12
	LONG $0xcd740f66                           // pcmpeqb    xmm1, xmm5
	LONG $0xdb0f4166; BYTE $0xcb               // pand    xmm1, xmm11
	LONG $0xc8eb0f66                           // por    xmm1, xmm0
	LONG $0x6f0f4166; BYTE $0xc2               // movdqa    xmm0, xmm10
	LONG $0xc1600f66                           // punpcklbw    xmm0, xmm1
	QUAD $0x00011024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 272]
	LONG $0xd46f0f66                           // movdqa    xmm2, xmm4
	LONG $0x600f4166; BYTE $0xd6               // punpcklbw    xmm2, xmm14
	LONG $0xda6f0f66                           // movdqa    xmm3, xmm2
	LONG $0xd8610f66                           // punpcklwd    xmm3, xmm0
	LONG $0xd0690f66                           // punpckhwd    xmm2, xmm0
	LONG $0x680f4466; BYTE $0xd1               // punpckhbw    xmm10, xmm1
	LONG $0x680f4166; BYTE $0xe6               // punpckhbw    xmm4, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x610f4166; BYTE $0xc2               // punpcklwd    xmm0, xmm10
	LONG $0x690f4166; BYTE $0xe2               // punpckhwd    xmm4, xmm10
	QUAD $0x00000150248c8b48                   // mov    rcx, qword [rsp + 336]
	LONG $0x7f0f41f3; WORD $0x8e64; BYTE $0x30 // movdqu    oword [r14 + 4*rcx + 48], xmm4
	LONG $0x7f0f41f3; WORD $0x8e44; BYTE $0x20 // movdqu    oword [r14 + 4*rcx + 32], xmm0
	LONG $0x7f0f41f3; WORD $0x8e54; BYTE $0x10 // movdqu    oword [r14 + 4*rcx + 16], xmm2
	LONG $0x7f0f41f3; WORD $0x8e1c             // movdqu    oword [r14 + 4*rcx], xmm3
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000001a0248c3b48                   // cmp    rcx, qword [rsp + 416]
	JNE  LBB10_67
	QUAD $0x000001d024bc8b4c                   // mov    r15, qword [rsp + 464]
	QUAD $0x000001a024bc3b4c                   // cmp    r15, qword [rsp + 416]
	LONG $0x245c8a44; BYTE $0x08               // mov    r11b, byte [rsp + 8]
	QUAD $0x0000018824b48b48                   // mov    rsi, qword [rsp + 392]
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	JNE  LBB10_69
	JMP  LBB10_72

LBB10_124:
	LONG $0xf8e78349                     // and    r15, -8
	WORD $0x894d; BYTE $0xfb             // mov    r11, r15
	LONG $0x06e3c149                     // shl    r11, 6
	WORD $0x0149; BYTE $0xf3             // add    r11, rsi
	QUAD $0x0000019024bc894c             // mov    qword [rsp + 400], r15
	LONG $0xbe048d4b                     // lea    rax, [r14 + 4*r15]
	LONG $0x24448948; BYTE $0x08         // mov    qword [rsp + 8], rax
	QUAD $0x00018824846e0f66; BYTE $0x00 // movd    xmm0, dword [rsp + 392]
	LONG $0xc0700ff2; BYTE $0xe0         // pshuflw    xmm0, xmm0, 224
	LONG $0xc0700f66; BYTE $0x00         // pshufd    xmm0, xmm0, 0
	QUAD $0x0001d024847f0f66; BYTE $0x00 // movdqa    oword [rsp + 464], xmm0
	WORD $0x3145; BYTE $0xd2             // xor    r10d, r10d

LBB10_125:
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	LONG $0x06e1c149                           // shl    r9, 6
	WORD $0x894d; BYTE $0xc8                   // mov    r8, r9
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	WORD $0x894c; BYTE $0xcb                   // mov    rbx, r9
	WORD $0x894d; BYTE $0xcf                   // mov    r15, r9
	WORD $0x894d; BYTE $0xcc                   // mov    r12, r9
	WORD $0x894d; BYTE $0xcd                   // mov    r13, r9
	LONG $0x0cb70f42; BYTE $0x0e               // movzx    ecx, word [rsi + r9]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x4cb70f42; WORD $0x020e             // movzx    ecx, word [rsi + r9 + 2]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x447f0f66; WORD $0x1024             // movdqa    oword [rsp + 16], xmm0
	LONG $0x4cb70f42; WORD $0x040e             // movzx    ecx, word [rsi + r9 + 4]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x4cb70f42; WORD $0x060e             // movzx    ecx, word [rsi + r9 + 6]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x4cb70f42; WORD $0x080e             // movzx    ecx, word [rsi + r9 + 8]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x4cb70f42; WORD $0x0a0e             // movzx    ecx, word [rsi + r9 + 10]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x4cb70f42; WORD $0x0c0e             // movzx    ecx, word [rsi + r9 + 12]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x4cb70f42; WORD $0x0e0e             // movzx    ecx, word [rsi + r9 + 14]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x4cb70f42; WORD $0x100e             // movzx    ecx, word [rsi + r9 + 16]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	LONG $0x4cb70f42; WORD $0x120e             // movzx    ecx, word [rsi + r9 + 18]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x4cb70f42; WORD $0x140e             // movzx    ecx, word [rsi + r9 + 20]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x4cb70f42; WORD $0x160e             // movzx    ecx, word [rsi + r9 + 22]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x4cb70f42; WORD $0x180e             // movzx    ecx, word [rsi + r9 + 24]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x4cb70f42; WORD $0x1a0e             // movzx    ecx, word [rsi + r9 + 26]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x44b70f42; WORD $0x1c0e             // movzx    eax, word [rsi + r9 + 28]
	LONG $0x54b70f42; WORD $0x1e0e             // movzx    edx, word [rsi + r9 + 30]
	WORD $0x894c; BYTE $0xc9                   // mov    rcx, r9
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80c88149; WORD $0x0000; BYTE $0x00 // or    r8, 128
	LONG $0xc0cf8148; WORD $0x0000; BYTE $0x00 // or    rdi, 192
	LONG $0x00cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 256
	LONG $0x40cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 320
	LONG $0x80cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 384
	LONG $0xc0cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 448
	LONG $0xc40f4466; WORD $0x0e1c; BYTE $0x01 // pinsrw    xmm11, word [rsi + rcx], 1
	LONG $0xc40f4666; WORD $0x061c; BYTE $0x02 // pinsrw    xmm11, word [rsi + r8], 2
	LONG $0xc40f4466; WORD $0x3e1c; BYTE $0x03 // pinsrw    xmm11, word [rsi + rdi], 3
	LONG $0xc40f4466; WORD $0x1e1c; BYTE $0x04 // pinsrw    xmm11, word [rsi + rbx], 4
	LONG $0xc40f4666; WORD $0x3e1c; BYTE $0x05 // pinsrw    xmm11, word [rsi + r15], 5
	LONG $0xc40f4666; WORD $0x261c; BYTE $0x06 // pinsrw    xmm11, word [rsi + r12], 6
	LONG $0xc40f4666; WORD $0x2e1c; BYTE $0x07 // pinsrw    xmm11, word [rsi + r13], 7
	LONG $0x6e0f4466; BYTE $0xf8               // movd    xmm15, eax
	QUAD $0x0001d024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 464]
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0x650f4166; BYTE $0xfb               // pcmpgtw    xmm7, xmm11
	QUAD $0x00016024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 352], xmm7
	LONG $0x7c6f0f66; WORD $0x1024             // movdqa    xmm7, oword [rsp + 16]
	LONG $0x7cc40f66; WORD $0x020e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 2], 1
	QUAD $0x0202067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 2], 2
	LONG $0x7cc40f66; WORD $0x023e; BYTE $0x03 // pinsrw    xmm7, word [rsi + rdi + 2], 3
	LONG $0x7cc40f66; WORD $0x021e; BYTE $0x04 // pinsrw    xmm7, word [rsi + rbx + 2], 4
	QUAD $0x05023e7cc40f4266                   // pinsrw    xmm7, word [rsi + r15 + 2], 5
	QUAD $0x0602267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 2], 6
	QUAD $0x07022e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 2], 7
	LONG $0x6f0f4466; BYTE $0xd8               // movdqa    xmm11, xmm0
	QUAD $0x01040e4cc40f4466                   // pinsrw    xmm9, word [rsi + rcx + 4], 1
	QUAD $0x0204064cc40f4666                   // pinsrw    xmm9, word [rsi + r8 + 4], 2
	QUAD $0x03043e4cc40f4466                   // pinsrw    xmm9, word [rsi + rdi + 4], 3
	QUAD $0x04041e4cc40f4466                   // pinsrw    xmm9, word [rsi + rbx + 4], 4
	QUAD $0x05043e4cc40f4666                   // pinsrw    xmm9, word [rsi + r15 + 4], 5
	QUAD $0x0604264cc40f4666                   // pinsrw    xmm9, word [rsi + r12 + 4], 6
	LONG $0x650f4466; BYTE $0xdf               // pcmpgtw    xmm11, xmm7
	QUAD $0x07042e4cc40f4666                   // pinsrw    xmm9, word [rsi + r13 + 4], 7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0x650f4166; BYTE $0xf9               // pcmpgtw    xmm7, xmm9
	LONG $0x7c7f0f66; WORD $0x5024             // movdqa    oword [rsp + 80], xmm7
	QUAD $0x01060e54c40f4466                   // pinsrw    xmm10, word [rsi + rcx + 6], 1
	QUAD $0x02060654c40f4666                   // pinsrw    xmm10, word [rsi + r8 + 6], 2
	QUAD $0x03063e54c40f4466                   // pinsrw    xmm10, word [rsi + rdi + 6], 3
	QUAD $0x04061e54c40f4466                   // pinsrw    xmm10, word [rsi + rbx + 6], 4
	QUAD $0x05063e54c40f4666                   // pinsrw    xmm10, word [rsi + r15 + 6], 5
	QUAD $0x06062654c40f4666                   // pinsrw    xmm10, word [rsi + r12 + 6], 6
	QUAD $0x07062e54c40f4666                   // pinsrw    xmm10, word [rsi + r13 + 6], 7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	QUAD $0x01080e64c40f4466                   // pinsrw    xmm12, word [rsi + rcx + 8], 1
	QUAD $0x02080664c40f4666                   // pinsrw    xmm12, word [rsi + r8 + 8], 2
	QUAD $0x03083e64c40f4466                   // pinsrw    xmm12, word [rsi + rdi + 8], 3
	QUAD $0x04081e64c40f4466                   // pinsrw    xmm12, word [rsi + rbx + 8], 4
	QUAD $0x05083e64c40f4666                   // pinsrw    xmm12, word [rsi + r15 + 8], 5
	QUAD $0x06082664c40f4666                   // pinsrw    xmm12, word [rsi + r12 + 8], 6
	QUAD $0x07082e64c40f4666                   // pinsrw    xmm12, word [rsi + r13 + 8], 7
	LONG $0x650f4166; BYTE $0xfa               // pcmpgtw    xmm7, xmm10
	QUAD $0x00009024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 144], xmm7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0x650f4166; BYTE $0xfc               // pcmpgtw    xmm7, xmm12
	LONG $0x7c7f0f66; WORD $0x2024             // movdqa    oword [rsp + 32], xmm7
	QUAD $0x010a0e6cc40f4466                   // pinsrw    xmm13, word [rsi + rcx + 10], 1
	QUAD $0x020a066cc40f4666                   // pinsrw    xmm13, word [rsi + r8 + 10], 2
	QUAD $0x030a3e6cc40f4466                   // pinsrw    xmm13, word [rsi + rdi + 10], 3
	QUAD $0x040a1e6cc40f4466                   // pinsrw    xmm13, word [rsi + rbx + 10], 4
	QUAD $0x050a3e6cc40f4666                   // pinsrw    xmm13, word [rsi + r15 + 10], 5
	QUAD $0x060a266cc40f4666                   // pinsrw    xmm13, word [rsi + r12 + 10], 6
	QUAD $0x070a2e6cc40f4666                   // pinsrw    xmm13, word [rsi + r13 + 10], 7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	QUAD $0x010c0e74c40f4466                   // pinsrw    xmm14, word [rsi + rcx + 12], 1
	QUAD $0x020c0674c40f4666                   // pinsrw    xmm14, word [rsi + r8 + 12], 2
	QUAD $0x030c3e74c40f4466                   // pinsrw    xmm14, word [rsi + rdi + 12], 3
	QUAD $0x040c1e74c40f4466                   // pinsrw    xmm14, word [rsi + rbx + 12], 4
	QUAD $0x050c3e74c40f4666                   // pinsrw    xmm14, word [rsi + r15 + 12], 5
	QUAD $0x060c2674c40f4666                   // pinsrw    xmm14, word [rsi + r12 + 12], 6
	LONG $0x650f4166; BYTE $0xfd               // pcmpgtw    xmm7, xmm13
	QUAD $0x00008024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 128], xmm7
	QUAD $0x070c2e74c40f4666                   // pinsrw    xmm14, word [rsi + r13 + 12], 7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0x650f4166; BYTE $0xfe               // pcmpgtw    xmm7, xmm14
	LONG $0x6f0f4466; BYTE $0xf7               // movdqa    xmm14, xmm7
	QUAD $0x010e0e44c40f4466                   // pinsrw    xmm8, word [rsi + rcx + 14], 1
	QUAD $0x020e0644c40f4666                   // pinsrw    xmm8, word [rsi + r8 + 14], 2
	QUAD $0x030e3e44c40f4466                   // pinsrw    xmm8, word [rsi + rdi + 14], 3
	QUAD $0x040e1e44c40f4466                   // pinsrw    xmm8, word [rsi + rbx + 14], 4
	QUAD $0x050e3e44c40f4666                   // pinsrw    xmm8, word [rsi + r15 + 14], 5
	QUAD $0x060e2644c40f4666                   // pinsrw    xmm8, word [rsi + r12 + 14], 6
	QUAD $0x070e2e44c40f4666                   // pinsrw    xmm8, word [rsi + r13 + 14], 7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0x4cc40f66; WORD $0x100e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 16], 1
	QUAD $0x0210064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 16], 2
	LONG $0x4cc40f66; WORD $0x103e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 16], 3
	LONG $0x4cc40f66; WORD $0x101e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 16], 4
	QUAD $0x05103e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 16], 5
	QUAD $0x0610264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 16], 6
	QUAD $0x07102e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 16], 7
	LONG $0x650f4166; BYTE $0xf8               // pcmpgtw    xmm7, xmm8
	LONG $0x7c7f0f66; WORD $0x6024             // movdqa    oword [rsp + 96], xmm7
	LONG $0xf86f0f66                           // movdqa    xmm7, xmm0
	LONG $0xf9650f66                           // pcmpgtw    xmm7, xmm1
	QUAD $0x0001b024bc7f0f66; BYTE $0x00       // movdqa    oword [rsp + 432], xmm7
	LONG $0x54c40f66; WORD $0x120e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 18], 1
	QUAD $0x02120654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 18], 2
	LONG $0x54c40f66; WORD $0x123e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 18], 3
	LONG $0x54c40f66; WORD $0x121e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 18], 4
	QUAD $0x05123e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 18], 5
	QUAD $0x06122654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 18], 6
	QUAD $0x07122e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 18], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0x5cc40f66; WORD $0x140e; BYTE $0x01 // pinsrw    xmm3, word [rsi + rcx + 20], 1
	QUAD $0x0214065cc40f4266                   // pinsrw    xmm3, word [rsi + r8 + 20], 2
	LONG $0x5cc40f66; WORD $0x143e; BYTE $0x03 // pinsrw    xmm3, word [rsi + rdi + 20], 3
	LONG $0x5cc40f66; WORD $0x141e; BYTE $0x04 // pinsrw    xmm3, word [rsi + rbx + 20], 4
	QUAD $0x05143e5cc40f4266                   // pinsrw    xmm3, word [rsi + r15 + 20], 5
	QUAD $0x0614265cc40f4266                   // pinsrw    xmm3, word [rsi + r12 + 20], 6
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x0000a0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm1
	QUAD $0x07142e5cc40f4266                   // pinsrw    xmm3, word [rsi + r13 + 20], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xcb650f66                           // pcmpgtw    xmm1, xmm3
	LONG $0x4c7f0f66; WORD $0x3024             // movdqa    oword [rsp + 48], xmm1
	LONG $0x64c40f66; WORD $0x160e; BYTE $0x01 // pinsrw    xmm4, word [rsi + rcx + 22], 1
	QUAD $0x02160664c40f4266                   // pinsrw    xmm4, word [rsi + r8 + 22], 2
	LONG $0x64c40f66; WORD $0x163e; BYTE $0x03 // pinsrw    xmm4, word [rsi + rdi + 22], 3
	LONG $0x64c40f66; WORD $0x161e; BYTE $0x04 // pinsrw    xmm4, word [rsi + rbx + 22], 4
	QUAD $0x05163e64c40f4266                   // pinsrw    xmm4, word [rsi + r15 + 22], 5
	QUAD $0x06162664c40f4266                   // pinsrw    xmm4, word [rsi + r12 + 22], 6
	QUAD $0x07162e64c40f4266                   // pinsrw    xmm4, word [rsi + r13 + 22], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0x6cc40f66; WORD $0x180e; BYTE $0x01 // pinsrw    xmm5, word [rsi + rcx + 24], 1
	QUAD $0x0218066cc40f4266                   // pinsrw    xmm5, word [rsi + r8 + 24], 2
	LONG $0x6cc40f66; WORD $0x183e; BYTE $0x03 // pinsrw    xmm5, word [rsi + rdi + 24], 3
	LONG $0x6cc40f66; WORD $0x181e; BYTE $0x04 // pinsrw    xmm5, word [rsi + rbx + 24], 4
	QUAD $0x05183e6cc40f4266                   // pinsrw    xmm5, word [rsi + r15 + 24], 5
	QUAD $0x0618266cc40f4266                   // pinsrw    xmm5, word [rsi + r12 + 24], 6
	QUAD $0x07182e6cc40f4266                   // pinsrw    xmm5, word [rsi + r13 + 24], 7
	LONG $0xcc650f66                           // pcmpgtw    xmm1, xmm4
	QUAD $0x0000b0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm1
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xcd650f66                           // pcmpgtw    xmm1, xmm5
	LONG $0x4c7f0f66; WORD $0x1024             // movdqa    oword [rsp + 16], xmm1
	LONG $0x74c40f66; WORD $0x1a0e; BYTE $0x01 // pinsrw    xmm6, word [rsi + rcx + 26], 1
	QUAD $0x021a0674c40f4266                   // pinsrw    xmm6, word [rsi + r8 + 26], 2
	LONG $0x74c40f66; WORD $0x1a3e; BYTE $0x03 // pinsrw    xmm6, word [rsi + rdi + 26], 3
	LONG $0x74c40f66; WORD $0x1a1e; BYTE $0x04 // pinsrw    xmm6, word [rsi + rbx + 26], 4
	QUAD $0x051a3e74c40f4266                   // pinsrw    xmm6, word [rsi + r15 + 26], 5
	QUAD $0x061a2674c40f4266                   // pinsrw    xmm6, word [rsi + r12 + 26], 6
	QUAD $0x071a2e74c40f4266                   // pinsrw    xmm6, word [rsi + r13 + 26], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	QUAD $0x011c0e7cc40f4466                   // pinsrw    xmm15, word [rsi + rcx + 28], 1
	QUAD $0x021c067cc40f4666                   // pinsrw    xmm15, word [rsi + r8 + 28], 2
	QUAD $0x031c3e7cc40f4466                   // pinsrw    xmm15, word [rsi + rdi + 28], 3
	QUAD $0x041c1e7cc40f4466                   // pinsrw    xmm15, word [rsi + rbx + 28], 4
	QUAD $0x051c3e7cc40f4666                   // pinsrw    xmm15, word [rsi + r15 + 28], 5
	QUAD $0x061c267cc40f4666                   // pinsrw    xmm15, word [rsi + r12 + 28], 6
	LONG $0xce650f66                           // pcmpgtw    xmm1, xmm6
	QUAD $0x0000c0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm1
	QUAD $0x071c2e7cc40f4666                   // pinsrw    xmm15, word [rsi + r13 + 28], 7
	LONG $0xca6e0f66                           // movd    xmm1, edx
	LONG $0x4cc40f66; WORD $0x1e0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 30], 1
	QUAD $0x021e064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 30], 2
	LONG $0x4cc40f66; WORD $0x1e3e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 30], 3
	LONG $0x4cc40f66; WORD $0x1e1e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 30], 4
	QUAD $0x051e3e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 30], 5
	QUAD $0x061e264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 30], 6
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0x650f4166; BYTE $0xd7               // pcmpgtw    xmm2, xmm15
	QUAD $0x0000e024947f0f66; BYTE $0x00       // movdqa    oword [rsp + 224], xmm2
	QUAD $0x071e2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 30], 7
	LONG $0xd06f0f66                           // movdqa    xmm2, xmm0
	LONG $0xd1650f66                           // pcmpgtw    xmm2, xmm1
	LONG $0x547f0f66; WORD $0x7024             // movdqa    oword [rsp + 112], xmm2
	LONG $0x44b70f42; WORD $0x200e             // movzx    eax, word [rsi + r9 + 32]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x200e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 32], 1
	QUAD $0x0220064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 32], 2
	LONG $0x4cc40f66; WORD $0x203e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 32], 3
	LONG $0x4cc40f66; WORD $0x201e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 32], 4
	QUAD $0x05203e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 32], 5
	QUAD $0x0620264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 32], 6
	QUAD $0x07202e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 32], 7
	LONG $0x44b70f42; WORD $0x220e             // movzx    eax, word [rsi + r9 + 34]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x220e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 34], 1
	QUAD $0x02220654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 34], 2
	LONG $0x54c40f66; WORD $0x223e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 34], 3
	LONG $0x54c40f66; WORD $0x221e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 34], 4
	QUAD $0x05223e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 34], 5
	QUAD $0x06222654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 34], 6
	QUAD $0x07222e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 34], 7
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xd9650f66                           // pcmpgtw    xmm3, xmm1
	QUAD $0x0000d0249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm3
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x000100248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 256], xmm1
	LONG $0x44b70f42; WORD $0x240e             // movzx    eax, word [rsi + r9 + 36]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x240e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 36], 1
	QUAD $0x0224064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 36], 2
	LONG $0x4cc40f66; WORD $0x243e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 36], 3
	LONG $0x4cc40f66; WORD $0x241e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 36], 4
	QUAD $0x05243e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 36], 5
	QUAD $0x0624264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 36], 6
	LONG $0x44b70f42; WORD $0x260e             // movzx    eax, word [rsi + r9 + 38]
	QUAD $0x07242e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 36], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x260e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 38], 1
	QUAD $0x02260654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 38], 2
	LONG $0x54c40f66; WORD $0x263e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 38], 3
	LONG $0x54c40f66; WORD $0x261e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 38], 4
	QUAD $0x05263e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 38], 5
	QUAD $0x06262654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 38], 6
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xd9650f66                           // pcmpgtw    xmm3, xmm1
	QUAD $0x000120249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 288], xmm3
	QUAD $0x07262e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 38], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x000130248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 304], xmm1
	LONG $0x44b70f42; WORD $0x280e             // movzx    eax, word [rsi + r9 + 40]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x280e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 40], 1
	QUAD $0x0228064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 40], 2
	LONG $0x4cc40f66; WORD $0x283e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 40], 3
	LONG $0x4cc40f66; WORD $0x281e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 40], 4
	QUAD $0x05283e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 40], 5
	QUAD $0x0628264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 40], 6
	QUAD $0x07282e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 40], 7
	LONG $0x44b70f42; WORD $0x2a0e             // movzx    eax, word [rsi + r9 + 42]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x2a0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 42], 1
	QUAD $0x022a0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 42], 2
	LONG $0x54c40f66; WORD $0x2a3e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 42], 3
	LONG $0x54c40f66; WORD $0x2a1e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 42], 4
	QUAD $0x052a3e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 42], 5
	QUAD $0x062a2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 42], 6
	QUAD $0x072a2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 42], 7
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xd9650f66                           // pcmpgtw    xmm3, xmm1
	QUAD $0x000150249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 336], xmm3
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x000110248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 272], xmm1
	LONG $0x44b70f42; WORD $0x2c0e             // movzx    eax, word [rsi + r9 + 44]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x2c0e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 44], 1
	QUAD $0x022c064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 44], 2
	LONG $0x4cc40f66; WORD $0x2c3e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 44], 3
	LONG $0x4cc40f66; WORD $0x2c1e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 44], 4
	QUAD $0x052c3e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 44], 5
	QUAD $0x062c264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 44], 6
	LONG $0x44b70f42; WORD $0x2e0e             // movzx    eax, word [rsi + r9 + 46]
	QUAD $0x072c2e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 44], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x2e0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 46], 1
	QUAD $0x022e0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 46], 2
	LONG $0x54c40f66; WORD $0x2e3e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 46], 3
	LONG $0x54c40f66; WORD $0x2e1e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 46], 4
	QUAD $0x052e3e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 46], 5
	QUAD $0x062e2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 46], 6
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xd9650f66                           // pcmpgtw    xmm3, xmm1
	QUAD $0x000140249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 320], xmm3
	QUAD $0x072e2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 46], 7
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x0000f0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 240], xmm1
	LONG $0x44b70f42; WORD $0x300e             // movzx    eax, word [rsi + r9 + 48]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x300e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 48], 1
	QUAD $0x0230064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 48], 2
	LONG $0x4cc40f66; WORD $0x303e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 48], 3
	LONG $0x4cc40f66; WORD $0x301e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 48], 4
	QUAD $0x05303e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 48], 5
	QUAD $0x0630264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 48], 6
	QUAD $0x07302e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 48], 7
	LONG $0x44b70f42; WORD $0x320e             // movzx    eax, word [rsi + r9 + 50]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x320e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 50], 1
	QUAD $0x02320654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 50], 2
	LONG $0x54c40f66; WORD $0x323e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 50], 3
	LONG $0x54c40f66; WORD $0x321e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 50], 4
	QUAD $0x05323e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 50], 5
	QUAD $0x06322654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 50], 6
	QUAD $0x07322e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 50], 7
	LONG $0x6f0f4466; BYTE $0xe8               // movdqa    xmm13, xmm0
	LONG $0x650f4466; BYTE $0xe9               // pcmpgtw    xmm13, xmm1
	LONG $0xc86f0f66                           // movdqa    xmm1, xmm0
	LONG $0xca650f66                           // pcmpgtw    xmm1, xmm2
	QUAD $0x000170248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 368], xmm1
	LONG $0x44b70f42; WORD $0x340e             // movzx    eax, word [rsi + r9 + 52]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x340e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 52], 1
	QUAD $0x0234064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 52], 2
	LONG $0x4cc40f66; WORD $0x343e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 52], 3
	LONG $0x4cc40f66; WORD $0x341e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 52], 4
	QUAD $0x05343e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 52], 5
	QUAD $0x0634264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 52], 6
	LONG $0x44b70f42; WORD $0x360e             // movzx    eax, word [rsi + r9 + 54]
	QUAD $0x07342e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 52], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x360e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 54], 1
	QUAD $0x02360654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 54], 2
	LONG $0x54c40f66; WORD $0x363e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 54], 3
	LONG $0x54c40f66; WORD $0x361e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 54], 4
	QUAD $0x05363e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 54], 5
	QUAD $0x06362654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 54], 6
	LONG $0xd86f0f66                           // movdqa    xmm3, xmm0
	LONG $0xd9650f66                           // pcmpgtw    xmm3, xmm1
	QUAD $0x0001a0249c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 416], xmm3
	QUAD $0x07362e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 54], 7
	LONG $0x6f0f4466; BYTE $0xf8               // movdqa    xmm15, xmm0
	LONG $0x650f4466; BYTE $0xfa               // pcmpgtw    xmm15, xmm2
	LONG $0x44b70f42; WORD $0x380e             // movzx    eax, word [rsi + r9 + 56]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x4cc40f66; WORD $0x380e; BYTE $0x01 // pinsrw    xmm1, word [rsi + rcx + 56], 1
	QUAD $0x0238064cc40f4266                   // pinsrw    xmm1, word [rsi + r8 + 56], 2
	LONG $0x4cc40f66; WORD $0x383e; BYTE $0x03 // pinsrw    xmm1, word [rsi + rdi + 56], 3
	LONG $0x4cc40f66; WORD $0x381e; BYTE $0x04 // pinsrw    xmm1, word [rsi + rbx + 56], 4
	QUAD $0x05383e4cc40f4266                   // pinsrw    xmm1, word [rsi + r15 + 56], 5
	QUAD $0x0638264cc40f4266                   // pinsrw    xmm1, word [rsi + r12 + 56], 6
	QUAD $0x07382e4cc40f4266                   // pinsrw    xmm1, word [rsi + r13 + 56], 7
	LONG $0x44b70f42; WORD $0x3a0e             // movzx    eax, word [rsi + r9 + 58]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x3a0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 58], 1
	QUAD $0x023a0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 58], 2
	LONG $0x54c40f66; WORD $0x3a3e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 58], 3
	LONG $0x54c40f66; WORD $0x3a1e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 58], 4
	QUAD $0x053a3e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 58], 5
	QUAD $0x063a2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 58], 6
	QUAD $0x073a2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 58], 7
	LONG $0x6f0f4466; BYTE $0xc8               // movdqa    xmm9, xmm0
	LONG $0x650f4466; BYTE $0xc9               // pcmpgtw    xmm9, xmm1
	LONG $0x6f0f4466; BYTE $0xe0               // movdqa    xmm12, xmm0
	LONG $0x650f4466; BYTE $0xe2               // pcmpgtw    xmm12, xmm2
	LONG $0x44b70f42; WORD $0x3c0e             // movzx    eax, word [rsi + r9 + 60]
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x54c40f66; WORD $0x3c0e; BYTE $0x01 // pinsrw    xmm2, word [rsi + rcx + 60], 1
	QUAD $0x023c0654c40f4266                   // pinsrw    xmm2, word [rsi + r8 + 60], 2
	LONG $0x54c40f66; WORD $0x3c3e; BYTE $0x03 // pinsrw    xmm2, word [rsi + rdi + 60], 3
	LONG $0x54c40f66; WORD $0x3c1e; BYTE $0x04 // pinsrw    xmm2, word [rsi + rbx + 60], 4
	QUAD $0x053c3e54c40f4266                   // pinsrw    xmm2, word [rsi + r15 + 60], 5
	QUAD $0x063c2654c40f4266                   // pinsrw    xmm2, word [rsi + r12 + 60], 6
	LONG $0x44b70f42; WORD $0x3e0e             // movzx    eax, word [rsi + r9 + 62]
	QUAD $0x073c2e54c40f4266                   // pinsrw    xmm2, word [rsi + r13 + 60], 7
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x7cc40f66; WORD $0x3e0e; BYTE $0x01 // pinsrw    xmm7, word [rsi + rcx + 62], 1
	QUAD $0x023e067cc40f4266                   // pinsrw    xmm7, word [rsi + r8 + 62], 2
	LONG $0x7cc40f66; WORD $0x3e3e; BYTE $0x03 // pinsrw    xmm7, word [rsi + rdi + 62], 3
	LONG $0x7cc40f66; WORD $0x3e1e; BYTE $0x04 // pinsrw    xmm7, word [rsi + rbx + 62], 4
	QUAD $0x053e3e7cc40f4266                   // pinsrw    xmm7, word [rsi + r15 + 62], 5
	QUAD $0x063e267cc40f4266                   // pinsrw    xmm7, word [rsi + r12 + 62], 6
	LONG $0xe86f0f66                           // movdqa    xmm5, xmm0
	LONG $0xea650f66                           // pcmpgtw    xmm5, xmm2
	QUAD $0x073e2e7cc40f4266                   // pinsrw    xmm7, word [rsi + r13 + 62], 7
	LONG $0xf06f0f66                           // movdqa    xmm6, xmm0
	LONG $0xf7650f66                           // pcmpgtw    xmm6, xmm7
	LONG $0x630f4566; BYTE $0xdb               // packsswb    xmm11, xmm11
	QUAD $0x000000808d6f0f66                   // movdqa    xmm1, oword 128[rbp] /* [rip + .LCPI10_8] */
	LONG $0xf96f0f66                           // movdqa    xmm7, xmm1
	LONG $0xd96f0f66                           // movdqa    xmm3, xmm1
	LONG $0x6f0f4166; BYTE $0xc3               // movdqa    xmm0, xmm11
	LONG $0xe4ef0f66                           // pxor    xmm4, xmm4
	LONG $0x10380f66; BYTE $0xfc               // pblendvb    xmm7, xmm4, xmm0
	LONG $0x546f0f66; WORD $0x5024             // movdqa    xmm2, oword [rsp + 80]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x000000908d6f0f66                   // movdqa    xmm1, oword 144[rbp] /* [rip + .LCPI10_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xd2760f66                           // pcmpeqd    xmm2, xmm2
	QUAD $0x00016024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 352]
	LONG $0xc2ef0f66                           // pxor    xmm0, xmm2
	LONG $0x760f4566; BYTE $0xc0               // pcmpeqd    xmm8, xmm8
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xf8f80f66                           // psubb    xmm7, xmm0
	QUAD $0x00009024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 144]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x0000a09d6f0f4466; BYTE $0x00       // movdqa    xmm11, oword 160[rbp] /* [rip + .LCPI10_10] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4466; WORD $0xdc10             // pblendvb    xmm11, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xd9               // por    xmm11, xmm1
	LONG $0x546f0f66; WORD $0x2024             // movdqa    xmm2, oword [rsp + 32]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x000000b08d6f0f66                   // movdqa    xmm1, oword 176[rbp] /* [rip + .LCPI10_11] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xdf               // por    xmm11, xmm7
	QUAD $0x00008024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 128]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x0000c0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 192[rbp] /* [rip + .LCPI10_12] */
	LONG $0x6f0f4166; BYTE $0xfa               // movdqa    xmm7, xmm10
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x10380f66; BYTE $0xfc               // pblendvb    xmm7, xmm4, xmm0
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0x630f4566; BYTE $0xf6               // packsswb    xmm14, xmm14
	QUAD $0x000000d08d6f0f66                   // movdqa    xmm1, oword 208[rbp] /* [rip + .LCPI10_13] */
	LONG $0x6f0f4166; BYTE $0xc6               // movdqa    xmm0, xmm14
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xcfeb0f66                           // por    xmm1, xmm7
	LONG $0x546f0f66; WORD $0x6024             // movdqa    xmm2, oword [rsp + 96]
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x0000e0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 224[rbp] /* [rip + .LCPI10_14] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4466; WORD $0xf410             // pblendvb    xmm14, xmm4, xmm0
	LONG $0xeb0f4166; BYTE $0xcb               // por    xmm1, xmm11
	QUAD $0x0000a024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 160]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x6f0f4466; BYTE $0xdb               // movdqa    xmm11, xmm3
	LONG $0xfb6f0f66                           // movdqa    xmm7, xmm3
	LONG $0x10380f66; BYTE $0xfc               // pblendvb    xmm7, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xf1               // por    xmm14, xmm1
	QUAD $0x0001b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 432]
	LONG $0xef0f4166; BYTE $0xc0               // pxor    xmm0, xmm8
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xf8f80f66                           // psubb    xmm7, xmm0
	LONG $0x446f0f66; WORD $0x3024             // movdqa    xmm0, oword [rsp + 48]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x000000909d6f0f66                   // movdqa    xmm3, oword 144[rbp] /* [rip + .LCPI10_9] */
	LONG $0xcb6f0f66                           // movdqa    xmm1, xmm3
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	QUAD $0x0000b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 176]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x0000a0856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 160[rbp] /* [rip + .LCPI10_10] */
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x446f0f66; WORD $0x1024             // movdqa    xmm0, oword [rsp + 16]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x000000b08d6f0f66                   // movdqa    xmm1, oword 176[rbp] /* [rip + .LCPI10_11] */
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x380f4466; WORD $0xd410             // pblendvb    xmm10, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x0000e024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 224]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x000000d08d6f0f66                   // movdqa    xmm1, oword 208[rbp] /* [rip + .LCPI10_13] */
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xeb0f4166; BYTE $0xca               // por    xmm1, xmm10
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0x446f0f66; WORD $0x7024             // movdqa    xmm0, oword [rsp + 112]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x0000e0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 224[rbp] /* [rip + .LCPI10_14] */
	LONG $0x380f4466; WORD $0xd410             // pblendvb    xmm10, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	QUAD $0x00010024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 256]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x6f0f4166; BYTE $0xcb               // movdqa    xmm1, xmm11
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	QUAD $0x00012024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 288]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xd36f0f66                           // movdqa    xmm2, xmm3
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	QUAD $0x0000d024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 208]
	QUAD $0x0000016085ef0f66                   // pxor    xmm0, oword 352[rbp] /* [rip + .LCPI10_22] */
	LONG $0xdb760f66                           // pcmpeqd    xmm3, xmm3
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xc8f80f66                           // psubb    xmm1, xmm0
	QUAD $0x00013024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 304]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x6f0f4166; BYTE $0xf8               // movdqa    xmm7, xmm8
	LONG $0x10380f66; BYTE $0xfc               // pblendvb    xmm7, xmm4, xmm0
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0x00015024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 336]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x0110249c6f0f4466; WORD $0x0000     // movdqa    xmm11, oword [rsp + 272]
	LONG $0x630f4566; BYTE $0xdb               // packsswb    xmm11, xmm11
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	QUAD $0x000000b08d6f0f66                   // movdqa    xmm1, oword 176[rbp] /* [rip + .LCPI10_11] */
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	QUAD $0x000000c0956f0f66                   // movdqa    xmm2, oword 192[rbp] /* [rip + .LCPI10_12] */
	LONG $0x6f0f4166; BYTE $0xc3               // movdqa    xmm0, xmm11
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	QUAD $0x00014024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 320]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	QUAD $0x000000d08d6f0f66                   // movdqa    xmm1, oword 208[rbp] /* [rip + .LCPI10_13] */
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x0000f024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 240]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	QUAD $0x0170249c6f0f4466; WORD $0x0000     // movdqa    xmm11, oword [rsp + 368]
	LONG $0x630f4566; BYTE $0xdb               // packsswb    xmm11, xmm11
	LONG $0xcfeb0f66                           // por    xmm1, xmm7
	QUAD $0x000000e0bd6f0f66                   // movdqa    xmm7, oword 224[rbp] /* [rip + .LCPI10_14] */
	LONG $0x10380f66; BYTE $0xfc               // pblendvb    xmm7, xmm4, xmm0
	QUAD $0x00000080956f0f66                   // movdqa    xmm2, oword 128[rbp] /* [rip + .LCPI10_8] */
	LONG $0x6f0f4166; BYTE $0xc3               // movdqa    xmm0, xmm11
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	LONG $0xf9eb0f66                           // por    xmm7, xmm1
	LONG $0xef0f4466; BYTE $0xeb               // pxor    xmm13, xmm3
	LONG $0x630f4566; BYTE $0xed               // packsswb    xmm13, xmm13
	QUAD $0x0001a024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 416]
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x630f4566; BYTE $0xff               // packsswb    xmm15, xmm15
	LONG $0xf80f4166; BYTE $0xd5               // psubb    xmm2, xmm13
	QUAD $0x000000908d6f0f66                   // movdqa    xmm1, oword 144[rbp] /* [rip + .LCPI10_9] */
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0x6f0f4166; BYTE $0xc7               // movdqa    xmm0, xmm15
	LONG $0x380f4466; WORD $0xc410             // pblendvb    xmm8, xmm4, xmm0
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	LONG $0x630f4566; BYTE $0xc9               // packsswb    xmm9, xmm9
	LONG $0x630f4566; BYTE $0xe4               // packsswb    xmm12, xmm12
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	QUAD $0x000000b08d6f0f66                   // movdqa    xmm1, oword 176[rbp] /* [rip + .LCPI10_11] */
	LONG $0x6f0f4166; BYTE $0xc1               // movdqa    xmm0, xmm9
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	QUAD $0x000000c0956f0f66                   // movdqa    xmm2, oword 192[rbp] /* [rip + .LCPI10_12] */
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	QUAD $0x000000d08d6f0f66                   // movdqa    xmm1, oword 208[rbp] /* [rip + .LCPI10_13] */
	LONG $0xc56f0f66                           // movdqa    xmm0, xmm5
	LONG $0x10380f66; BYTE $0xcc               // pblendvb    xmm1, xmm4, xmm0
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	QUAD $0x000000e0956f0f66                   // movdqa    xmm2, oword 224[rbp] /* [rip + .LCPI10_14] */
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x10380f66; BYTE $0xd4               // pblendvb    xmm2, xmm4, xmm0
	LONG $0xd1eb0f66                           // por    xmm2, xmm1
	LONG $0x6f0f4166; BYTE $0xc6               // movdqa    xmm0, xmm14
	LONG $0x6c0f4166; BYTE $0xc2               // punpcklqdq    xmm0, xmm10
	LONG $0xcf6f0f66                           // movdqa    xmm1, xmm7
	LONG $0xca6c0f66                           // punpcklqdq    xmm1, xmm2
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI10_15] */
	LONG $0x00380f66; BYTE $0xcb               // pshufb    xmm1, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc1610f66                           // punpcklwd    xmm0, xmm1
	LONG $0xfa600f66                           // punpcklbw    xmm7, xmm2
	LONG $0x600f4566; BYTE $0xf2               // punpcklbw    xmm14, xmm10
	LONG $0x610f4466; BYTE $0xf7               // punpcklwd    xmm14, xmm7
	LONG $0x7f0f47f3; WORD $0x9634             // movdqu    oword [r14 + 4*r10], xmm14
	LONG $0x7f0f43f3; WORD $0x9644; BYTE $0x10 // movdqu    oword [r14 + 4*r10 + 16], xmm0
	LONG $0x08c28349                           // add    r10, 8
	QUAD $0x0000019024943b4c                   // cmp    r10, qword [rsp + 400]
	JNE  LBB10_125
	QUAD $0x000001c824bc8b4c                   // mov    r15, qword [rsp + 456]
	QUAD $0x0000019024bc3b4c                   // cmp    r15, qword [rsp + 400]
	LONG $0x24548b4c; BYTE $0x48               // mov    r10, qword [rsp + 72]
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	JNE  LBB10_127
	JMP  LBB10_130

LBB10_182:
	WORD $0x894c; BYTE $0xd8                   // mov    rax, r11
	LONG $0xfce08348                           // and    rax, -4
	WORD $0x8948; BYTE $0xc2                   // mov    rdx, rax
	LONG $0x07e2c148                           // shl    rdx, 7
	WORD $0x0148; BYTE $0xf2                   // add    rdx, rsi
	LONG $0x863c8d4d                           // lea    r15, [r14 + 4*rax]
	LONG $0xeb280f45                           // movaps    xmm13, xmm11
	LONG $0xebc60f45; BYTE $0x00               // shufps    xmm13, xmm11, 0
	LONG $0xfcc68148; WORD $0x0001; BYTE $0x00 // add    rsi, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI10_0] */

LBB10_183:
	QUAD $0xfffffe049e100ff3                           // movss    xmm3, dword [rsi - 508]
	QUAD $0xfffe0896100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 504]
	QUAD $0xfffe0c8e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 500]
	QUAD $0xfffffe108e100ff3                           // movss    xmm1, dword [rsi - 496]
	QUAD $0xfffe849e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 380], 16
	QUAD $0xffff049e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 252], 32
	LONG $0x213a0f66; WORD $0x845e; BYTE $0x30         // insertps    xmm3, dword [rsi - 124], 48
	QUAD $0xfe8896213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 376], 16
	QUAD $0xff0896213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 248], 32
	QUAD $0x308856213a0f4466                           // insertps    xmm10, dword [rsi - 120], 48
	QUAD $0xfe8c8e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 372], 16
	QUAD $0xff0c8e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 244], 32
	QUAD $0x308c4e213a0f4466                           // insertps    xmm9, dword [rsi - 116], 48
	QUAD $0xfffe908e213a0f66; WORD $0x10ff             // insertps    xmm1, dword [rsi - 368], 16
	QUAD $0xffff108e213a0f66; WORD $0x20ff             // insertps    xmm1, dword [rsi - 240], 32
	LONG $0x213a0f66; WORD $0x904e; BYTE $0x30         // insertps    xmm1, dword [rsi - 112], 48
	QUAD $0xfffe1486100f44f3; BYTE $0xff               // movss    xmm8, dword [rsi - 492]
	QUAD $0xfe9486213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm8, dword [rsi - 364], 16
	QUAD $0xff1486213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm8, dword [rsi - 236], 32
	LONG $0xe5280f45                                   // movaps    xmm12, xmm13
	QUAD $0x309446213a0f4466                           // insertps    xmm8, dword [rsi - 108], 48
	QUAD $0xfffffe1896100ff3                           // movss    xmm2, dword [rsi - 488]
	QUAD $0xfffe9896213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 360], 16
	QUAD $0xffff1896213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 232], 32
	LONG $0xe3c20f44; BYTE $0x02                       // cmpleps    xmm12, xmm3
	LONG $0x213a0f66; WORD $0x9856; BYTE $0x30         // insertps    xmm2, dword [rsi - 104], 48
	QUAD $0xfffffe1c9e100ff3                           // movss    xmm3, dword [rsi - 484]
	QUAD $0xfffe9c9e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 356], 16
	QUAD $0xffff1c9e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 228], 32
	LONG $0x6b0f4566; BYTE $0xe4                       // packssdw    xmm12, xmm12
	LONG $0x213a0f66; WORD $0x9c5e; BYTE $0x30         // insertps    xmm3, dword [rsi - 100], 48
	QUAD $0xfffffe24a6100ff3                           // movss    xmm4, dword [rsi - 476]
	QUAD $0xfffea4a6213a0f66; WORD $0x10ff             // insertps    xmm4, dword [rsi - 348], 16
	QUAD $0xffff24a6213a0f66; WORD $0x20ff             // insertps    xmm4, dword [rsi - 220], 32
	LONG $0x630f4566; BYTE $0xe4                       // packsswb    xmm12, xmm12
	LONG $0x213a0f66; WORD $0xa466; BYTE $0x30         // insertps    xmm4, dword [rsi - 92], 48
	LONG $0xfd280f41                                   // movaps    xmm7, xmm13
	QUAD $0xfffffe44ae100ff3                           // movss    xmm5, dword [rsi - 444]
	QUAD $0xfffec4ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 316], 16
	QUAD $0xffff44ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 188], 32
	LONG $0x02fcc20f                                   // cmpleps    xmm7, xmm4
	LONG $0x213a0f66; WORD $0xc46e; BYTE $0x30         // insertps    xmm5, dword [rsi - 60], 48
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	QUAD $0xfffffe6486100ff3                           // movss    xmm0, dword [rsi - 412]
	QUAD $0xfffee486213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 284], 16
	QUAD $0xffff6486213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 156], 32
	LONG $0x02f5c20f                                   // cmpleps    xmm6, xmm5
	LONG $0x213a0f66; WORD $0xe446; BYTE $0x30         // insertps    xmm0, dword [rsi - 28], 48
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x02e0c20f                                   // cmpleps    xmm4, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc2c20f41; BYTE $0x02                       // cmpleps    xmm0, xmm10
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0x6f0f4466; BYTE $0xf0                       // movdqa    xmm14, xmm0
	LONG $0xdb0f4566; BYTE $0xf7                       // pand    xmm14, xmm15
	LONG $0xf80f4466; BYTE $0xf0                       // psubb    xmm14, xmm0
	QUAD $0xfffe2096100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 480]
	QUAD $0xfea096213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 352], 16
	LONG $0xdb0f4566; BYTE $0xe7                       // pand    xmm12, xmm15
	QUAD $0xff2096213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 224], 32
	LONG $0xeb0f4566; BYTE $0xf4                       // por    xmm14, xmm12
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xe9c20f41; BYTE $0x02                       // cmpleps    xmm5, xmm9
	QUAD $0x30a056213a0f4466                           // insertps    xmm10, dword [rsi - 96], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02                       // psllw    xmm5, 2
	LONG $0x456f0f66; BYTE $0x10                       // movdqa    xmm0, oword 16[rbp] /* [rip + .LCPI10_1] */
	LONG $0xe8db0f66                                   // pand    xmm5, xmm0
	LONG $0xeb0f4166; BYTE $0xee                       // por    xmm5, xmm14
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c1c20f                                   // cmpleps    xmm0, xmm1
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0xc8c20f41; BYTE $0x02                       // cmpleps    xmm1, xmm8
	QUAD $0xfffe288e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 472]
	QUAD $0xfea88e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 344], 16
	QUAD $0xff288e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 216], 32
	QUAD $0x30a84e213a0f4466                           // insertps    xmm9, dword [rsi - 88], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0x6f0f4466; WORD $0x2075                     // movdqa    xmm14, oword 32[rbp] /* [rip + .LCPI10_2] */
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x6f0f4466; WORD $0x3075                     // movdqa    xmm14, oword 48[rbp] /* [rip + .LCPI10_3] */
	LONG $0xdb0f4166; BYTE $0xce                       // pand    xmm1, xmm14
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffe2ca6100f44f3; BYTE $0xff               // movss    xmm12, dword [rsi - 468]
	QUAD $0xfeaca6213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm12, dword [rsi - 340], 16
	QUAD $0xff2ca6213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm12, dword [rsi - 212], 32
	QUAD $0x30ac66213a0f4466                           // insertps    xmm12, dword [rsi - 84], 48
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c2c20f                                   // cmpleps    xmm0, xmm2
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0x02ebc20f                                   // cmpleps    xmm5, xmm3
	QUAD $0xfffffe3096100ff3                           // movss    xmm2, dword [rsi - 464]
	QUAD $0xfffeb096213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 336], 16
	QUAD $0xffff3096213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 208], 32
	LONG $0xff6b0f66                                   // packssdw    xmm7, xmm7
	LONG $0x213a0f66; WORD $0xb056; BYTE $0x30         // insertps    xmm2, dword [rsi - 80], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0x6f0f4466; WORD $0x4075                     // movdqa    xmm14, oword 64[rbp] /* [rip + .LCPI10_4] */
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x06                       // psllw    xmm5, 6
	LONG $0x5d6f0f66; BYTE $0x50                       // movdqa    xmm3, oword 80[rbp] /* [rip + .LCPI10_5] */
	LONG $0xebdb0f66                                   // pand    xmm5, xmm3
	LONG $0xe8eb0f66                                   // por    xmm5, xmm0
	LONG $0xc5280f45                                   // movaps    xmm8, xmm13
	LONG $0xc2c20f45; BYTE $0x02                       // cmpleps    xmm8, xmm10
	QUAD $0xfffffe349e100ff3                           // movss    xmm3, dword [rsi - 460]
	QUAD $0xfffeb49e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 332], 16
	QUAD $0xffff349e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 204], 32
	LONG $0x213a0f66; WORD $0xb45e; BYTE $0x30         // insertps    xmm3, dword [rsi - 76], 48
	LONG $0x6b0f4566; BYTE $0xc0                       // packssdw    xmm8, xmm8
	LONG $0x630f4566; BYTE $0xc0                       // packsswb    xmm8, xmm8
	LONG $0x710f4166; WORD $0x07f0                     // psllw    xmm8, 7
	LONG $0x456f0f66; BYTE $0x60                       // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xdb0f4466; BYTE $0xc0                       // pand    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc5                       // por    xmm8, xmm5
	QUAD $0xfffe3896100f44f3; BYTE $0xff               // movss    xmm10, dword [rsi - 456]
	QUAD $0xfeb896213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm10, dword [rsi - 328], 16
	QUAD $0xff3896213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm10, dword [rsi - 200], 32
	LONG $0xff630f66                                   // packsswb    xmm7, xmm7
	QUAD $0x30b856213a0f4466                           // insertps    xmm10, dword [rsi - 72], 48
	LONG $0xeb0f4466; BYTE $0xc1                       // por    xmm8, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc1c20f41; BYTE $0x02                       // cmpleps    xmm0, xmm9
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xc86f0f66                                   // movdqa    xmm1, xmm0
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xc8f80f66                                   // psubb    xmm1, xmm0
	QUAD $0xfffe3c8e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 452]
	QUAD $0xfebc8e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 324], 16
	LONG $0xdb0f4166; BYTE $0xff                       // pand    xmm7, xmm15
	QUAD $0xff3c8e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 196], 32
	LONG $0xcfeb0f66                                   // por    xmm1, xmm7
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xecc20f41; BYTE $0x02                       // cmpleps    xmm5, xmm12
	QUAD $0x30bc4e213a0f4466                           // insertps    xmm9, dword [rsi - 68], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02                       // psllw    xmm5, 2
	LONG $0x6ddb0f66; BYTE $0x10                       // pand    xmm5, oword 16[rbp] /* [rip + .LCPI10_1] */
	LONG $0xe9eb0f66                                   // por    xmm5, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c2c20f                                   // cmpleps    xmm0, xmm2
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x02cbc20f                                   // cmpleps    xmm1, xmm3
	QUAD $0xfffffe409e100ff3                           // movss    xmm3, dword [rsi - 448]
	QUAD $0xfffec09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 320], 16
	QUAD $0xffff409e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 192], 32
	LONG $0x213a0f66; WORD $0xc05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 64], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0x6f0f4466; WORD $0x2065                     // movdqa    xmm12, oword 32[rbp] /* [rip + .LCPI10_2] */
	LONG $0xdb0f4166; BYTE $0xc4                       // pand    xmm0, xmm12
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x4ddb0f66; BYTE $0x30                       // pand    xmm1, oword 48[rbp] /* [rip + .LCPI10_3] */
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffffe4896100ff3                           // movss    xmm2, dword [rsi - 440]
	QUAD $0xfffec896213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 312], 16
	QUAD $0xffff4896213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 184], 32
	LONG $0x213a0f66; WORD $0xc856; BYTE $0x30         // insertps    xmm2, dword [rsi - 56], 48
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc2c20f41; BYTE $0x02                       // cmpleps    xmm0, xmm10
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0xe9c20f41; BYTE $0x02                       // cmpleps    xmm5, xmm9
	QUAD $0xfffffe4cbe100ff3                           // movss    xmm7, dword [rsi - 436]
	QUAD $0xfffeccbe213a0f66; WORD $0x10ff             // insertps    xmm7, dword [rsi - 308], 16
	QUAD $0xffff4cbe213a0f66; WORD $0x20ff             // insertps    xmm7, dword [rsi - 180], 32
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0x213a0f66; WORD $0xcc7e; BYTE $0x30         // insertps    xmm7, dword [rsi - 52], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x06                       // psllw    xmm5, 6
	LONG $0x6ddb0f66; BYTE $0x50                       // pand    xmm5, oword 80[rbp] /* [rip + .LCPI10_5] */
	LONG $0xe8eb0f66                                   // por    xmm5, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c3c20f                                   // cmpleps    xmm0, xmm3
	QUAD $0xfffffe509e100ff3                           // movss    xmm3, dword [rsi - 432]
	QUAD $0xfffed09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 304], 16
	QUAD $0xffff509e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 176], 32
	LONG $0x213a0f66; WORD $0xd05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 48], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xf0710f66; BYTE $0x07                       // psllw    xmm0, 7
	LONG $0x6f0f4466; WORD $0x6055                     // movdqa    xmm10, oword 96[rbp] /* [rip + .LCPI10_6] */
	LONG $0xdb0f4166; BYTE $0xc2                       // pand    xmm0, xmm10
	LONG $0xc5eb0f66                                   // por    xmm0, xmm5
	QUAD $0xfffffe54ae100ff3                           // movss    xmm5, dword [rsi - 428]
	QUAD $0xfffed4ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 300], 16
	QUAD $0xffff54ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 172], 32
	LONG $0x213a0f66; WORD $0xd46e; BYTE $0x30         // insertps    xmm5, dword [rsi - 44], 48
	LONG $0xc1eb0f66                                   // por    xmm0, xmm1
	QUAD $0xfffe588e100f44f3; BYTE $0xff               // movss    xmm9, dword [rsi - 424]
	QUAD $0xfed88e213a0f4466; WORD $0xffff; BYTE $0x10 // insertps    xmm9, dword [rsi - 296], 16
	QUAD $0xff588e213a0f4466; WORD $0xffff; BYTE $0x20 // insertps    xmm9, dword [rsi - 168], 32
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	QUAD $0x30d84e213a0f4466                           // insertps    xmm9, dword [rsi - 40], 48
	LONG $0x620f4466; BYTE $0xc0                       // punpckldq    xmm8, xmm0
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c2c20f                                   // cmpleps    xmm0, xmm2
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xc86f0f66                                   // movdqa    xmm1, xmm0
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xc8f80f66                                   // psubb    xmm1, xmm0
	QUAD $0xfffffe5c96100ff3                           // movss    xmm2, dword [rsi - 420]
	QUAD $0xfffedc96213a0f66; WORD $0x10ff             // insertps    xmm2, dword [rsi - 292], 16
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	QUAD $0xffff5c96213a0f66; WORD $0x20ff             // insertps    xmm2, dword [rsi - 164], 32
	LONG $0xceeb0f66                                   // por    xmm1, xmm6
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	LONG $0x02f7c20f                                   // cmpleps    xmm6, xmm7
	LONG $0x213a0f66; WORD $0xdc56; BYTE $0x30         // insertps    xmm2, dword [rsi - 36], 48
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x02                       // psllw    xmm6, 2
	LONG $0x456f0f66; BYTE $0x10                       // movdqa    xmm0, oword 16[rbp] /* [rip + .LCPI10_1] */
	LONG $0xf0db0f66                                   // pand    xmm6, xmm0
	LONG $0xf1eb0f66                                   // por    xmm6, xmm1
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c3c20f                                   // cmpleps    xmm0, xmm3
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x02cdc20f                                   // cmpleps    xmm1, xmm5
	QUAD $0xfffffe609e100ff3                           // movss    xmm3, dword [rsi - 416]
	QUAD $0xfffee09e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 288], 16
	QUAD $0xffff609e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 160], 32
	LONG $0x213a0f66; WORD $0xe05e; BYTE $0x30         // insertps    xmm3, dword [rsi - 32], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x03                       // psllw    xmm0, 3
	LONG $0xdb0f4166; BYTE $0xc4                       // pand    xmm0, xmm12
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0x6f0f4466; WORD $0x3065                     // movdqa    xmm12, oword 48[rbp] /* [rip + .LCPI10_3] */
	LONG $0xdb0f4166; BYTE $0xcc                       // pand    xmm1, xmm12
	LONG $0xc8eb0f66                                   // por    xmm1, xmm0
	QUAD $0xfffffe68ae100ff3                           // movss    xmm5, dword [rsi - 408]
	QUAD $0xfffee8ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 280], 16
	QUAD $0xffff68ae213a0f66; WORD $0x20ff             // insertps    xmm5, dword [rsi - 152], 32
	LONG $0x213a0f66; WORD $0xe86e; BYTE $0x30         // insertps    xmm5, dword [rsi - 24], 48
	LONG $0xceeb0f66                                   // por    xmm1, xmm6
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0xc1c20f41; BYTE $0x02                       // cmpleps    xmm0, xmm9
	LONG $0xf5280f41                                   // movaps    xmm6, xmm13
	LONG $0x02f2c20f                                   // cmpleps    xmm6, xmm2
	QUAD $0xfffffe6cbe100ff3                           // movss    xmm7, dword [rsi - 404]
	QUAD $0xfffeecbe213a0f66; WORD $0x10ff             // insertps    xmm7, dword [rsi - 276], 16
	QUAD $0xffff6cbe213a0f66; WORD $0x20ff             // insertps    xmm7, dword [rsi - 148], 32
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0x213a0f66; WORD $0xec7e; BYTE $0x30         // insertps    xmm7, dword [rsi - 20], 48
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xdb0f4166; BYTE $0xc7                       // pand    xmm0, xmm15
	LONG $0xf0710f66; BYTE $0x05                       // psllw    xmm0, 5
	LONG $0xdb0f4166; BYTE $0xc6                       // pand    xmm0, xmm14
	LONG $0xf66b0f66                                   // packssdw    xmm6, xmm6
	LONG $0xf6630f66                                   // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7                       // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x06                       // psllw    xmm6, 6
	LONG $0x6f0f4466; WORD $0x504d                     // movdqa    xmm9, oword 80[rbp] /* [rip + .LCPI10_5] */
	LONG $0xdb0f4166; BYTE $0xf1                       // pand    xmm6, xmm9
	LONG $0xf0eb0f66                                   // por    xmm6, xmm0
	LONG $0xd5280f41                                   // movaps    xmm2, xmm13
	LONG $0x02d3c20f                                   // cmpleps    xmm2, xmm3
	QUAD $0xfffffe7086100ff3                           // movss    xmm0, dword [rsi - 400]
	QUAD $0xfffef086213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 272], 16
	QUAD $0xffff7086213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 144], 32
	LONG $0x213a0f66; WORD $0xf046; BYTE $0x30         // insertps    xmm0, dword [rsi - 16], 48
	LONG $0xd26b0f66                                   // packssdw    xmm2, xmm2
	LONG $0xd2630f66                                   // packsswb    xmm2, xmm2
	LONG $0xf2710f66; BYTE $0x07                       // psllw    xmm2, 7
	LONG $0xdb0f4166; BYTE $0xd2                       // pand    xmm2, xmm10
	LONG $0xd6eb0f66                                   // por    xmm2, xmm6
	QUAD $0xfffffe74b6100ff3                           // movss    xmm6, dword [rsi - 396]
	QUAD $0xfffef4b6213a0f66; WORD $0x10ff             // insertps    xmm6, dword [rsi - 268], 16
	QUAD $0xffff74b6213a0f66; WORD $0x20ff             // insertps    xmm6, dword [rsi - 140], 32
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0x213a0f66; WORD $0xf476; BYTE $0x30         // insertps    xmm6, dword [rsi - 12], 48
	LONG $0xd1eb0f66                                   // por    xmm2, xmm1
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x02cdc20f                                   // cmpleps    xmm1, xmm5
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xe96f0f66                                   // movdqa    xmm5, xmm1
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xe9f80f66                                   // psubb    xmm5, xmm1
	QUAD $0xfffffe789e100ff3                           // movss    xmm3, dword [rsi - 392]
	QUAD $0xfffef89e213a0f66; WORD $0x10ff             // insertps    xmm3, dword [rsi - 264], 16
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	QUAD $0xffff789e213a0f66; WORD $0x20ff             // insertps    xmm3, dword [rsi - 136], 32
	LONG $0xeceb0f66                                   // por    xmm5, xmm4
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x02e7c20f                                   // cmpleps    xmm4, xmm7
	LONG $0x213a0f66; WORD $0xf85e; BYTE $0x30         // insertps    xmm3, dword [rsi - 8], 48
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x02                       // psllw    xmm4, 2
	LONG $0x65db0f66; BYTE $0x10                       // pand    xmm4, oword 16[rbp] /* [rip + .LCPI10_1] */
	LONG $0xe5eb0f66                                   // por    xmm4, xmm5
	LONG $0xed280f41                                   // movaps    xmm5, xmm13
	LONG $0x02e8c20f                                   // cmpleps    xmm5, xmm0
	LONG $0xcd280f41                                   // movaps    xmm1, xmm13
	LONG $0x02cec20f                                   // cmpleps    xmm1, xmm6
	QUAD $0xfffffe7c86100ff3                           // movss    xmm0, dword [rsi - 388]
	QUAD $0xfffefc86213a0f66; WORD $0x10ff             // insertps    xmm0, dword [rsi - 260], 16
	QUAD $0xffff7c86213a0f66; WORD $0x20ff             // insertps    xmm0, dword [rsi - 132], 32
	LONG $0x213a0f66; WORD $0xfc46; BYTE $0x30         // insertps    xmm0, dword [rsi - 4], 48
	LONG $0xed6b0f66                                   // packssdw    xmm5, xmm5
	LONG $0xed630f66                                   // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef                       // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03                       // psllw    xmm5, 3
	LONG $0x6ddb0f66; BYTE $0x20                       // pand    xmm5, oword 32[rbp] /* [rip + .LCPI10_2] */
	LONG $0xc96b0f66                                   // packssdw    xmm1, xmm1
	LONG $0xc9630f66                                   // packsswb    xmm1, xmm1
	LONG $0xdb0f4166; BYTE $0xcf                       // pand    xmm1, xmm15
	LONG $0xf1710f66; BYTE $0x04                       // psllw    xmm1, 4
	LONG $0xdb0f4166; BYTE $0xcc                       // pand    xmm1, xmm12
	LONG $0xcdeb0f66                                   // por    xmm1, xmm5
	QUAD $0xfffffe80ae100ff3                           // movss    xmm5, dword [rsi - 384]
	QUAD $0xffff00ae213a0f66; WORD $0x10ff             // insertps    xmm5, dword [rsi - 256], 16
	LONG $0x213a0f66; WORD $0x806e; BYTE $0x20         // insertps    xmm5, dword [rsi - 128], 32
	LONG $0xcceb0f66                                   // por    xmm1, xmm4
	LONG $0xe5280f41                                   // movaps    xmm4, xmm13
	LONG $0x02e3c20f                                   // cmpleps    xmm4, xmm3
	LONG $0xdd280f41                                   // movaps    xmm3, xmm13
	LONG $0x02d8c20f                                   // cmpleps    xmm3, xmm0
	LONG $0x213a0f66; WORD $0x302e                     // insertps    xmm5, dword [rsi], 48
	LONG $0xe46b0f66                                   // packssdw    xmm4, xmm4
	LONG $0xe4630f66                                   // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7                       // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x05                       // psllw    xmm4, 5
	LONG $0xdb0f4166; BYTE $0xe6                       // pand    xmm4, xmm14
	LONG $0xdb6b0f66                                   // packssdw    xmm3, xmm3
	LONG $0xdb630f66                                   // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf                       // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06                       // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xd9                       // pand    xmm3, xmm9
	LONG $0xdceb0f66                                   // por    xmm3, xmm4
	LONG $0xc5280f41                                   // movaps    xmm0, xmm13
	LONG $0x02c5c20f                                   // cmpleps    xmm0, xmm5
	LONG $0xc06b0f66                                   // packssdw    xmm0, xmm0
	LONG $0xc0630f66                                   // packsswb    xmm0, xmm0
	LONG $0xf0710f66; BYTE $0x07                       // psllw    xmm0, 7
	LONG $0xdb0f4166; BYTE $0xc2                       // pand    xmm0, xmm10
	LONG $0xc3eb0f66                                   // por    xmm0, xmm3
	LONG $0xc1eb0f66                                   // por    xmm0, xmm1
	LONG $0xd0620f66                                   // punpckldq    xmm2, xmm0
	LONG $0x600f4466; BYTE $0xc2                       // punpcklbw    xmm8, xmm2
	LONG $0x380f4466; WORD $0x4500; BYTE $0x70         // pshufb    xmm8, oword 112[rbp] /* [rip + .LCPI10_7] */
	LONG $0x7f0f45f3; WORD $0x8e04                     // movdqu    oword [r14 + 4*rcx], xmm8
	LONG $0x04c18348                                   // add    rcx, 4
	LONG $0x00c68148; WORD $0x0002; BYTE $0x00         // add    rsi, 512
	WORD $0x3948; BYTE $0xc8                           // cmp    rax, rcx
	JNE  LBB10_183
	WORD $0x3949; BYTE $0xc3                           // cmp    r11, rax
	JNE  LBB10_185
	JMP  LBB10_188

DATA LCDATA8<>+0x000(SB)/8, $0x0000000001010101
DATA LCDATA8<>+0x008(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x010(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA8<>+0x018(SB)/8, $0xfcfcfcfcfcfcfcfc
DATA LCDATA8<>+0x020(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA8<>+0x028(SB)/8, $0xf8f8f8f8f8f8f8f8
DATA LCDATA8<>+0x030(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA8<>+0x038(SB)/8, $0xf0f0f0f0f0f0f0f0
DATA LCDATA8<>+0x040(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA8<>+0x048(SB)/8, $0xe0e0e0e0e0e0e0e0
DATA LCDATA8<>+0x050(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA8<>+0x058(SB)/8, $0xc0c0c0c0c0c0c0c0
DATA LCDATA8<>+0x060(SB)/8, $0x8080808080808080
DATA LCDATA8<>+0x068(SB)/8, $0x8080808080808080
DATA LCDATA8<>+0x070(SB)/8, $0x0b030a0209010800
DATA LCDATA8<>+0x078(SB)/8, $0x0f070e060d050c04
DATA LCDATA8<>+0x080(SB)/8, $0x0202020202020202
DATA LCDATA8<>+0x088(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x090(SB)/8, $0x0404040404040404
DATA LCDATA8<>+0x098(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0a0(SB)/8, $0x0808080808080808
DATA LCDATA8<>+0x0a8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0b0(SB)/8, $0x1010101010101010
DATA LCDATA8<>+0x0b8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0c0(SB)/8, $0x2020202020202020
DATA LCDATA8<>+0x0c8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0d0(SB)/8, $0x4040404040404040
DATA LCDATA8<>+0x0d8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0e0(SB)/8, $0x8080808080808080
DATA LCDATA8<>+0x0e8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x0f0(SB)/8, $0x0f070e060d050c04
DATA LCDATA8<>+0x0f8(SB)/8, $0x0000000000000000
DATA LCDATA8<>+0x100(SB)/8, $0x0202020202020202
DATA LCDATA8<>+0x108(SB)/8, $0x0202020202020202
DATA LCDATA8<>+0x110(SB)/8, $0x0404040404040404
DATA LCDATA8<>+0x118(SB)/8, $0x0404040404040404
DATA LCDATA8<>+0x120(SB)/8, $0x0808080808080808
DATA LCDATA8<>+0x128(SB)/8, $0x0808080808080808
DATA LCDATA8<>+0x130(SB)/8, $0x1010101010101010
DATA LCDATA8<>+0x138(SB)/8, $0x1010101010101010
DATA LCDATA8<>+0x140(SB)/8, $0x2020202020202020
DATA LCDATA8<>+0x148(SB)/8, $0x2020202020202020
DATA LCDATA8<>+0x150(SB)/8, $0x4040404040404040
DATA LCDATA8<>+0x158(SB)/8, $0x4040404040404040
DATA LCDATA8<>+0x160(SB)/8, $0xffffffffffffffff
DATA LCDATA8<>+0x168(SB)/8, $0xffffffffffffffff
GLOBL LCDATA8<>(SB), 8, $368

TEXT ·_comparison_greater_equal_scalar_arr_sse4(SB), $328-48

	MOVQ typ+0(FP), DI
	MOVQ left+8(FP), SI
	MOVQ right+16(FP), DX
	MOVQ out+24(FP), CX
	MOVQ length+32(FP), R8
	MOVQ offset+40(FP), R9
	MOVQ SP, BP
	ADDQ $16, SP
	ANDQ $-16, SP
	MOVQ BP, 304(SP)
	LEAQ LCDATA8<>(SB), BP

	WORD $0x894d; BYTE $0xc3 // mov    r11, r8
	WORD $0x8949; BYTE $0xcf // mov    r15, rcx
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JG   LBB11_26
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JLE  LBB11_2
	WORD $0xff83; BYTE $0x04 // cmp    edi, 4
	JE   LBB11_99
	WORD $0xff83; BYTE $0x05 // cmp    edi, 5
	JE   LBB11_114
	WORD $0xff83; BYTE $0x06 // cmp    edi, 6
	JNE  LBB11_201
	WORD $0x8b44; BYTE $0x36 // mov    r14d, dword [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_17
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_15:
	WORD $0x3b44; BYTE $0x32                   // cmp    r14d, dword [rdx]
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	LONG $0x000000be; BYTE $0x00               // mov    esi, 0
	LONG $0xffd68040                           // adc    sil, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1f               // movzx    r8d, byte [r15 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1f3c8841                           // mov    byte [r15 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB11_15
	LONG $0x01c78349                           // add    r15, 1

LBB11_17:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_21
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB11_19:
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	LONG $0x7c723b44                           // cmp    r14d, dword [rdx + 124]
	LONG $0x2414930f                           // setae    byte [rsp]
	LONG $0x78723b44                           // cmp    r14d, dword [rdx + 120]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x74723b44                           // cmp    r14d, dword [rdx + 116]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x70723b44                           // cmp    r14d, dword [rdx + 112]
	LONG $0x2454930f; BYTE $0x18               // setae    byte [rsp + 24]
	LONG $0x6c723b44                           // cmp    r14d, dword [rdx + 108]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	LONG $0x68723b44                           // cmp    r14d, dword [rdx + 104]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x64723b44                           // cmp    r14d, dword [rdx + 100]
	LONG $0x2454930f; BYTE $0x38               // setae    byte [rsp + 56]
	LONG $0x5c723b44                           // cmp    r14d, dword [rdx + 92]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x58723b44                           // cmp    r14d, dword [rdx + 88]
	LONG $0x2454930f; BYTE $0x48               // setae    byte [rsp + 72]
	LONG $0x54723b44                           // cmp    r14d, dword [rdx + 84]
	LONG $0x2454930f; BYTE $0x40               // setae    byte [rsp + 64]
	LONG $0x50723b44                           // cmp    r14d, dword [rdx + 80]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x4c723b44                           // cmp    r14d, dword [rdx + 76]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x48723b44                           // cmp    r14d, dword [rdx + 72]
	LONG $0x2454930f; BYTE $0x58               // setae    byte [rsp + 88]
	LONG $0x44723b44                           // cmp    r14d, dword [rdx + 68]
	LONG $0x2454930f; BYTE $0x68               // setae    byte [rsp + 104]
	LONG $0x3c723b44                           // cmp    r14d, dword [rdx + 60]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x38723b44                           // cmp    r14d, dword [rdx + 56]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x34723b44                           // cmp    r14d, dword [rdx + 52]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x30723b44                           // cmp    r14d, dword [rdx + 48]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x2c723b44                           // cmp    r14d, dword [rdx + 44]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x28723b44                           // cmp    r14d, dword [rdx + 40]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x24723b44                           // cmp    r14d, dword [rdx + 36]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x1c723b44                           // cmp    r14d, dword [rdx + 28]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x18723b44                           // cmp    r14d, dword [rdx + 24]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x14723b44                           // cmp    r14d, dword [rdx + 20]
	LONG $0xd6930f40                           // setae    sil
	LONG $0x10723b44                           // cmp    r14d, dword [rdx + 16]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x0c723b44                           // cmp    r14d, dword [rdx + 12]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x08723b44                           // cmp    r14d, dword [rdx + 8]
	LONG $0xd4930f41                           // setae    r12b
	WORD $0x3b44; BYTE $0x32                   // cmp    r14d, dword [rdx]
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x04723b44                           // cmp    r14d, dword [rdx + 4]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x20723b44                           // cmp    r14d, dword [rdx + 32]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x40723b44                           // cmp    r14d, dword [rdx + 64]
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x60723b44                           // cmp    r14d, dword [rdx + 96]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	QUAD $0x000000e024bc0244                   // add    r15b, byte [rsp + 224]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x05e6c040                           // shl    sil, 5
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8841; BYTE $0x07                   // mov    byte [r15], al
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000008024bc0240                   // add    dil, byte [rsp + 128]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf9                   // or    r9b, dil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01478845                           // mov    byte [r15 + 1], r8b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02478841                           // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x80ea8348                           // sub    rdx, -128
	LONG $0x04c78349                           // add    r15, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB11_19
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB11_21:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_137
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB11_24

LBB11_26:
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JLE  LBB11_27
	WORD $0xff83; BYTE $0x09 // cmp    edi, 9
	JE   LBB11_157
	WORD $0xff83; BYTE $0x0b // cmp    edi, 11
	JE   LBB11_172
	WORD $0xff83; BYTE $0x0c // cmp    edi, 12
	JNE  LBB11_201
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff2         // movsd    xmm0, qword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_49
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_47:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0x000000be; BYTE $0x00 // mov    esi, 0
	LONG $0xffd68040             // adc    sil, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3f // movzx    r9d, byte [r15 + rdi]
	WORD $0x3044; BYTE $0xce     // xor    sil, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2040; BYTE $0xf3     // and    bl, sil
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3f1c8841             // mov    byte [r15 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB11_47
	LONG $0x01c78349             // add    r15, 1

LBB11_49:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_53
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	QUAD $0x000000e02494894c // mov    qword [rsp + 224], r10

LBB11_51:
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	LONG $0x022e0f66                           // ucomisd    xmm0, qword [rdx]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x422e0f66; BYTE $0x08               // ucomisd    xmm0, qword [rdx + 8]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x422e0f66; BYTE $0x10               // ucomisd    xmm0, qword [rdx + 16]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x422e0f66; BYTE $0x18               // ucomisd    xmm0, qword [rdx + 24]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x422e0f66; BYTE $0x20               // ucomisd    xmm0, qword [rdx + 32]
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x422e0f66; BYTE $0x28               // ucomisd    xmm0, qword [rdx + 40]
	LONG $0x2454930f; BYTE $0x40               // setae    byte [rsp + 64]
	LONG $0x422e0f66; BYTE $0x30               // ucomisd    xmm0, qword [rdx + 48]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x422e0f66; BYTE $0x38               // ucomisd    xmm0, qword [rdx + 56]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x422e0f66; BYTE $0x40               // ucomisd    xmm0, qword [rdx + 64]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x422e0f66; BYTE $0x48               // ucomisd    xmm0, qword [rdx + 72]
	LONG $0xd6930f40                           // setae    sil
	LONG $0x422e0f66; BYTE $0x50               // ucomisd    xmm0, qword [rdx + 80]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x422e0f66; BYTE $0x58               // ucomisd    xmm0, qword [rdx + 88]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x422e0f66; BYTE $0x60               // ucomisd    xmm0, qword [rdx + 96]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x422e0f66; BYTE $0x68               // ucomisd    xmm0, qword [rdx + 104]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x422e0f66; BYTE $0x70               // ucomisd    xmm0, qword [rdx + 112]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x422e0f66; BYTE $0x78               // ucomisd    xmm0, qword [rdx + 120]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	QUAD $0x00000080822e0f66                   // ucomisd    xmm0, qword [rdx + 128]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	QUAD $0x00000088822e0f66                   // ucomisd    xmm0, qword [rdx + 136]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	QUAD $0x00000090822e0f66                   // ucomisd    xmm0, qword [rdx + 144]
	LONG $0x2454930f; BYTE $0x68               // setae    byte [rsp + 104]
	QUAD $0x00000098822e0f66                   // ucomisd    xmm0, qword [rdx + 152]
	LONG $0x2454930f; BYTE $0x58               // setae    byte [rsp + 88]
	QUAD $0x000000a0822e0f66                   // ucomisd    xmm0, qword [rdx + 160]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	QUAD $0x000000a8822e0f66                   // ucomisd    xmm0, qword [rdx + 168]
	LONG $0x2454930f; BYTE $0x48               // setae    byte [rsp + 72]
	QUAD $0x000000b0822e0f66                   // ucomisd    xmm0, qword [rdx + 176]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	QUAD $0x000000b8822e0f66                   // ucomisd    xmm0, qword [rdx + 184]
	LONG $0xd6930f41                           // setae    r14b
	QUAD $0x000000c0822e0f66                   // ucomisd    xmm0, qword [rdx + 192]
	LONG $0x2454930f; BYTE $0x18               // setae    byte [rsp + 24]
	QUAD $0x000000c8822e0f66                   // ucomisd    xmm0, qword [rdx + 200]
	LONG $0x2454930f; BYTE $0x38               // setae    byte [rsp + 56]
	QUAD $0x000000d0822e0f66                   // ucomisd    xmm0, qword [rdx + 208]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	QUAD $0x000000d8822e0f66                   // ucomisd    xmm0, qword [rdx + 216]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	QUAD $0x000000e0822e0f66                   // ucomisd    xmm0, qword [rdx + 224]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	QUAD $0x000000e8822e0f66                   // ucomisd    xmm0, qword [rdx + 232]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	QUAD $0x000000f0822e0f66                   // ucomisd    xmm0, qword [rdx + 240]
	LONG $0x2414930f                           // setae    byte [rsp]
	QUAD $0x000000f8822e0f66                   // ucomisd    xmm0, qword [rdx + 248]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	WORD $0x0045; BYTE $0xc9                   // add    r9b, r9b
	QUAD $0x00000080248c0244                   // add    r9b, byte [rsp + 128]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x07e4c041                           // shl    r12b, 7
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	LONG $0x02e3c041                           // shl    r11b, 2
	WORD $0x0845; BYTE $0xcb                   // or    r11b, r9b
	WORD $0x0040; BYTE $0xf6                   // add    sil, sil
	LONG $0x24740240; BYTE $0x70               // add    sil, byte [rsp + 112]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xdd                   // or    r13b, r11b
	LONG $0x02e7c040                           // shl    dil, 2
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	QUAD $0x000000b0249cb60f                   // movzx    ebx, byte [rsp + 176]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0844; BYTE $0xeb                   // or    bl, r13b
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x03e0c041                           // shl    r8b, 3
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xc2                   // or    r10b, r8b
	LONG $0x05e7c041                           // shl    r15b, 5
	WORD $0x0845; BYTE $0xd7                   // or    r15b, r10b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0x0840; BYTE $0xf1                   // or    cl, sil
	WORD $0x0841; BYTE $0xdc                   // or    r12b, bl
	WORD $0x0844; BYTE $0xf9                   // or    cl, r15b
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x00000090249cb60f                   // movzx    ebx, byte [rsp + 144]
	WORD $0xdb00                               // add    bl, bl
	LONG $0x60245c02                           // add    bl, byte [rsp + 96]
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x68               // movzx    ebx, byte [rsp + 104]
	WORD $0xe3c0; BYTE $0x02                   // shl    bl, 2
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x58               // movzx    ebx, byte [rsp + 88]
	WORD $0xe3c0; BYTE $0x03                   // shl    bl, 3
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x50               // movzx    ebx, byte [rsp + 80]
	WORD $0xe3c0; BYTE $0x04                   // shl    bl, 4
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0xde89                               // mov    esi, ebx
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x05                   // shl    bl, 5
	WORD $0x0840; BYTE $0xf3                   // or    bl, sil
	WORD $0x8845; BYTE $0x27                   // mov    byte [r15], r12b
	LONG $0x2474b60f; BYTE $0x30               // movzx    esi, byte [rsp + 48]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e6c041                           // shl    r14b, 7
	WORD $0x0841; BYTE $0xf6                   // or    r14b, sil
	LONG $0x014f8841                           // mov    byte [r15 + 1], cl
	WORD $0x0841; BYTE $0xde                   // or    r14b, bl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0x18244c02                           // add    cl, byte [rsp + 24]
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x08               // movzx    ecx, byte [rsp + 8]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd908                               // or    cl, bl
	WORD $0xcb89                               // mov    ebx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd908                               // or    cl, bl
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02778845                           // mov    byte [r15 + 2], r14b
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c78349                           // add    r15, 4
	QUAD $0x000000e024848348; BYTE $0xff       // add    qword [rsp + 224], -1
	JNE  LBB11_51
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]

LBB11_53:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_195
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB11_197

LBB11_2:
	WORD $0xff83; BYTE $0x02 // cmp    edi, 2
	JE   LBB11_56
	WORD $0xff83; BYTE $0x03 // cmp    edi, 3
	JNE  LBB11_201
	WORD $0x8a44; BYTE $0x36 // mov    r14b, byte [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_8
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_6:
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x37 // movzx    r9d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x373c8841             // mov    byte [r15 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB11_6
	LONG $0x01c78349             // add    r15, 1

LBB11_8:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_9
	LONG $0x10fa8349         // cmp    r10, 16
	LONG $0x24348844         // mov    byte [rsp], r14b
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f82494894c // mov    qword [rsp + 248], r10
	JB   LBB11_82
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x05e0c148         // shl    rax, 5
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc7 // cmp    r15, rax
	JAE  LBB11_85
	LONG $0x97048d4b         // lea    rax, [r15 + 4*r10]
	WORD $0x3948; BYTE $0xc2 // cmp    rdx, rax
	JAE  LBB11_85

LBB11_82:
	WORD $0xc031             // xor    eax, eax
	QUAD $0x0000010024848948 // mov    qword [rsp + 256], rax
	WORD $0x894d; BYTE $0xfd // mov    r13, r15

LBB11_88:
	QUAD $0x0000010024942b4c // sub    r10, qword [rsp + 256]
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB11_89:
	LONG $0x1f723a44                           // cmp    r14b, byte [rdx + 31]
	LONG $0x24549d0f; BYTE $0x78               // setge    byte [rsp + 120]
	LONG $0x1e723a44                           // cmp    r14b, byte [rdx + 30]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0x1d723a44                           // cmp    r14b, byte [rdx + 29]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x1c723a44                           // cmp    r14b, byte [rdx + 28]
	LONG $0x24549d0f; BYTE $0x18               // setge    byte [rsp + 24]
	LONG $0x1b723a44                           // cmp    r14b, byte [rdx + 27]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	LONG $0x1a723a44                           // cmp    r14b, byte [rdx + 26]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x19723a44                           // cmp    r14b, byte [rdx + 25]
	LONG $0x24549d0f; BYTE $0x38               // setge    byte [rsp + 56]
	LONG $0x17723a44                           // cmp    r14b, byte [rdx + 23]
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x16723a44                           // cmp    r14b, byte [rdx + 22]
	LONG $0x24549d0f; BYTE $0x40               // setge    byte [rsp + 64]
	LONG $0x15723a44                           // cmp    r14b, byte [rdx + 21]
	LONG $0x24549d0f; BYTE $0x48               // setge    byte [rsp + 72]
	LONG $0x14723a44                           // cmp    r14b, byte [rdx + 20]
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x13723a44                           // cmp    r14b, byte [rdx + 19]
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x12723a44                           // cmp    r14b, byte [rdx + 18]
	LONG $0x24549d0f; BYTE $0x58               // setge    byte [rsp + 88]
	LONG $0x11723a44                           // cmp    r14b, byte [rdx + 17]
	LONG $0x24549d0f; BYTE $0x68               // setge    byte [rsp + 104]
	LONG $0x0f723a44                           // cmp    r14b, byte [rdx + 15]
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x0e723a44                           // cmp    r14b, byte [rdx + 14]
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x0d723a44                           // cmp    r14b, byte [rdx + 13]
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	LONG $0x0c723a44                           // cmp    r14b, byte [rdx + 12]
	LONG $0xd49d0f41                           // setge    r12b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x0b                   // cmp    al, byte [rdx + 11]
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x0a                   // cmp    al, byte [rdx + 10]
	LONG $0xd69d0f41                           // setge    r14b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x09                   // cmp    al, byte [rdx + 9]
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x07                   // cmp    al, byte [rdx + 7]
	LONG $0xd69d0f40                           // setge    sil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x06                   // cmp    al, byte [rdx + 6]
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x05                   // cmp    al, byte [rdx + 5]
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x04                   // cmp    al, byte [rdx + 4]
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x03                   // cmp    al, byte [rdx + 3]
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x02                   // cmp    al, byte [rdx + 2]
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x023a                               // cmp    al, byte [rdx]
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x01                   // cmp    al, byte [rdx + 1]
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	WORD $0x894c; BYTE $0xeb                   // mov    rbx, r13
	LONG $0x2cb60f44; BYTE $0x24               // movzx    r13d, byte [rsp]
	LONG $0x086a3a44                           // cmp    r13b, byte [rdx + 8]
	WORD $0x8949; BYTE $0xdd                   // mov    r13, rbx
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0x5a3a; BYTE $0x10                   // cmp    bl, byte [rdx + 16]
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0x5a3a; BYTE $0x18                   // cmp    bl, byte [rdx + 24]
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	WORD $0xc000                               // add    al, al
	LONG $0xd0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x05e1c041                           // shl    r9b, 5
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0844; BYTE $0xce                   // or    sil, r9b
	LONG $0x00758841                           // mov    byte [r13], sil
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000e0249c0244                   // add    r11b, byte [rsp + 224]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xf7                   // or    r15b, r14b
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x34b60f44; BYTE $0x24               // movzx    r14d, byte [rsp]
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	LONG $0x01558845                           // mov    byte [r13 + 1], r10b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02458841                           // mov    byte [r13 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03458841                           // mov    byte [r13 + 3], al
	LONG $0x20c28348                           // add    rdx, 32
	LONG $0x04c58349                           // add    r13, 4
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB11_89
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f824948b4c                   // mov    r10, qword [rsp + 248]
	JMP  LBB11_91

LBB11_27:
	WORD $0xff83; BYTE $0x07 // cmp    edi, 7
	JE   LBB11_139
	WORD $0xff83; BYTE $0x08 // cmp    edi, 8
	JNE  LBB11_201
	WORD $0x8b4c; BYTE $0x36 // mov    r14, qword [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_33
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_31:
	WORD $0x3b4c; BYTE $0x32                   // cmp    r14, qword [rdx]
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	LONG $0x000000be; BYTE $0x00               // mov    esi, 0
	LONG $0xffd68040                           // adc    sil, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1f               // movzx    r8d, byte [r15 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1f3c8841                           // mov    byte [r15 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB11_31
	LONG $0x01c78349                           // add    r15, 1

LBB11_33:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_37
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB11_35:
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	LONG $0xf8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 248]
	LONG $0x2414930f                           // setae    byte [rsp]
	LONG $0xf0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 240]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0xe8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 232]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0xe0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 224]
	LONG $0x2454930f; BYTE $0x18               // setae    byte [rsp + 24]
	LONG $0xd8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 216]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	LONG $0xd0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 208]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0xc8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 200]
	LONG $0x2454930f; BYTE $0x38               // setae    byte [rsp + 56]
	LONG $0xb8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 184]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0xb0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 176]
	LONG $0x2454930f; BYTE $0x48               // setae    byte [rsp + 72]
	LONG $0xa8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 168]
	LONG $0x2454930f; BYTE $0x40               // setae    byte [rsp + 64]
	LONG $0xa0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 160]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x98b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 152]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x90b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 144]
	LONG $0x2454930f; BYTE $0x58               // setae    byte [rsp + 88]
	LONG $0x88b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 136]
	LONG $0x2454930f; BYTE $0x68               // setae    byte [rsp + 104]
	LONG $0x78723b4c                           // cmp    r14, qword [rdx + 120]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x70723b4c                           // cmp    r14, qword [rdx + 112]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x68723b4c                           // cmp    r14, qword [rdx + 104]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x60723b4c                           // cmp    r14, qword [rdx + 96]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x58723b4c                           // cmp    r14, qword [rdx + 88]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x50723b4c                           // cmp    r14, qword [rdx + 80]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x48723b4c                           // cmp    r14, qword [rdx + 72]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x38723b4c                           // cmp    r14, qword [rdx + 56]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x30723b4c                           // cmp    r14, qword [rdx + 48]
	WORD $0x930f; BYTE $0xd3                   // setae    bl
	LONG $0x28723b4c                           // cmp    r14, qword [rdx + 40]
	LONG $0xd6930f40                           // setae    sil
	LONG $0x20723b4c                           // cmp    r14, qword [rdx + 32]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x18723b4c                           // cmp    r14, qword [rdx + 24]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x10723b4c                           // cmp    r14, qword [rdx + 16]
	LONG $0xd4930f41                           // setae    r12b
	WORD $0x3b4c; BYTE $0x32                   // cmp    r14, qword [rdx]
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x08723b4c                           // cmp    r14, qword [rdx + 8]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x40723b4c                           // cmp    r14, qword [rdx + 64]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x80b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 128]
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0xc0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 192]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	QUAD $0x000000e024bc0244                   // add    r15b, byte [rsp + 224]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x05e6c040                           // shl    sil, 5
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8841; BYTE $0x07                   // mov    byte [r15], al
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000008024bc0240                   // add    dil, byte [rsp + 128]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf9                   // or    r9b, dil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01478845                           // mov    byte [r15 + 1], r8b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02478841                           // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c78349                           // add    r15, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB11_35
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB11_37:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_155
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB11_40

LBB11_56:
	WORD $0x8a44; BYTE $0x36 // mov    r14b, byte [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_60
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_58:
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	LONG $0x01528d48             // lea    rdx, [rdx + 1]
	LONG $0x000000be; BYTE $0x00 // mov    esi, 0
	LONG $0xffd68040             // adc    sil, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3f // movzx    r9d, byte [r15 + rdi]
	WORD $0x3044; BYTE $0xce     // xor    sil, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2040; BYTE $0xf3     // and    bl, sil
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3f1c8841             // mov    byte [r15 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB11_58
	LONG $0x01c78349             // add    r15, 1

LBB11_60:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_61
	LONG $0x10fa8349         // cmp    r10, 16
	LONG $0x24348844         // mov    byte [rsp], r14b
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000f82494894c // mov    qword [rsp + 248], r10
	JB   LBB11_63
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x05e0c148         // shl    rax, 5
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc7 // cmp    r15, rax
	JAE  LBB11_66
	LONG $0x97048d4b         // lea    rax, [r15 + 4*r10]
	WORD $0x3948; BYTE $0xc2 // cmp    rdx, rax
	JAE  LBB11_66

LBB11_63:
	WORD $0xc031             // xor    eax, eax
	QUAD $0x000000c024848948 // mov    qword [rsp + 192], rax
	WORD $0x894d; BYTE $0xfd // mov    r13, r15

LBB11_69:
	QUAD $0x000000c024942b4c // sub    r10, qword [rsp + 192]
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10

LBB11_70:
	LONG $0x1f723a44                           // cmp    r14b, byte [rdx + 31]
	LONG $0x2454930f; BYTE $0x78               // setae    byte [rsp + 120]
	LONG $0x1e723a44                           // cmp    r14b, byte [rdx + 30]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x1d723a44                           // cmp    r14b, byte [rdx + 29]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x1c723a44                           // cmp    r14b, byte [rdx + 28]
	LONG $0x2454930f; BYTE $0x18               // setae    byte [rsp + 24]
	LONG $0x1b723a44                           // cmp    r14b, byte [rdx + 27]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	LONG $0x1a723a44                           // cmp    r14b, byte [rdx + 26]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x19723a44                           // cmp    r14b, byte [rdx + 25]
	LONG $0x2454930f; BYTE $0x38               // setae    byte [rsp + 56]
	LONG $0x17723a44                           // cmp    r14b, byte [rdx + 23]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x16723a44                           // cmp    r14b, byte [rdx + 22]
	LONG $0x2454930f; BYTE $0x40               // setae    byte [rsp + 64]
	LONG $0x15723a44                           // cmp    r14b, byte [rdx + 21]
	LONG $0x2454930f; BYTE $0x48               // setae    byte [rsp + 72]
	LONG $0x14723a44                           // cmp    r14b, byte [rdx + 20]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x13723a44                           // cmp    r14b, byte [rdx + 19]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x12723a44                           // cmp    r14b, byte [rdx + 18]
	LONG $0x2454930f; BYTE $0x58               // setae    byte [rsp + 88]
	LONG $0x11723a44                           // cmp    r14b, byte [rdx + 17]
	LONG $0x2454930f; BYTE $0x68               // setae    byte [rsp + 104]
	LONG $0x0f723a44                           // cmp    r14b, byte [rdx + 15]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x0e723a44                           // cmp    r14b, byte [rdx + 14]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x0d723a44                           // cmp    r14b, byte [rdx + 13]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0x0c723a44                           // cmp    r14b, byte [rdx + 12]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x0b                   // cmp    al, byte [rdx + 11]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x0a                   // cmp    al, byte [rdx + 10]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x09                   // cmp    al, byte [rdx + 9]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x07                   // cmp    al, byte [rdx + 7]
	LONG $0xd6930f40                           // setae    sil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x06                   // cmp    al, byte [rdx + 6]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x05                   // cmp    al, byte [rdx + 5]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x04                   // cmp    al, byte [rdx + 4]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x03                   // cmp    al, byte [rdx + 3]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x02                   // cmp    al, byte [rdx + 2]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x023a                               // cmp    al, byte [rdx]
	QUAD $0x000000d02494930f                   // setae    byte [rsp + 208]
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0x423a; BYTE $0x01                   // cmp    al, byte [rdx + 1]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	WORD $0x894c; BYTE $0xeb                   // mov    rbx, r13
	LONG $0x2cb60f44; BYTE $0x24               // movzx    r13d, byte [rsp]
	LONG $0x086a3a44                           // cmp    r13b, byte [rdx + 8]
	WORD $0x8949; BYTE $0xdd                   // mov    r13, rbx
	QUAD $0x000000e02494930f                   // setae    byte [rsp + 224]
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0x5a3a; BYTE $0x10                   // cmp    bl, byte [rdx + 16]
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x241cb60f                           // movzx    ebx, byte [rsp]
	WORD $0x5a3a; BYTE $0x18                   // cmp    bl, byte [rdx + 24]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	WORD $0xc000                               // add    al, al
	LONG $0xd0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 208]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xc108                               // or    cl, al
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xcf                   // or    dil, cl
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x05e1c041                           // shl    r9b, 5
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0844; BYTE $0xce                   // or    sil, r9b
	LONG $0x00758841                           // mov    byte [r13], sil
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000e0249c0244                   // add    r11b, byte [rsp + 224]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xf7                   // or    r15b, r14b
	LONG $0x04e4c041                           // shl    r12b, 4
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xe0                   // or    al, r12b
	LONG $0x34b60f44; BYTE $0x24               // movzx    r14d, byte [rsp]
	LONG $0x244cb60f; BYTE $0x70               // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xca                   // or    r10b, cl
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	LONG $0x01558845                           // mov    byte [r13 + 1], r10b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x48               // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02458841                           // mov    byte [r13 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0xa0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 160]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x78               // movzx    eax, byte [rsp + 120]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03458841                           // mov    byte [r13 + 3], al
	LONG $0x20c28348                           // add    rdx, 32
	LONG $0x04c58349                           // add    r13, 4
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB11_70
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000f824948b4c                   // mov    r10, qword [rsp + 248]
	JMP  LBB11_72

LBB11_139:
	WORD $0x8b44; BYTE $0x36 // mov    r14d, dword [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_143
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_141:
	WORD $0x3b44; BYTE $0x32                   // cmp    r14d, dword [rdx]
	LONG $0x04528d48                           // lea    rdx, [rdx + 4]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x37               // movzx    r8d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x373c8841                           // mov    byte [r15 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB11_141
	LONG $0x01c78349                           // add    r15, 1

LBB11_143:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_147
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB11_145:
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	LONG $0x7c723b44                           // cmp    r14d, dword [rdx + 124]
	LONG $0x24149d0f                           // setge    byte [rsp]
	LONG $0x78723b44                           // cmp    r14d, dword [rdx + 120]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x74723b44                           // cmp    r14d, dword [rdx + 116]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0x70723b44                           // cmp    r14d, dword [rdx + 112]
	LONG $0x24549d0f; BYTE $0x18               // setge    byte [rsp + 24]
	LONG $0x6c723b44                           // cmp    r14d, dword [rdx + 108]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	LONG $0x68723b44                           // cmp    r14d, dword [rdx + 104]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x64723b44                           // cmp    r14d, dword [rdx + 100]
	LONG $0x24549d0f; BYTE $0x38               // setge    byte [rsp + 56]
	LONG $0x5c723b44                           // cmp    r14d, dword [rdx + 92]
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x58723b44                           // cmp    r14d, dword [rdx + 88]
	LONG $0x24549d0f; BYTE $0x48               // setge    byte [rsp + 72]
	LONG $0x54723b44                           // cmp    r14d, dword [rdx + 84]
	LONG $0x24549d0f; BYTE $0x40               // setge    byte [rsp + 64]
	LONG $0x50723b44                           // cmp    r14d, dword [rdx + 80]
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x4c723b44                           // cmp    r14d, dword [rdx + 76]
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x48723b44                           // cmp    r14d, dword [rdx + 72]
	LONG $0x24549d0f; BYTE $0x58               // setge    byte [rsp + 88]
	LONG $0x44723b44                           // cmp    r14d, dword [rdx + 68]
	LONG $0x24549d0f; BYTE $0x68               // setge    byte [rsp + 104]
	LONG $0x3c723b44                           // cmp    r14d, dword [rdx + 60]
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x38723b44                           // cmp    r14d, dword [rdx + 56]
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x34723b44                           // cmp    r14d, dword [rdx + 52]
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x30723b44                           // cmp    r14d, dword [rdx + 48]
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x2c723b44                           // cmp    r14d, dword [rdx + 44]
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x28723b44                           // cmp    r14d, dword [rdx + 40]
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x24723b44                           // cmp    r14d, dword [rdx + 36]
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x1c723b44                           // cmp    r14d, dword [rdx + 28]
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	LONG $0x18723b44                           // cmp    r14d, dword [rdx + 24]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x14723b44                           // cmp    r14d, dword [rdx + 20]
	LONG $0xd69d0f40                           // setge    sil
	LONG $0x10723b44                           // cmp    r14d, dword [rdx + 16]
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x0c723b44                           // cmp    r14d, dword [rdx + 12]
	LONG $0xd59d0f41                           // setge    r13b
	LONG $0x08723b44                           // cmp    r14d, dword [rdx + 8]
	LONG $0xd49d0f41                           // setge    r12b
	WORD $0x3b44; BYTE $0x32                   // cmp    r14d, dword [rdx]
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x04723b44                           // cmp    r14d, dword [rdx + 4]
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x20723b44                           // cmp    r14d, dword [rdx + 32]
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x40723b44                           // cmp    r14d, dword [rdx + 64]
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0x60723b44                           // cmp    r14d, dword [rdx + 96]
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	QUAD $0x000000e024bc0244                   // add    r15b, byte [rsp + 224]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x05e6c040                           // shl    sil, 5
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8841; BYTE $0x07                   // mov    byte [r15], al
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000008024bc0240                   // add    dil, byte [rsp + 128]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf9                   // or    r9b, dil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01478845                           // mov    byte [r15 + 1], r8b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02478841                           // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x80ea8348                           // sub    rdx, -128
	LONG $0x04c78349                           // add    r15, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB11_145
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB11_147:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_153
	WORD $0xff31             // xor    edi, edi
	JMP  LBB11_150

LBB11_99:
	LONG $0x36b70f44         // movzx    r14d, word [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_103
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_101:
	LONG $0x323b4466                           // cmp    r14w, word [rdx]
	LONG $0x02528d48                           // lea    rdx, [rdx + 2]
	LONG $0x000000be; BYTE $0x00               // mov    esi, 0
	LONG $0xffd68040                           // adc    sil, -1
	LONG $0x07588d48                           // lea    rbx, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xd8490f48                           // cmovns    rbx, rax
	LONG $0x03fbc148                           // sar    rbx, 3
	LONG $0x04b60f45; BYTE $0x1f               // movzx    r8d, byte [r15 + rbx]
	WORD $0x3044; BYTE $0xc6                   // xor    sil, r8b
	LONG $0x00dd3c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rbx]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xf7                   // and    dil, sil
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x1f3c8841                           // mov    byte [r15 + rbx], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB11_101
	LONG $0x01c78349                           // add    r15, 1

LBB11_103:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_107
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB11_105:
	LONG $0x247c894c; BYTE $0x78         // mov    qword [rsp + 120], r15
	LONG $0x723b4466; BYTE $0x3e         // cmp    r14w, word [rdx + 62]
	LONG $0x2414930f                     // setae    byte [rsp]
	LONG $0x723b4466; BYTE $0x3c         // cmp    r14w, word [rdx + 60]
	LONG $0x2454930f; BYTE $0x10         // setae    byte [rsp + 16]
	LONG $0x723b4466; BYTE $0x3a         // cmp    r14w, word [rdx + 58]
	LONG $0x2454930f; BYTE $0x08         // setae    byte [rsp + 8]
	LONG $0x723b4466; BYTE $0x38         // cmp    r14w, word [rdx + 56]
	LONG $0x2454930f; BYTE $0x18         // setae    byte [rsp + 24]
	LONG $0x723b4466; BYTE $0x36         // cmp    r14w, word [rdx + 54]
	LONG $0x2454930f; BYTE $0x28         // setae    byte [rsp + 40]
	LONG $0x723b4466; BYTE $0x34         // cmp    r14w, word [rdx + 52]
	LONG $0x2454930f; BYTE $0x38         // setae    byte [rsp + 56]
	LONG $0x723b4466; BYTE $0x32         // cmp    r14w, word [rdx + 50]
	LONG $0x2454930f; BYTE $0x30         // setae    byte [rsp + 48]
	LONG $0x723b4466; BYTE $0x2e         // cmp    r14w, word [rdx + 46]
	LONG $0x2454930f; BYTE $0x48         // setae    byte [rsp + 72]
	LONG $0x723b4466; BYTE $0x2c         // cmp    r14w, word [rdx + 44]
	LONG $0x2454930f; BYTE $0x40         // setae    byte [rsp + 64]
	LONG $0x723b4466; BYTE $0x2a         // cmp    r14w, word [rdx + 42]
	LONG $0x2454930f; BYTE $0x50         // setae    byte [rsp + 80]
	LONG $0x723b4466; BYTE $0x28         // cmp    r14w, word [rdx + 40]
	LONG $0x2454930f; BYTE $0x58         // setae    byte [rsp + 88]
	LONG $0x723b4466; BYTE $0x26         // cmp    r14w, word [rdx + 38]
	LONG $0x2454930f; BYTE $0x68         // setae    byte [rsp + 104]
	LONG $0x723b4466; BYTE $0x24         // cmp    r14w, word [rdx + 36]
	QUAD $0x000000902494930f             // setae    byte [rsp + 144]
	LONG $0x723b4466; BYTE $0x22         // cmp    r14w, word [rdx + 34]
	QUAD $0x000000a02494930f             // setae    byte [rsp + 160]
	LONG $0x723b4466; BYTE $0x1e         // cmp    r14w, word [rdx + 30]
	LONG $0xd0930f41                     // setae    r8b
	LONG $0x723b4466; BYTE $0x1c         // cmp    r14w, word [rdx + 28]
	LONG $0x2454930f; BYTE $0x70         // setae    byte [rsp + 112]
	LONG $0x723b4466; BYTE $0x1a         // cmp    r14w, word [rdx + 26]
	QUAD $0x000000b02494930f             // setae    byte [rsp + 176]
	LONG $0x723b4466; BYTE $0x18         // cmp    r14w, word [rdx + 24]
	LONG $0xd3930f41                     // setae    r11b
	LONG $0x723b4466; BYTE $0x16         // cmp    r14w, word [rdx + 22]
	LONG $0xd2930f41                     // setae    r10b
	LONG $0x723b4466; BYTE $0x14         // cmp    r14w, word [rdx + 20]
	LONG $0xd1930f41                     // setae    r9b
	LONG $0x723b4466; BYTE $0x12         // cmp    r14w, word [rdx + 18]
	LONG $0xd7930f40                     // setae    dil
	LONG $0x723b4466; BYTE $0x0e         // cmp    r14w, word [rdx + 14]
	WORD $0x930f; BYTE $0xd0             // setae    al
	LONG $0x723b4466; BYTE $0x0c         // cmp    r14w, word [rdx + 12]
	WORD $0x930f; BYTE $0xd3             // setae    bl
	LONG $0x723b4466; BYTE $0x0a         // cmp    r14w, word [rdx + 10]
	LONG $0xd6930f40                     // setae    sil
	LONG $0x723b4466; BYTE $0x08         // cmp    r14w, word [rdx + 8]
	WORD $0x930f; BYTE $0xd1             // setae    cl
	LONG $0x723b4466; BYTE $0x06         // cmp    r14w, word [rdx + 6]
	LONG $0xd5930f41                     // setae    r13b
	LONG $0x723b4466; BYTE $0x04         // cmp    r14w, word [rdx + 4]
	LONG $0xd4930f41                     // setae    r12b
	LONG $0x323b4466                     // cmp    r14w, word [rdx]
	QUAD $0x000000e02494930f             // setae    byte [rsp + 224]
	LONG $0x723b4466; BYTE $0x02         // cmp    r14w, word [rdx + 2]
	LONG $0xd7930f41                     // setae    r15b
	LONG $0x723b4466; BYTE $0x10         // cmp    r14w, word [rdx + 16]
	QUAD $0x000000802494930f             // setae    byte [rsp + 128]
	LONG $0x723b4466; BYTE $0x20         // cmp    r14w, word [rdx + 32]
	LONG $0x2454930f; BYTE $0x60         // setae    byte [rsp + 96]
	LONG $0x723b4466; BYTE $0x30         // cmp    r14w, word [rdx + 48]
	LONG $0x2454930f; BYTE $0x20         // setae    byte [rsp + 32]
	WORD $0x0045; BYTE $0xff             // add    r15b, r15b
	QUAD $0x000000e024bc0244             // add    r15b, byte [rsp + 224]
	LONG $0x02e4c041                     // shl    r12b, 2
	WORD $0x0845; BYTE $0xfc             // or    r12b, r15b
	LONG $0x247c8b4c; BYTE $0x78         // mov    r15, qword [rsp + 120]
	LONG $0x03e5c041                     // shl    r13b, 3
	WORD $0x0845; BYTE $0xe5             // or    r13b, r12b
	WORD $0xe1c0; BYTE $0x04             // shl    cl, 4
	WORD $0x0844; BYTE $0xe9             // or    cl, r13b
	LONG $0x05e6c040                     // shl    sil, 5
	WORD $0x0840; BYTE $0xce             // or    sil, cl
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0xd808                         // or    al, bl
	WORD $0x0840; BYTE $0xf0             // or    al, sil
	WORD $0x8841; BYTE $0x07             // mov    byte [r15], al
	WORD $0x0040; BYTE $0xff             // add    dil, dil
	QUAD $0x0000008024bc0240             // add    dil, byte [rsp + 128]
	LONG $0x02e1c041                     // shl    r9b, 2
	WORD $0x0841; BYTE $0xf9             // or    r9b, dil
	LONG $0x03e2c041                     // shl    r10b, 3
	WORD $0x0845; BYTE $0xca             // or    r10b, r9b
	LONG $0x04e3c041                     // shl    r11b, 4
	WORD $0x0845; BYTE $0xd3             // or    r11b, r10b
	QUAD $0x000000b02484b60f             // movzx    eax, byte [rsp + 176]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0x0844; BYTE $0xd8             // or    al, r11b
	LONG $0x244cb60f; BYTE $0x70         // movzx    ecx, byte [rsp + 112]
	WORD $0xe1c0; BYTE $0x06             // shl    cl, 6
	LONG $0x07e0c041                     // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8             // or    r8b, cl
	WORD $0x0841; BYTE $0xc0             // or    r8b, al
	LONG $0x01478845                     // mov    byte [r15 + 1], r8b
	QUAD $0x000000a02484b60f             // movzx    eax, byte [rsp + 160]
	WORD $0xc000                         // add    al, al
	LONG $0x60244402                     // add    al, byte [rsp + 96]
	WORD $0xc189                         // mov    ecx, eax
	QUAD $0x000000902484b60f             // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x68         // movzx    eax, byte [rsp + 104]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58         // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50         // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x40         // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x48         // movzx    eax, byte [rsp + 72]
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0xd808                         // or    al, bl
	WORD $0xc808                         // or    al, cl
	LONG $0x02478841                     // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x30         // movzx    eax, byte [rsp + 48]
	WORD $0xc000                         // add    al, al
	LONG $0x20244402                     // add    al, byte [rsp + 32]
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x38         // movzx    eax, byte [rsp + 56]
	WORD $0xe0c0; BYTE $0x02             // shl    al, 2
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28         // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03             // shl    al, 3
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18         // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04             // shl    al, 4
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08         // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05             // shl    al, 5
	WORD $0xc808                         // or    al, cl
	WORD $0xc189                         // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x10         // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06             // shl    bl, 6
	LONG $0x2404b60f                     // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07             // shl    al, 7
	WORD $0xd808                         // or    al, bl
	WORD $0xc808                         // or    al, cl
	LONG $0x03478841                     // mov    byte [r15 + 3], al
	LONG $0x40c28348                     // add    rdx, 64
	LONG $0x04c78349                     // add    r15, 4
	QUAD $0x000000d024848348; BYTE $0xff // add    qword [rsp + 208], -1
	JNE  LBB11_105
	QUAD $0x00000088249c8b4c             // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c             // mov    r10, qword [rsp + 192]

LBB11_107:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_112
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB11_110

LBB11_114:
	LONG $0x36b70f44         // movzx    r14d, word [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_118
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_116:
	LONG $0x323b4466             // cmp    r14w, word [rdx]
	LONG $0x02528d48             // lea    rdx, [rdx + 2]
	WORD $0x9d0f; BYTE $0xd3     // setge    bl
	WORD $0xdbf6                 // neg    bl
	LONG $0x07708d48             // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf0490f48             // cmovns    rsi, rax
	LONG $0x03fec148             // sar    rsi, 3
	LONG $0x0cb60f45; BYTE $0x37 // movzx    r9d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	QUAD $0x00000000f5048d44     // lea    r8d, [8*rsi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bf; BYTE $0x00 // mov    edi, 1
	WORD $0xe7d3                 // shl    edi, cl
	WORD $0x2040; BYTE $0xdf     // and    dil, bl
	WORD $0x3044; BYTE $0xcf     // xor    dil, r9b
	LONG $0x373c8841             // mov    byte [r15 + rsi], dil
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB11_116
	LONG $0x01c78349             // add    r15, 1

LBB11_118:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_119
	LONG $0x08fa8349         // cmp    r10, 8
	LONG $0x24348944         // mov    dword [rsp], r14d
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000001002494894c // mov    qword [rsp + 256], r10
	JB   LBB11_121
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x06e0c148         // shl    rax, 6
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc7 // cmp    r15, rax
	JAE  LBB11_124
	LONG $0x97048d4b         // lea    rax, [r15 + 4*r10]
	WORD $0x3948; BYTE $0xd0 // cmp    rax, rdx
	JBE  LBB11_124

LBB11_121:
	WORD $0xc031                 // xor    eax, eax
	LONG $0x24448948; BYTE $0x20 // mov    qword [rsp + 32], rax
	WORD $0x8948; BYTE $0xd0     // mov    rax, rdx
	WORD $0x894d; BYTE $0xfc     // mov    r12, r15

LBB11_127:
	LONG $0x24542b4c; BYTE $0x20 // sub    r10, qword [rsp + 32]
	QUAD $0x000000c02494894c     // mov    qword [rsp + 192], r10

LBB11_128:
	LONG $0x703b4466; BYTE $0x3e               // cmp    r14w, word [rax + 62]
	LONG $0x24549d0f; BYTE $0x78               // setge    byte [rsp + 120]
	LONG $0x703b4466; BYTE $0x3c               // cmp    r14w, word [rax + 60]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0x703b4466; BYTE $0x3a               // cmp    r14w, word [rax + 58]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0x703b4466; BYTE $0x38               // cmp    r14w, word [rax + 56]
	LONG $0x24549d0f; BYTE $0x18               // setge    byte [rsp + 24]
	LONG $0x703b4466; BYTE $0x36               // cmp    r14w, word [rax + 54]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	LONG $0x703b4466; BYTE $0x34               // cmp    r14w, word [rax + 52]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0x703b4466; BYTE $0x32               // cmp    r14w, word [rax + 50]
	LONG $0x24549d0f; BYTE $0x38               // setge    byte [rsp + 56]
	LONG $0x703b4466; BYTE $0x2e               // cmp    r14w, word [rax + 46]
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0x703b4466; BYTE $0x2c               // cmp    r14w, word [rax + 44]
	LONG $0x24549d0f; BYTE $0x40               // setge    byte [rsp + 64]
	LONG $0x703b4466; BYTE $0x2a               // cmp    r14w, word [rax + 42]
	LONG $0x24549d0f; BYTE $0x48               // setge    byte [rsp + 72]
	LONG $0x703b4466; BYTE $0x28               // cmp    r14w, word [rax + 40]
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x703b4466; BYTE $0x26               // cmp    r14w, word [rax + 38]
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x703b4466; BYTE $0x24               // cmp    r14w, word [rax + 36]
	LONG $0x24549d0f; BYTE $0x58               // setge    byte [rsp + 88]
	LONG $0x703b4466; BYTE $0x22               // cmp    r14w, word [rax + 34]
	LONG $0x24549d0f; BYTE $0x68               // setge    byte [rsp + 104]
	LONG $0x703b4466; BYTE $0x1e               // cmp    r14w, word [rax + 30]
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x703b4466; BYTE $0x1c               // cmp    r14w, word [rax + 28]
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x703b4466; BYTE $0x1a               // cmp    r14w, word [rax + 26]
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	LONG $0x703b4466; BYTE $0x18               // cmp    r14w, word [rax + 24]
	LONG $0xd59d0f41                           // setge    r13b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x16413b66                           // cmp    ax, word [rcx + 22]
	LONG $0xd79d0f41                           // setge    r15b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x14413b66                           // cmp    ax, word [rcx + 20]
	LONG $0xd69d0f41                           // setge    r14b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x12413b66                           // cmp    ax, word [rcx + 18]
	LONG $0xd39d0f41                           // setge    r11b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x0e413b66                           // cmp    ax, word [rcx + 14]
	LONG $0xd69d0f40                           // setge    sil
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x0c413b66                           // cmp    ax, word [rcx + 12]
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x0a413b66                           // cmp    ax, word [rcx + 10]
	LONG $0xd19d0f41                           // setge    r9b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x08413b66                           // cmp    ax, word [rcx + 8]
	LONG $0xd09d0f41                           // setge    r8b
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x06413b66                           // cmp    ax, word [rcx + 6]
	LONG $0xd79d0f40                           // setge    dil
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x04413b66                           // cmp    ax, word [rcx + 4]
	WORD $0x9d0f; BYTE $0xd2                   // setge    dl
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	WORD $0x3b66; BYTE $0x01                   // cmp    ax, word [rcx]
	QUAD $0x000000d024949d0f                   // setge    byte [rsp + 208]
	WORD $0x048b; BYTE $0x24                   // mov    eax, dword [rsp]
	LONG $0x02413b66                           // cmp    ax, word [rcx + 2]
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	WORD $0x894c; BYTE $0xe3                   // mov    rbx, r12
	LONG $0x24248b44                           // mov    r12d, dword [rsp]
	LONG $0x613b4466; BYTE $0x10               // cmp    r12w, word [rcx + 16]
	WORD $0x8949; BYTE $0xdc                   // mov    r12, rbx
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	WORD $0x1c8b; BYTE $0x24                   // mov    ebx, dword [rsp]
	LONG $0x20593b66                           // cmp    bx, word [rcx + 32]
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	WORD $0x1c8b; BYTE $0x24                   // mov    ebx, dword [rsp]
	LONG $0x30593b66                           // cmp    bx, word [rcx + 48]
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	WORD $0xc000                               // add    al, al
	LONG $0xd0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 208]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xc208                               // or    dl, al
	LONG $0x03e7c040                           // shl    dil, 3
	WORD $0x0840; BYTE $0xd7                   // or    dil, dl
	LONG $0x04e0c041                           // shl    r8b, 4
	WORD $0x0841; BYTE $0xf8                   // or    r8b, dil
	LONG $0x05e1c041                           // shl    r9b, 5
	WORD $0x0845; BYTE $0xc1                   // or    r9b, r8b
	QUAD $0x000000802484b60f                   // movzx    eax, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e6c040                           // shl    sil, 7
	WORD $0x0840; BYTE $0xc6                   // or    sil, al
	WORD $0x0844; BYTE $0xce                   // or    sil, r9b
	LONG $0x24348841                           // mov    byte [r12], sil
	WORD $0x0045; BYTE $0xdb                   // add    r11b, r11b
	QUAD $0x000000e0249c0244                   // add    r11b, byte [rsp + 224]
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xde                   // or    r14b, r11b
	LONG $0x03e7c041                           // shl    r15b, 3
	WORD $0x0845; BYTE $0xf7                   // or    r15b, r14b
	LONG $0x04e5c041                           // shl    r13b, 4
	WORD $0x0845; BYTE $0xfd                   // or    r13b, r15b
	QUAD $0x000000902484b60f                   // movzx    eax, byte [rsp + 144]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xe8                   // or    al, r13b
	LONG $0x24348b44                           // mov    r14d, dword [rsp]
	LONG $0x2454b60f; BYTE $0x70               // movzx    edx, byte [rsp + 112]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	LONG $0x07e2c041                           // shl    r10b, 7
	WORD $0x0841; BYTE $0xd2                   // or    r10b, dl
	WORD $0x0841; BYTE $0xc2                   // or    r10b, al
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	LONG $0x24548845; BYTE $0x01               // mov    byte [r12 + 1], r10b
	LONG $0x244cb60f; BYTE $0x68               // movzx    ecx, byte [rsp + 104]
	WORD $0xc900                               // add    cl, cl
	LONG $0xb0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 176]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x58               // movzx    ecx, byte [rsp + 88]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x60               // movzx    ecx, byte [rsp + 96]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x50               // movzx    ecx, byte [rsp + 80]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x48               // movzx    ecx, byte [rsp + 72]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x40               // movzx    ebx, byte [rsp + 64]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x30               // movzx    ecx, byte [rsp + 48]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	LONG $0x244c8841; BYTE $0x02               // mov    byte [r12 + 2], cl
	LONG $0x244cb60f; BYTE $0x38               // movzx    ecx, byte [rsp + 56]
	WORD $0xc900                               // add    cl, cl
	LONG $0xa0248c02; WORD $0x0000; BYTE $0x00 // add    cl, byte [rsp + 160]
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x20               // movzx    ecx, byte [rsp + 32]
	WORD $0xe1c0; BYTE $0x02                   // shl    cl, 2
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x28               // movzx    ecx, byte [rsp + 40]
	WORD $0xe1c0; BYTE $0x03                   // shl    cl, 3
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x18               // movzx    ecx, byte [rsp + 24]
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x244cb60f; BYTE $0x10               // movzx    ecx, byte [rsp + 16]
	WORD $0xe1c0; BYTE $0x05                   // shl    cl, 5
	WORD $0xd108                               // or    cl, dl
	WORD $0xca89                               // mov    edx, ecx
	LONG $0x245cb60f; BYTE $0x08               // movzx    ebx, byte [rsp + 8]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x244cb60f; BYTE $0x78               // movzx    ecx, byte [rsp + 120]
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd908                               // or    cl, bl
	WORD $0xd108                               // or    cl, dl
	LONG $0x244c8841; BYTE $0x03               // mov    byte [r12 + 3], cl
	LONG $0x40c08348                           // add    rax, 64
	LONG $0x04c48349                           // add    r12, 4
	QUAD $0x000000c024848348; BYTE $0xff       // add    qword [rsp + 192], -1
	JNE  LBB11_128
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x0000010024948b4c                   // mov    r10, qword [rsp + 256]
	JMP  LBB11_130

LBB11_157:
	WORD $0x8b4c; BYTE $0x36 // mov    r14, qword [rsi]
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_161
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_159:
	WORD $0x3b4c; BYTE $0x32                   // cmp    r14, qword [rdx]
	LONG $0x08528d48                           // lea    rdx, [rdx + 8]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	WORD $0xdbf6                               // neg    bl
	LONG $0x07708d48                           // lea    rsi, [rax + 7]
	WORD $0x8548; BYTE $0xc0                   // test    rax, rax
	LONG $0xf0490f48                           // cmovns    rsi, rax
	LONG $0x03fec148                           // sar    rsi, 3
	LONG $0x04b60f45; BYTE $0x37               // movzx    r8d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xc3                   // xor    bl, r8b
	LONG $0x00f53c8d; WORD $0x0000; BYTE $0x00 // lea    edi, [8*rsi]
	WORD $0xc189                               // mov    ecx, eax
	WORD $0xf929                               // sub    ecx, edi
	LONG $0x000001bf; BYTE $0x00               // mov    edi, 1
	WORD $0xe7d3                               // shl    edi, cl
	WORD $0x2040; BYTE $0xdf                   // and    dil, bl
	WORD $0x3044; BYTE $0xc7                   // xor    dil, r8b
	LONG $0x373c8841                           // mov    byte [r15 + rsi], dil
	LONG $0x01c08348                           // add    rax, 1
	LONG $0x08f88348                           // cmp    rax, 8
	JNE  LBB11_159
	LONG $0x01c78349                           // add    r15, 1

LBB11_161:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_165
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000c02494894c // mov    qword [rsp + 192], r10
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10

LBB11_163:
	LONG $0x247c894c; BYTE $0x78               // mov    qword [rsp + 120], r15
	LONG $0xf8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 248]
	LONG $0x24149d0f                           // setge    byte [rsp]
	LONG $0xf0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 240]
	LONG $0x24549d0f; BYTE $0x10               // setge    byte [rsp + 16]
	LONG $0xe8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 232]
	LONG $0x24549d0f; BYTE $0x08               // setge    byte [rsp + 8]
	LONG $0xe0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 224]
	LONG $0x24549d0f; BYTE $0x18               // setge    byte [rsp + 24]
	LONG $0xd8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 216]
	LONG $0x24549d0f; BYTE $0x28               // setge    byte [rsp + 40]
	LONG $0xd0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 208]
	LONG $0x24549d0f; BYTE $0x20               // setge    byte [rsp + 32]
	LONG $0xc8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 200]
	LONG $0x24549d0f; BYTE $0x38               // setge    byte [rsp + 56]
	LONG $0xb8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 184]
	LONG $0x24549d0f; BYTE $0x30               // setge    byte [rsp + 48]
	LONG $0xb0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 176]
	LONG $0x24549d0f; BYTE $0x48               // setge    byte [rsp + 72]
	LONG $0xa8b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 168]
	LONG $0x24549d0f; BYTE $0x40               // setge    byte [rsp + 64]
	LONG $0xa0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 160]
	LONG $0x24549d0f; BYTE $0x50               // setge    byte [rsp + 80]
	LONG $0x98b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 152]
	LONG $0x24549d0f; BYTE $0x60               // setge    byte [rsp + 96]
	LONG $0x90b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 144]
	LONG $0x24549d0f; BYTE $0x58               // setge    byte [rsp + 88]
	LONG $0x88b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 136]
	LONG $0x24549d0f; BYTE $0x68               // setge    byte [rsp + 104]
	LONG $0x78723b4c                           // cmp    r14, qword [rdx + 120]
	LONG $0xd09d0f41                           // setge    r8b
	LONG $0x70723b4c                           // cmp    r14, qword [rdx + 112]
	QUAD $0x000000a024949d0f                   // setge    byte [rsp + 160]
	LONG $0x68723b4c                           // cmp    r14, qword [rdx + 104]
	LONG $0x24549d0f; BYTE $0x70               // setge    byte [rsp + 112]
	LONG $0x60723b4c                           // cmp    r14, qword [rdx + 96]
	LONG $0xd39d0f41                           // setge    r11b
	LONG $0x58723b4c                           // cmp    r14, qword [rdx + 88]
	LONG $0xd29d0f41                           // setge    r10b
	LONG $0x50723b4c                           // cmp    r14, qword [rdx + 80]
	LONG $0xd19d0f41                           // setge    r9b
	LONG $0x48723b4c                           // cmp    r14, qword [rdx + 72]
	LONG $0xd79d0f40                           // setge    dil
	LONG $0x38723b4c                           // cmp    r14, qword [rdx + 56]
	WORD $0x9d0f; BYTE $0xd0                   // setge    al
	LONG $0x30723b4c                           // cmp    r14, qword [rdx + 48]
	WORD $0x9d0f; BYTE $0xd3                   // setge    bl
	LONG $0x28723b4c                           // cmp    r14, qword [rdx + 40]
	LONG $0xd69d0f40                           // setge    sil
	LONG $0x20723b4c                           // cmp    r14, qword [rdx + 32]
	WORD $0x9d0f; BYTE $0xd1                   // setge    cl
	LONG $0x18723b4c                           // cmp    r14, qword [rdx + 24]
	LONG $0xd59d0f41                           // setge    r13b
	LONG $0x10723b4c                           // cmp    r14, qword [rdx + 16]
	LONG $0xd49d0f41                           // setge    r12b
	WORD $0x3b4c; BYTE $0x32                   // cmp    r14, qword [rdx]
	QUAD $0x000000e024949d0f                   // setge    byte [rsp + 224]
	LONG $0x08723b4c                           // cmp    r14, qword [rdx + 8]
	LONG $0xd79d0f41                           // setge    r15b
	LONG $0x40723b4c                           // cmp    r14, qword [rdx + 64]
	QUAD $0x0000008024949d0f                   // setge    byte [rsp + 128]
	LONG $0x80b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 128]
	QUAD $0x000000b024949d0f                   // setge    byte [rsp + 176]
	LONG $0xc0b23b4c; WORD $0x0000; BYTE $0x00 // cmp    r14, qword [rdx + 192]
	QUAD $0x0000009024949d0f                   // setge    byte [rsp + 144]
	WORD $0x0045; BYTE $0xff                   // add    r15b, r15b
	QUAD $0x000000e024bc0244                   // add    r15b, byte [rsp + 224]
	LONG $0x02e4c041                           // shl    r12b, 2
	WORD $0x0845; BYTE $0xfc                   // or    r12b, r15b
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xe5                   // or    r13b, r12b
	WORD $0xe1c0; BYTE $0x04                   // shl    cl, 4
	WORD $0x0844; BYTE $0xe9                   // or    cl, r13b
	LONG $0x05e6c040                           // shl    sil, 5
	WORD $0x0840; BYTE $0xce                   // or    sil, cl
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0x0840; BYTE $0xf0                   // or    al, sil
	WORD $0x8841; BYTE $0x07                   // mov    byte [r15], al
	WORD $0x0040; BYTE $0xff                   // add    dil, dil
	QUAD $0x0000008024bc0240                   // add    dil, byte [rsp + 128]
	LONG $0x02e1c041                           // shl    r9b, 2
	WORD $0x0841; BYTE $0xf9                   // or    r9b, dil
	LONG $0x03e2c041                           // shl    r10b, 3
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x04e3c041                           // shl    r11b, 4
	WORD $0x0845; BYTE $0xd3                   // or    r11b, r10b
	LONG $0x2444b60f; BYTE $0x70               // movzx    eax, byte [rsp + 112]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0x0844; BYTE $0xd8                   // or    al, r11b
	QUAD $0x000000a0248cb60f                   // movzx    ecx, byte [rsp + 160]
	WORD $0xe1c0; BYTE $0x06                   // shl    cl, 6
	LONG $0x07e0c041                           // shl    r8b, 7
	WORD $0x0841; BYTE $0xc8                   // or    r8b, cl
	WORD $0x0841; BYTE $0xc0                   // or    r8b, al
	LONG $0x01478845                           // mov    byte [r15 + 1], r8b
	LONG $0x2444b60f; BYTE $0x68               // movzx    eax, byte [rsp + 104]
	WORD $0xc000                               // add    al, al
	LONG $0xb0248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 176]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x58               // movzx    eax, byte [rsp + 88]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x60               // movzx    eax, byte [rsp + 96]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x50               // movzx    eax, byte [rsp + 80]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x40               // movzx    eax, byte [rsp + 64]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x48               // movzx    ebx, byte [rsp + 72]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2444b60f; BYTE $0x30               // movzx    eax, byte [rsp + 48]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x02478841                           // mov    byte [r15 + 2], al
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x90248402; WORD $0x0000; BYTE $0x00 // add    al, byte [rsp + 144]
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x18               // movzx    eax, byte [rsp + 24]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xc808                               // or    al, cl
	WORD $0xc189                               // mov    ecx, eax
	LONG $0x245cb60f; BYTE $0x10               // movzx    ebx, byte [rsp + 16]
	WORD $0xe3c0; BYTE $0x06                   // shl    bl, 6
	LONG $0x2404b60f                           // movzx    eax, byte [rsp]
	WORD $0xe0c0; BYTE $0x07                   // shl    al, 7
	WORD $0xd808                               // or    al, bl
	WORD $0xc808                               // or    al, cl
	LONG $0x03478841                           // mov    byte [r15 + 3], al
	LONG $0x00c28148; WORD $0x0001; BYTE $0x00 // add    rdx, 256
	LONG $0x04c78349                           // add    r15, 4
	QUAD $0x000000d024848348; BYTE $0xff       // add    qword [rsp + 208], -1
	JNE  LBB11_163
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000c024948b4c                   // mov    r10, qword [rsp + 192]

LBB11_165:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_170
	WORD $0xff31             // xor    edi, edi
	JMP  LBB11_168

LBB11_172:
	LONG $0x1f538d4d         // lea    r10, [r11 + 31]
	WORD $0x854d; BYTE $0xdb // test    r11, r11
	LONG $0xd3490f4d         // cmovns    r10, r11
	LONG $0x07418d41         // lea    eax, [r9 + 7]
	WORD $0x8545; BYTE $0xc9 // test    r9d, r9d
	LONG $0xc1490f41         // cmovns    eax, r9d
	WORD $0xe083; BYTE $0xf8 // and    eax, -8
	LONG $0x06100ff3         // movss    xmm0, dword [rsi]
	WORD $0x2941; BYTE $0xc1 // sub    r9d, eax
	JE   LBB11_176
	WORD $0x6349; BYTE $0xc1 // movsxd    rax, r9d

LBB11_174:
	WORD $0x2e0f; BYTE $0x02     // ucomiss    xmm0, dword [rdx]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0x000000be; BYTE $0x00 // mov    esi, 0
	LONG $0xffd68040             // adc    sil, -1
	LONG $0x07788d48             // lea    rdi, [rax + 7]
	WORD $0x8548; BYTE $0xc0     // test    rax, rax
	LONG $0xf8490f48             // cmovns    rdi, rax
	LONG $0x03ffc148             // sar    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3f // movzx    r9d, byte [r15 + rdi]
	WORD $0x3044; BYTE $0xce     // xor    sil, r9b
	QUAD $0x00000000fd048d44     // lea    r8d, [8*rdi]
	WORD $0xc189                 // mov    ecx, eax
	WORD $0x2944; BYTE $0xc1     // sub    ecx, r8d
	LONG $0x000001bb; BYTE $0x00 // mov    ebx, 1
	WORD $0xe3d3                 // shl    ebx, cl
	WORD $0x2040; BYTE $0xf3     // and    bl, sil
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x3f1c8841             // mov    byte [r15 + rdi], bl
	LONG $0x01c08348             // add    rax, 1
	LONG $0x08f88348             // cmp    rax, 8
	JNE  LBB11_174
	LONG $0x01c78349             // add    r15, 1

LBB11_176:
	LONG $0x05fac149         // sar    r10, 5
	LONG $0x20fb8349         // cmp    r11, 32
	JL   LBB11_177
	LONG $0x04fa8349         // cmp    r10, 4
	JB   LBB11_179
	WORD $0x894c; BYTE $0xd0 // mov    rax, r10
	LONG $0x07e0c148         // shl    rax, 7
	WORD $0x0148; BYTE $0xd0 // add    rax, rdx
	WORD $0x3949; BYTE $0xc7 // cmp    r15, rax
	JAE  LBB11_182
	LONG $0x97048d4b         // lea    rax, [r15 + 4*r10]
	WORD $0x3948; BYTE $0xd0 // cmp    rax, rdx
	JBE  LBB11_182

LBB11_179:
	WORD $0x3145; BYTE $0xc0 // xor    r8d, r8d
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx
	WORD $0x894d; BYTE $0xfe // mov    r14, r15

LBB11_185:
	QUAD $0x00000088249c894c // mov    qword [rsp + 136], r11
	QUAD $0x000000d02494894c // mov    qword [rsp + 208], r10
	WORD $0x294d; BYTE $0xc2 // sub    r10, r8
	QUAD $0x000000e02494894c // mov    qword [rsp + 224], r10

LBB11_186:
	LONG $0x2434894c                           // mov    qword [rsp], r14
	WORD $0x2e0f; BYTE $0x03                   // ucomiss    xmm0, dword [rbx]
	QUAD $0x000000802494930f                   // setae    byte [rsp + 128]
	LONG $0x04432e0f                           // ucomiss    xmm0, dword [rbx + 4]
	LONG $0xd0930f41                           // setae    r8b
	LONG $0x08432e0f                           // ucomiss    xmm0, dword [rbx + 8]
	LONG $0xd6930f41                           // setae    r14b
	LONG $0x0c432e0f                           // ucomiss    xmm0, dword [rbx + 12]
	LONG $0xd5930f41                           // setae    r13b
	LONG $0x10432e0f                           // ucomiss    xmm0, dword [rbx + 16]
	LONG $0x2454930f; BYTE $0x68               // setae    byte [rsp + 104]
	LONG $0x14432e0f                           // ucomiss    xmm0, dword [rbx + 20]
	LONG $0x2454930f; BYTE $0x40               // setae    byte [rsp + 64]
	LONG $0x18432e0f                           // ucomiss    xmm0, dword [rbx + 24]
	WORD $0x930f; BYTE $0xd0                   // setae    al
	LONG $0x1c432e0f                           // ucomiss    xmm0, dword [rbx + 28]
	LONG $0xd3930f41                           // setae    r11b
	LONG $0x20432e0f                           // ucomiss    xmm0, dword [rbx + 32]
	LONG $0x2454930f; BYTE $0x70               // setae    byte [rsp + 112]
	LONG $0x24432e0f                           // ucomiss    xmm0, dword [rbx + 36]
	WORD $0x930f; BYTE $0xd2                   // setae    dl
	LONG $0x28432e0f                           // ucomiss    xmm0, dword [rbx + 40]
	LONG $0xd6930f40                           // setae    sil
	LONG $0x2c432e0f                           // ucomiss    xmm0, dword [rbx + 44]
	LONG $0xd1930f41                           // setae    r9b
	LONG $0x30432e0f                           // ucomiss    xmm0, dword [rbx + 48]
	LONG $0xd2930f41                           // setae    r10b
	LONG $0x34432e0f                           // ucomiss    xmm0, dword [rbx + 52]
	LONG $0xd4930f41                           // setae    r12b
	LONG $0x38432e0f                           // ucomiss    xmm0, dword [rbx + 56]
	QUAD $0x000000a02494930f                   // setae    byte [rsp + 160]
	LONG $0x3c432e0f                           // ucomiss    xmm0, dword [rbx + 60]
	LONG $0xd7930f40                           // setae    dil
	LONG $0x40432e0f                           // ucomiss    xmm0, dword [rbx + 64]
	LONG $0x2454930f; BYTE $0x60               // setae    byte [rsp + 96]
	LONG $0x44432e0f                           // ucomiss    xmm0, dword [rbx + 68]
	QUAD $0x000000b02494930f                   // setae    byte [rsp + 176]
	LONG $0x48432e0f                           // ucomiss    xmm0, dword [rbx + 72]
	QUAD $0x000000902494930f                   // setae    byte [rsp + 144]
	LONG $0x4c432e0f                           // ucomiss    xmm0, dword [rbx + 76]
	LONG $0x2454930f; BYTE $0x58               // setae    byte [rsp + 88]
	LONG $0x50432e0f                           // ucomiss    xmm0, dword [rbx + 80]
	LONG $0x2454930f; BYTE $0x50               // setae    byte [rsp + 80]
	LONG $0x54432e0f                           // ucomiss    xmm0, dword [rbx + 84]
	LONG $0x2454930f; BYTE $0x48               // setae    byte [rsp + 72]
	LONG $0x58432e0f                           // ucomiss    xmm0, dword [rbx + 88]
	LONG $0x2454930f; BYTE $0x30               // setae    byte [rsp + 48]
	LONG $0x5c432e0f                           // ucomiss    xmm0, dword [rbx + 92]
	LONG $0xd7930f41                           // setae    r15b
	LONG $0x60432e0f                           // ucomiss    xmm0, dword [rbx + 96]
	LONG $0x2454930f; BYTE $0x18               // setae    byte [rsp + 24]
	LONG $0x64432e0f                           // ucomiss    xmm0, dword [rbx + 100]
	LONG $0x2454930f; BYTE $0x38               // setae    byte [rsp + 56]
	LONG $0x68432e0f                           // ucomiss    xmm0, dword [rbx + 104]
	LONG $0x2454930f; BYTE $0x20               // setae    byte [rsp + 32]
	LONG $0x6c432e0f                           // ucomiss    xmm0, dword [rbx + 108]
	LONG $0x2454930f; BYTE $0x28               // setae    byte [rsp + 40]
	LONG $0x70432e0f                           // ucomiss    xmm0, dword [rbx + 112]
	LONG $0x2454930f; BYTE $0x08               // setae    byte [rsp + 8]
	LONG $0x74432e0f                           // ucomiss    xmm0, dword [rbx + 116]
	LONG $0x2454930f; BYTE $0x10               // setae    byte [rsp + 16]
	LONG $0x78432e0f                           // ucomiss    xmm0, dword [rbx + 120]
	LONG $0x2454930f; BYTE $0x78               // setae    byte [rsp + 120]
	LONG $0x7c432e0f                           // ucomiss    xmm0, dword [rbx + 124]
	WORD $0x930f; BYTE $0xd1                   // setae    cl
	WORD $0x0045; BYTE $0xc0                   // add    r8b, r8b
	QUAD $0x0000008024840244                   // add    r8b, byte [rsp + 128]
	WORD $0xe0c0; BYTE $0x06                   // shl    al, 6
	LONG $0x07e3c041                           // shl    r11b, 7
	WORD $0x0841; BYTE $0xc3                   // or    r11b, al
	LONG $0x02e6c041                           // shl    r14b, 2
	WORD $0x0845; BYTE $0xc6                   // or    r14b, r8b
	WORD $0xd200                               // add    dl, dl
	LONG $0x70245402                           // add    dl, byte [rsp + 112]
	LONG $0x03e5c041                           // shl    r13b, 3
	WORD $0x0845; BYTE $0xf5                   // or    r13b, r14b
	LONG $0x02e6c040                           // shl    sil, 2
	WORD $0x0840; BYTE $0xd6                   // or    sil, dl
	LONG $0x2454b60f; BYTE $0x68               // movzx    edx, byte [rsp + 104]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0844; BYTE $0xea                   // or    dl, r13b
	WORD $0x8941; BYTE $0xd0                   // mov    r8d, edx
	LONG $0x24348b4c                           // mov    r14, qword [rsp]
	LONG $0x03e1c041                           // shl    r9b, 3
	WORD $0x0841; BYTE $0xf1                   // or    r9b, sil
	LONG $0x2454b60f; BYTE $0x40               // movzx    edx, byte [rsp + 64]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0844; BYTE $0xc2                   // or    dl, r8b
	LONG $0x04e2c041                           // shl    r10b, 4
	WORD $0x0845; BYTE $0xca                   // or    r10b, r9b
	LONG $0x05e4c041                           // shl    r12b, 5
	WORD $0x0845; BYTE $0xd4                   // or    r12b, r10b
	QUAD $0x000000a024b4b60f                   // movzx    esi, byte [rsp + 160]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c040                           // shl    dil, 7
	WORD $0x0840; BYTE $0xf7                   // or    dil, sil
	WORD $0x0841; BYTE $0xd3                   // or    r11b, dl
	WORD $0x0844; BYTE $0xe7                   // or    dil, r12b
	QUAD $0x000000b02484b60f                   // movzx    eax, byte [rsp + 176]
	WORD $0xc000                               // add    al, al
	LONG $0x60244402                           // add    al, byte [rsp + 96]
	QUAD $0x000000902494b60f                   // movzx    edx, byte [rsp + 144]
	WORD $0xe2c0; BYTE $0x02                   // shl    dl, 2
	WORD $0xc208                               // or    dl, al
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x58               // movzx    edx, byte [rsp + 88]
	WORD $0xe2c0; BYTE $0x03                   // shl    dl, 3
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x50               // movzx    edx, byte [rsp + 80]
	WORD $0xe2c0; BYTE $0x04                   // shl    dl, 4
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0xd689                               // mov    esi, edx
	LONG $0x2454b60f; BYTE $0x48               // movzx    edx, byte [rsp + 72]
	WORD $0xe2c0; BYTE $0x05                   // shl    dl, 5
	WORD $0x0840; BYTE $0xf2                   // or    dl, sil
	WORD $0x8845; BYTE $0x1e                   // mov    byte [r14], r11b
	LONG $0x2474b60f; BYTE $0x30               // movzx    esi, byte [rsp + 48]
	LONG $0x06e6c040                           // shl    sil, 6
	LONG $0x07e7c041                           // shl    r15b, 7
	WORD $0x0841; BYTE $0xf7                   // or    r15b, sil
	LONG $0x017e8841                           // mov    byte [r14 + 1], dil
	WORD $0x0841; BYTE $0xd7                   // or    r15b, dl
	LONG $0x2444b60f; BYTE $0x38               // movzx    eax, byte [rsp + 56]
	WORD $0xc000                               // add    al, al
	LONG $0x18244402                           // add    al, byte [rsp + 24]
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x20               // movzx    eax, byte [rsp + 32]
	WORD $0xe0c0; BYTE $0x02                   // shl    al, 2
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x28               // movzx    eax, byte [rsp + 40]
	WORD $0xe0c0; BYTE $0x03                   // shl    al, 3
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x08               // movzx    eax, byte [rsp + 8]
	WORD $0xe0c0; BYTE $0x04                   // shl    al, 4
	WORD $0xd008                               // or    al, dl
	WORD $0xc289                               // mov    edx, eax
	LONG $0x2444b60f; BYTE $0x10               // movzx    eax, byte [rsp + 16]
	WORD $0xe0c0; BYTE $0x05                   // shl    al, 5
	WORD $0xd008                               // or    al, dl
	LONG $0x2454b60f; BYTE $0x78               // movzx    edx, byte [rsp + 120]
	WORD $0xe2c0; BYTE $0x06                   // shl    dl, 6
	WORD $0xe1c0; BYTE $0x07                   // shl    cl, 7
	WORD $0xd108                               // or    cl, dl
	WORD $0xc108                               // or    cl, al
	LONG $0x027e8845                           // mov    byte [r14 + 2], r15b
	LONG $0x034e8841                           // mov    byte [r14 + 3], cl
	LONG $0x80c38148; WORD $0x0000; BYTE $0x00 // add    rbx, 128
	LONG $0x04c68349                           // add    r14, 4
	QUAD $0x000000e024848348; BYTE $0xff       // add    qword [rsp + 224], -1
	JNE  LBB11_186
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	QUAD $0x000000d024948b4c                   // mov    r10, qword [rsp + 208]
	JMP  LBB11_188

LBB11_9:
	WORD $0x894d; BYTE $0xfd // mov    r13, r15

LBB11_91:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_94
	WORD $0xf631             // xor    esi, esi
	JMP  LBB11_97

LBB11_61:
	WORD $0x894d; BYTE $0xfd // mov    r13, r15

LBB11_72:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_75
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d
	JMP  LBB11_78

LBB11_119:
	WORD $0x894d; BYTE $0xfc // mov    r12, r15
	WORD $0x8948; BYTE $0xd0 // mov    rax, rdx

LBB11_130:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_135
	WORD $0xf631             // xor    esi, esi
	JMP  LBB11_133

LBB11_177:
	WORD $0x894d; BYTE $0xfe // mov    r14, r15
	WORD $0x8948; BYTE $0xd3 // mov    rbx, rdx

LBB11_188:
	LONG $0x05e2c149         // shl    r10, 5
	WORD $0x394d; BYTE $0xda // cmp    r10, r11
	JGE  LBB11_201
	WORD $0x894d; BYTE $0xd8 // mov    r8, r11
	WORD $0x294d; BYTE $0xd0 // sub    r8, r10
	WORD $0xf749; BYTE $0xd2 // not    r10
	WORD $0x014d; BYTE $0xda // add    r10, r11
	JNE  LBB11_193
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d
	JMP  LBB11_191

LBB11_155:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB11_156:
	WORD $0x3b4c; BYTE $0x32     // cmp    r14, qword [rdx]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x08723b4c             // cmp    r14, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB11_156

LBB11_40:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x3b4c; BYTE $0x32 // cmp    r14, qword [rdx]
	JMP  LBB11_199

LBB11_153:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi

LBB11_154:
	WORD $0x3b44; BYTE $0x32     // cmp    r14d, dword [rdx]
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x37 // movzx    r9d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x04723b44             // cmp    r14d, dword [rdx + 4]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0xd19d0f41             // setge    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB11_154

LBB11_150:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	WORD $0x3b44; BYTE $0x32 // cmp    r14d, dword [rdx]
	JMP  LBB11_152

LBB11_94:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xf631             // xor    esi, esi

LBB11_95:
	LONG $0x32343a44               // cmp    r14b, byte [rdx + rsi]
	WORD $0x9d0f; BYTE $0xd0       // setge    al
	WORD $0xd8f6                   // neg    al
	WORD $0x8948; BYTE $0xf7       // mov    rdi, rsi
	LONG $0x03efc148               // shr    rdi, 3
	WORD $0xf189                   // mov    ecx, esi
	WORD $0xe180; BYTE $0x06       // and    cl, 6
	WORD $0x01b3                   // mov    bl, 1
	WORD $0xe3d2                   // shl    bl, cl
	LONG $0x4cb60f45; WORD $0x003d // movzx    r9d, byte [r13 + rdi]
	WORD $0x3044; BYTE $0xc8       // xor    al, r9b
	WORD $0xc320                   // and    bl, al
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	LONG $0x3d5c8841; BYTE $0x00   // mov    byte [r13 + rdi], bl
	LONG $0x32743a44; BYTE $0x01   // cmp    r14b, byte [rdx + rsi + 1]
	LONG $0x02768d48               // lea    rsi, [rsi + 2]
	LONG $0xd19d0f41               // setge    r9b
	WORD $0xf641; BYTE $0xd9       // neg    r9b
	WORD $0x3041; BYTE $0xd9       // xor    r9b, bl
	WORD $0xc980; BYTE $0x01       // or    cl, 1
	WORD $0x01b0                   // mov    al, 1
	WORD $0xe0d2                   // shl    al, cl
	WORD $0x2044; BYTE $0xc8       // and    al, r9b
	WORD $0xd830                   // xor    al, bl
	LONG $0x3d448841; BYTE $0x00   // mov    byte [r13 + rdi], al
	WORD $0x3949; BYTE $0xf2       // cmp    r10, rsi
	JNE  LBB11_95
	WORD $0x0148; BYTE $0xf2       // add    rdx, rsi

LBB11_97:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB11_201
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xf2     // mov    rdx, rsi
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x157c8a41; BYTE $0x00 // mov    dil, byte [r13 + rdx]
	LONG $0x07e68040             // and    sil, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al
	JMP  LBB11_80

LBB11_75:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xc9 // xor    r9d, r9d

LBB11_76:
	WORD $0x894c; BYTE $0xc8       // mov    rax, r9
	LONG $0x0a343a46               // cmp    r14b, byte [rdx + r9]
	LONG $0x000000be; BYTE $0x00   // mov    esi, 0
	LONG $0xffd68040               // adc    sil, -1
	WORD $0x894c; BYTE $0xcf       // mov    rdi, r9
	LONG $0x03efc148               // shr    rdi, 3
	LONG $0x4cb60f45; WORD $0x003d // movzx    r9d, byte [r13 + rdi]
	WORD $0xc189                   // mov    ecx, eax
	WORD $0xe180; BYTE $0x06       // and    cl, 6
	WORD $0x01b3                   // mov    bl, 1
	WORD $0xe3d2                   // shl    bl, cl
	WORD $0x3044; BYTE $0xce       // xor    sil, r9b
	WORD $0x2040; BYTE $0xf3       // and    bl, sil
	WORD $0x3044; BYTE $0xcb       // xor    bl, r9b
	LONG $0x3d5c8841; BYTE $0x00   // mov    byte [r13 + rdi], bl
	LONG $0x02743a44; BYTE $0x01   // cmp    r14b, byte [rdx + rax + 1]
	LONG $0x02488d4c               // lea    r9, [rax + 2]
	LONG $0x000000be; BYTE $0x00   // mov    esi, 0
	LONG $0xffd68040               // adc    sil, -1
	WORD $0x3040; BYTE $0xde       // xor    sil, bl
	WORD $0xc980; BYTE $0x01       // or    cl, 1
	WORD $0x01b0                   // mov    al, 1
	WORD $0xe0d2                   // shl    al, cl
	WORD $0x2040; BYTE $0xf0       // and    al, sil
	WORD $0xd830                   // xor    al, bl
	LONG $0x3d448841; BYTE $0x00   // mov    byte [r13 + rdi], al
	WORD $0x394d; BYTE $0xca       // cmp    r10, r9
	JNE  LBB11_76
	WORD $0x014c; BYTE $0xca       // add    rdx, r9

LBB11_78:
	LONG $0x01c0f641             // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031                 // xor    eax, eax
	WORD $0x3a44; BYTE $0x32     // cmp    r14b, byte [rdx]
	WORD $0xff14                 // adc    al, -1
	WORD $0x894c; BYTE $0xca     // mov    rdx, r9
	LONG $0x03eac148             // shr    rdx, 3
	LONG $0x157c8a41; BYTE $0x00 // mov    dil, byte [r13 + rdx]
	LONG $0x07e18041             // and    r9b, 7
	WORD $0x01b3                 // mov    bl, 1
	WORD $0x8944; BYTE $0xc9     // mov    ecx, r9d
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3040; BYTE $0xf8     // xor    al, dil
	WORD $0xc320                 // and    bl, al

LBB11_80:
	WORD $0x3040; BYTE $0xfb     // xor    bl, dil
	LONG $0x155c8841; BYTE $0x00 // mov    byte [r13 + rdx], bl
	JMP  LBB11_201

LBB11_137:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB11_138:
	WORD $0x3b44; BYTE $0x32     // cmp    r14d, dword [rdx]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x04723b44             // cmp    r14d, dword [rdx + 4]
	LONG $0x08528d48             // lea    rdx, [rdx + 8]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB11_138

LBB11_24:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x3b44; BYTE $0x32 // cmp    r14d, dword [rdx]
	JMP  LBB11_199

LBB11_195:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB11_196:
	LONG $0x022e0f66             // ucomisd    xmm0, qword [rdx]
	LONG $0x000000b8; BYTE $0x00 // mov    eax, 0
	WORD $0xff14                 // adc    al, -1
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x37 // movzx    r9d, byte [r15 + rsi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	LONG $0x02c38349             // add    r11, 2
	LONG $0x422e0f66; BYTE $0x08 // ucomisd    xmm0, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xdf     // xor    dil, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0xd830                 // xor    al, bl
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB11_196

LBB11_197:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031     // xor    eax, eax
	LONG $0x022e0f66 // ucomisd    xmm0, qword [rdx]
	JMP  LBB11_199

LBB11_112:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB11_113:
	LONG $0x323b4466             // cmp    r14w, word [rdx]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x894c; BYTE $0xde     // mov    rsi, r11
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x14b60f45; BYTE $0x37 // movzx    r10d, byte [r15 + rsi]
	WORD $0x3044; BYTE $0xd7     // xor    dil, r10b
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2040; BYTE $0xf8     // and    al, dil
	WORD $0x3044; BYTE $0xd0     // xor    al, r10b
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x723b4466; BYTE $0x02 // cmp    r14w, word [rdx + 2]
	LONG $0x04528d48             // lea    rdx, [rdx + 4]
	LONG $0x000000bf; BYTE $0x00 // mov    edi, 0
	LONG $0xffd78040             // adc    dil, -1
	WORD $0x3040; BYTE $0xc7     // xor    dil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x2040; BYTE $0xfb     // and    bl, dil
	WORD $0xc330                 // xor    bl, al
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	WORD $0x394d; BYTE $0xd9     // cmp    r9, r11
	JNE  LBB11_113

LBB11_110:
	LONG $0x01c0f641 // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031     // xor    eax, eax
	LONG $0x323b4466 // cmp    r14w, word [rdx]

LBB11_199:
	WORD $0xff14             // adc    al, -1
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x17348a41         // mov    sil, byte [r15 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	JMP  LBB11_200

LBB11_170:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0xff31             // xor    edi, edi

LBB11_171:
	WORD $0x3b4c; BYTE $0x32     // cmp    r14, qword [rdx]
	WORD $0x9d0f; BYTE $0xd0     // setge    al
	WORD $0xd8f6                 // neg    al
	WORD $0x8948; BYTE $0xfe     // mov    rsi, rdi
	LONG $0x03eec148             // shr    rsi, 3
	LONG $0x0cb60f45; BYTE $0x37 // movzx    r9d, byte [r15 + rsi]
	WORD $0xf989                 // mov    ecx, edi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	WORD $0xc320                 // and    bl, al
	WORD $0x3044; BYTE $0xcb     // xor    bl, r9b
	LONG $0x371c8841             // mov    byte [r15 + rsi], bl
	LONG $0x02c78348             // add    rdi, 2
	LONG $0x08723b4c             // cmp    r14, qword [rdx + 8]
	LONG $0x10528d48             // lea    rdx, [rdx + 16]
	LONG $0xd19d0f41             // setge    r9b
	WORD $0xf641; BYTE $0xd9     // neg    r9b
	WORD $0x3041; BYTE $0xd9     // xor    r9b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x2044; BYTE $0xc8     // and    al, r9b
	WORD $0xd830                 // xor    al, bl
	LONG $0x37048841             // mov    byte [r15 + rsi], al
	WORD $0x3949; BYTE $0xfa     // cmp    r10, rdi
	JNE  LBB11_171

LBB11_168:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	WORD $0x3b4c; BYTE $0x32 // cmp    r14, qword [rdx]

LBB11_152:
	WORD $0x9d0f; BYTE $0xd0 // setge    al
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xfa // mov    rdx, rdi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x17348a41         // mov    sil, byte [r15 + rdx]
	LONG $0x07e78040         // and    dil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf989             // mov    ecx, edi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al

LBB11_200:
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x171c8841         // mov    byte [r15 + rdx], bl

LBB11_201:
	MOVQ 304(SP), SP
	RET

LBB11_135:
	WORD $0x894d; BYTE $0xc1 // mov    r9, r8
	LONG $0xfee18349         // and    r9, -2
	WORD $0xf631             // xor    esi, esi

LBB11_136:
	LONG $0x303b4466             // cmp    r14w, word [rax]
	WORD $0x9d0f; BYTE $0xd2     // setge    dl
	WORD $0xdaf6                 // neg    dl
	WORD $0x8948; BYTE $0xf7     // mov    rdi, rsi
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x14b60f45; BYTE $0x3c // movzx    r10d, byte [r12 + rdi]
	WORD $0xf189                 // mov    ecx, esi
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b3                 // mov    bl, 1
	WORD $0xe3d2                 // shl    bl, cl
	WORD $0x3044; BYTE $0xd2     // xor    dl, r10b
	WORD $0xd320                 // and    bl, dl
	WORD $0x3044; BYTE $0xd3     // xor    bl, r10b
	LONG $0x3c1c8841             // mov    byte [r12 + rdi], bl
	LONG $0x02c68348             // add    rsi, 2
	LONG $0x703b4466; BYTE $0x02 // cmp    r14w, word [rax + 2]
	LONG $0x04408d48             // lea    rax, [rax + 4]
	LONG $0xd29d0f41             // setge    r10b
	WORD $0xf641; BYTE $0xda     // neg    r10b
	WORD $0x3041; BYTE $0xda     // xor    r10b, bl
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x2044; BYTE $0xd2     // and    dl, r10b
	WORD $0xda30                 // xor    dl, bl
	LONG $0x3c148841             // mov    byte [r12 + rdi], dl
	WORD $0x3949; BYTE $0xf1     // cmp    r9, rsi
	JNE  LBB11_136

LBB11_133:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	LONG $0x303b4466         // cmp    r14w, word [rax]
	WORD $0x9d0f; BYTE $0xd0 // setge    al
	WORD $0xd8f6             // neg    al
	WORD $0x8948; BYTE $0xf2 // mov    rdx, rsi
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x143c8a41         // mov    dil, byte [r12 + rdx]
	LONG $0x07e68040         // and    sil, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0xf189             // mov    ecx, esi
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf8 // xor    al, dil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xfb // xor    bl, dil
	LONG $0x141c8841         // mov    byte [r12 + rdx], bl
	JMP  LBB11_201

LBB11_193:
	WORD $0x894d; BYTE $0xc2 // mov    r10, r8
	LONG $0xfee28349         // and    r10, -2
	WORD $0x3145; BYTE $0xdb // xor    r11d, r11d

LBB11_194:
	WORD $0x2e0f; BYTE $0x03     // ucomiss    xmm0, dword [rbx]
	LONG $0x000000ba; BYTE $0x00 // mov    edx, 0
	WORD $0xd280; BYTE $0xff     // adc    dl, -1
	WORD $0x894c; BYTE $0xdf     // mov    rdi, r11
	LONG $0x03efc148             // shr    rdi, 3
	LONG $0x0cb60f45; BYTE $0x3e // movzx    r9d, byte [r14 + rdi]
	WORD $0x8944; BYTE $0xd9     // mov    ecx, r11d
	WORD $0xe180; BYTE $0x06     // and    cl, 6
	WORD $0x01b0                 // mov    al, 1
	WORD $0xe0d2                 // shl    al, cl
	WORD $0x3044; BYTE $0xca     // xor    dl, r9b
	WORD $0xd020                 // and    al, dl
	WORD $0x3044; BYTE $0xc8     // xor    al, r9b
	LONG $0x3e048841             // mov    byte [r14 + rdi], al
	LONG $0x02c38349             // add    r11, 2
	LONG $0x04432e0f             // ucomiss    xmm0, dword [rbx + 4]
	LONG $0x085b8d48             // lea    rbx, [rbx + 8]
	LONG $0x000000be; BYTE $0x00 // mov    esi, 0
	LONG $0xffd68040             // adc    sil, -1
	WORD $0x3040; BYTE $0xc6     // xor    sil, al
	WORD $0xc980; BYTE $0x01     // or    cl, 1
	WORD $0x01b2                 // mov    dl, 1
	WORD $0xe2d2                 // shl    dl, cl
	WORD $0x2040; BYTE $0xf2     // and    dl, sil
	WORD $0xc230                 // xor    dl, al
	LONG $0x3e148841             // mov    byte [r14 + rdi], dl
	WORD $0x394d; BYTE $0xda     // cmp    r10, r11
	JNE  LBB11_194

LBB11_191:
	LONG $0x01c0f641         // test    r8b, 1
	JE   LBB11_201
	WORD $0xc031             // xor    eax, eax
	WORD $0x2e0f; BYTE $0x03 // ucomiss    xmm0, dword [rbx]
	WORD $0xff14             // adc    al, -1
	WORD $0x894c; BYTE $0xda // mov    rdx, r11
	LONG $0x03eac148         // shr    rdx, 3
	LONG $0x16348a41         // mov    sil, byte [r14 + rdx]
	LONG $0x07e38041         // and    r11b, 7
	WORD $0x01b3             // mov    bl, 1
	WORD $0x8944; BYTE $0xd9 // mov    ecx, r11d
	WORD $0xe3d2             // shl    bl, cl
	WORD $0x3040; BYTE $0xf0 // xor    al, sil
	WORD $0xc320             // and    bl, al
	WORD $0x3040; BYTE $0xf3 // xor    bl, sil
	LONG $0x161c8841         // mov    byte [r14 + rdx], bl
	JMP  LBB11_201

LBB11_85:
	LONG $0xf0e28349                     // and    r10, -16
	WORD $0x894c; BYTE $0xd0             // mov    rax, r10
	LONG $0x05e0c148                     // shl    rax, 5
	WORD $0x0148; BYTE $0xd0             // add    rax, rdx
	QUAD $0x0000011824848948             // mov    qword [rsp + 280], rax
	QUAD $0x000001002494894c             // mov    qword [rsp + 256], r10
	LONG $0x97048d4b                     // lea    rax, [r15 + 4*r10]
	QUAD $0x0000012024848948             // mov    qword [rsp + 288], rax
	LONG $0xc6b60f41                     // movzx    eax, r14b
	LONG $0xc86e0f66                     // movd    xmm1, eax
	LONG $0xc0ef0f66                     // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8         // pshufb    xmm1, xmm0
	QUAD $0x000090248c7f0f66; BYTE $0x00 // movdqa    oword [rsp + 144], xmm1
	WORD $0xc031                         // xor    eax, eax
	LONG $0x247c894c; BYTE $0x78         // mov    qword [rsp + 120], r15

LBB11_86:
	QUAD $0x000000e024848948                   // mov    qword [rsp + 224], rax
	LONG $0x05e0c148                           // shl    rax, 5
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	LONG $0x24448948; BYTE $0x38               // mov    qword [rsp + 56], rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	LONG $0x020cb60f                           // movzx    ecx, byte [rdx + rax]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x024cb60f; BYTE $0x01               // movzx    ecx, byte [rdx + rax + 1]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x024cb60f; BYTE $0x02               // movzx    ecx, byte [rdx + rax + 2]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x024cb60f; BYTE $0x03               // movzx    ecx, byte [rdx + rax + 3]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x024cb60f; BYTE $0x04               // movzx    ecx, byte [rdx + rax + 4]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x024cb60f; BYTE $0x05               // movzx    ecx, byte [rdx + rax + 5]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x024cb60f; BYTE $0x06               // movzx    ecx, byte [rdx + rax + 6]
	LONG $0x6e0f4466; BYTE $0xc1               // movd    xmm8, ecx
	LONG $0x024cb60f; BYTE $0x07               // movzx    ecx, byte [rdx + rax + 7]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x024cb60f; BYTE $0x08               // movzx    ecx, byte [rdx + rax + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000c024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm0
	LONG $0x024cb60f; BYTE $0x09               // movzx    ecx, byte [rdx + rax + 9]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x024cb60f; BYTE $0x0a               // movzx    ecx, byte [rdx + rax + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x024cb60f; BYTE $0x0b               // movzx    ecx, byte [rdx + rax + 11]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x024cb60f; BYTE $0x0c               // movzx    ecx, byte [rdx + rax + 12]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000d024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 208], xmm0
	LONG $0x024cb60f; BYTE $0x0d               // movzx    ecx, byte [rdx + rax + 13]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x024cb60f; BYTE $0x0e               // movzx    ecx, byte [rdx + rax + 14]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x024cb60f; BYTE $0x0f               // movzx    ecx, byte [rdx + rax + 15]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000a024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm0
	LONG $0x24448948; BYTE $0x48               // mov    qword [rsp + 72], rax
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	LONG $0x20cb8348                           // or    rbx, 32
	LONG $0x245c8948; BYTE $0x08               // mov    qword [rsp + 8], rbx
	LONG $0x40cf8348                           // or    rdi, 64
	LONG $0x247c8948; BYTE $0x20               // mov    qword [rsp + 32], rdi
	LONG $0x60ce8348                           // or    rsi, 96
	LONG $0x24748948; BYTE $0x18               // mov    qword [rsp + 24], rsi
	LONG $0x80c98149; WORD $0x0000; BYTE $0x00 // or    r9, 128
	LONG $0xa0ca8149; WORD $0x0000; BYTE $0x00 // or    r10, 160
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0x2464894c; BYTE $0x40               // mov    qword [rsp + 64], r12
	LONG $0xe0ce8149; WORD $0x0000; BYTE $0x00 // or    r14, 224
	LONG $0x00cf8149; WORD $0x0001; BYTE $0x00 // or    r15, 256
	LONG $0x247c894c; BYTE $0x58               // mov    qword [rsp + 88], r15
	LONG $0x20cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 288
	LONG $0x246c894c; BYTE $0x50               // mov    qword [rsp + 80], r13
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x40cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 320
	LONG $0x60cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 352
	LONG $0x80c88149; WORD $0x0001; BYTE $0x00 // or    r8, 384
	LONG $0x2444894c; BYTE $0x60               // mov    qword [rsp + 96], r8
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0xa0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 416
	LONG $0x244c8948; BYTE $0x30               // mov    qword [rsp + 48], rcx
	WORD $0x8948; BYTE $0xc1                   // mov    rcx, rax
	LONG $0xc0c98148; WORD $0x0001; BYTE $0x00 // or    rcx, 448
	LONG $0x244c8948; BYTE $0x28               // mov    qword [rsp + 40], rcx
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	LONG $0xe0ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 480
	LONG $0x24748948; BYTE $0x10               // mov    qword [rsp + 16], rsi
	LONG $0x203a0f66; WORD $0x1a24; BYTE $0x01 // pinsrb    xmm4, byte [rdx + rbx], 1
	LONG $0x203a0f66; WORD $0x3a24; BYTE $0x02 // pinsrb    xmm4, byte [rdx + rdi], 2
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	LONG $0x203a0f66; WORD $0x1a24; BYTE $0x03 // pinsrb    xmm4, byte [rdx + rbx], 3
	QUAD $0x040a24203a0f4266                   // pinsrb    xmm4, byte [rdx + r9], 4
	QUAD $0x051224203a0f4266                   // pinsrb    xmm4, byte [rdx + r10], 5
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	LONG $0x203a0f66; WORD $0x0224; BYTE $0x06 // pinsrb    xmm4, byte [rdx + rax], 6
	QUAD $0x073224203a0f4266                   // pinsrb    xmm4, byte [rdx + r14], 7
	QUAD $0x083a24203a0f4266                   // pinsrb    xmm4, byte [rdx + r15], 8
	QUAD $0x092a24203a0f4266                   // pinsrb    xmm4, byte [rdx + r13], 9
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	LONG $0x2464894c; BYTE $0x38               // mov    qword [rsp + 56], r12
	QUAD $0x0a2224203a0f4266                   // pinsrb    xmm4, byte [rdx + r12], 10
	QUAD $0x0b1a24203a0f4266                   // pinsrb    xmm4, byte [rdx + r11], 11
	QUAD $0x0c0224203a0f4266                   // pinsrb    xmm4, byte [rdx + r8], 12
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	LONG $0x203a0f66; WORD $0x0224; BYTE $0x0d // pinsrb    xmm4, byte [rdx + rax], 13
	LONG $0x203a0f66; WORD $0x0a24; BYTE $0x0e // pinsrb    xmm4, byte [rdx + rcx], 14
	LONG $0x203a0f66; WORD $0x3224; BYTE $0x0f // pinsrb    xmm4, byte [rdx + rsi], 15
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	QUAD $0x01225c203a0f4266; BYTE $0x01       // pinsrb    xmm3, byte [rdx + r12 + 1], 1
	QUAD $0x02013a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 1], 2
	QUAD $0x03011a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 1], 3
	QUAD $0x010a5c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r9 + 1], 4
	QUAD $0x01125c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rdx + r10 + 1], 5
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x06011a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 1], 6
	QUAD $0x01325c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r14 + 1], 7
	LONG $0x247c8b48; BYTE $0x58               // mov    rdi, qword [rsp + 88]
	QUAD $0x08013a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 1], 8
	QUAD $0x012a5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rdx + r13 + 1], 9
	QUAD $0x013a5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r15 + 1], 10
	QUAD $0x011a5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r11 + 1], 11
	WORD $0x894d; BYTE $0xdf                   // mov    r15, r11
	QUAD $0x01025c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r8 + 1], 12
	LONG $0x246c8b4c; BYTE $0x30               // mov    r13, qword [rsp + 48]
	QUAD $0x012a5c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r13 + 1], 13
	QUAD $0x0e010a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 1], 14
	QUAD $0x000090248c6f0f66; BYTE $0x00       // movdqa    xmm1, oword [rsp + 144]
	LONG $0xe1640f66                           // pcmpgtb    xmm4, xmm1
	QUAD $0x0f01325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 1], 15
	LONG $0xd9640f66                           // pcmpgtb    xmm3, xmm1
	QUAD $0x00000100856f0f66                   // movdqa    xmm0, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xd8df0f66                           // pandn    xmm3, xmm0
	LONG $0xdcfc0f66                           // paddb    xmm3, xmm4
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0274b60f; BYTE $0x10               // movzx    esi, byte [rdx + rax + 16]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0102026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 2], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0202026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 2], 2
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x021a6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r11 + 2], 3
	QUAD $0x020a6c203a0f4266; BYTE $0x04       // pinsrb    xmm5, byte [rdx + r9 + 2], 4
	QUAD $0x02126c203a0f4266; BYTE $0x05       // pinsrb    xmm5, byte [rdx + r10 + 2], 5
	QUAD $0x06021a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 2], 6
	LONG $0x2474894c; BYTE $0x68               // mov    qword [rsp + 104], r14
	QUAD $0x02326c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r14 + 2], 7
	WORD $0x8949; BYTE $0xfc                   // mov    r12, rdi
	QUAD $0x08023a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 2], 8
	LONG $0x24448b4c; BYTE $0x50               // mov    r8, qword [rsp + 80]
	QUAD $0x02026c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r8 + 2], 9
	LONG $0x247c8b48; BYTE $0x38               // mov    rdi, qword [rsp + 56]
	QUAD $0x0a023a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 2], 10
	QUAD $0x000000b024bc894c                   // mov    qword [rsp + 176], r15
	QUAD $0x023a6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r15 + 2], 11
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0c020a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 2], 12
	WORD $0x894c; BYTE $0xee                   // mov    rsi, r13
	QUAD $0x022a6c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r13 + 2], 13
	LONG $0x246c8b4c; BYTE $0x28               // mov    r13, qword [rsp + 40]
	QUAD $0x022a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r13 + 2], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0f02026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 2], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0103027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 3], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0203027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 3], 2
	QUAD $0x031a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r11 + 3], 3
	QUAD $0x030a7c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r9 + 3], 4
	QUAD $0x03127c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rdx + r10 + 3], 5
	QUAD $0x06031a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 3], 6
	QUAD $0x03327c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rdx + r14 + 3], 7
	QUAD $0x03227c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r12 + 3], 8
	QUAD $0x03027c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r8 + 3], 9
	QUAD $0x0a033a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 3], 10
	QUAD $0x033a7c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r15 + 3], 11
	QUAD $0x0c030a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 3], 12
	QUAD $0x0d03327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 3], 13
	QUAD $0x032a7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r13 + 3], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0f03027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 3], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x04024c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rax + 4], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x04024c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rax + 4], 2
	QUAD $0x041a4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r11 + 4], 3
	QUAD $0x040a4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r9 + 4], 4
	QUAD $0x00000080248c894c                   // mov    qword [rsp + 128], r9
	QUAD $0x04124c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rdx + r10 + 4], 5
	QUAD $0x041a4c203a0f4466; BYTE $0x06       // pinsrb    xmm9, byte [rdx + rbx + 4], 6
	QUAD $0x04324c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r14 + 4], 7
	QUAD $0x04224c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r12 + 4], 8
	QUAD $0x04024c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r8 + 4], 9
	QUAD $0x043a4c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + rdi + 4], 10
	QUAD $0x043a4c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r15 + 4], 11
	QUAD $0x040a4c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + rcx + 4], 12
	QUAD $0x04324c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rsi + 4], 13
	QUAD $0x042a4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r13 + 4], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x04024c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + rax + 4], 15
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	LONG $0xe9640f66                           // pcmpgtb    xmm5, xmm1
	QUAD $0x00000110856f0f66                   // movdqa    xmm0, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xe8df0f66                           // pandn    xmm5, xmm0
	LONG $0xf9640f66                           // pcmpgtb    xmm7, xmm1
	QUAD $0x00000120856f0f66                   // movdqa    xmm0, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xf8df0f66                           // pandn    xmm7, xmm0
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0274b60f; BYTE $0x11               // movzx    esi, byte [rdx + rax + 17]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x640f4466; BYTE $0xc9               // pcmpgtb    xmm9, xmm1
	QUAD $0x00000130856f0f66                   // movdqa    xmm0, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xdf0f4466; BYTE $0xc8               // pandn    xmm9, xmm0
	LONG $0xeb0f4466; BYTE $0xcf               // por    xmm9, xmm7
	LONG $0x0274b60f; BYTE $0x12               // movzx    esi, byte [rdx + rax + 18]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xd8f80f66                           // psubb    xmm3, xmm0
	LONG $0xeb0f4466; BYTE $0xcb               // por    xmm9, xmm3
	LONG $0x0274b60f; BYTE $0x13               // movzx    esi, byte [rdx + rax + 19]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	QUAD $0x050254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r8 + 5], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x02053a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 5], 2
	QUAD $0x051a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r11 + 5], 3
	QUAD $0x050a54203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r9 + 5], 4
	QUAD $0x051254203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r10 + 5], 5
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	WORD $0x8949; BYTE $0xde                   // mov    r14, rbx
	QUAD $0x06051a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 5], 6
	LONG $0x245c8b48; BYTE $0x68               // mov    rbx, qword [rsp + 104]
	QUAD $0x07051a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 5], 7
	LONG $0x247c8b4c; BYTE $0x58               // mov    r15, qword [rsp + 88]
	QUAD $0x053a54203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r15 + 5], 8
	LONG $0x244c8b4c; BYTE $0x50               // mov    r9, qword [rsp + 80]
	QUAD $0x050a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r9 + 5], 9
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0a053254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 5], 10
	QUAD $0x000000b0249c8b4c                   // mov    r11, qword [rsp + 176]
	QUAD $0x051a54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r11 + 5], 11
	QUAD $0x0c050a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 5], 12
	LONG $0x24548b4c; BYTE $0x30               // mov    r10, qword [rsp + 48]
	QUAD $0x051254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r10 + 5], 13
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0e050254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 5], 14
	QUAD $0x052a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r13 + 5], 15
	QUAD $0x060244203a0f4666; BYTE $0x01       // pinsrb    xmm8, byte [rdx + r8 + 6], 1
	QUAD $0x063a44203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rdi + 6], 2
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x062a44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r13 + 6], 3
	QUAD $0x0000008024ac8b4c                   // mov    r13, qword [rsp + 128]
	QUAD $0x062a44203a0f4666; BYTE $0x04       // pinsrb    xmm8, byte [rdx + r13 + 6], 4
	QUAD $0x062244203a0f4666; BYTE $0x05       // pinsrb    xmm8, byte [rdx + r12 + 6], 5
	QUAD $0x063244203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rdx + r14 + 6], 6
	QUAD $0x061a44203a0f4466; BYTE $0x07       // pinsrb    xmm8, byte [rdx + rbx + 6], 7
	QUAD $0x063a44203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r15 + 6], 8
	QUAD $0x060a44203a0f4666; BYTE $0x09       // pinsrb    xmm8, byte [rdx + r9 + 6], 9
	QUAD $0x063244203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + rsi + 6], 10
	QUAD $0x061a44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r11 + 6], 11
	WORD $0x894d; BYTE $0xdf                   // mov    r15, r11
	QUAD $0x060a44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + rcx + 6], 12
	QUAD $0x061244203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + r10 + 6], 13
	QUAD $0x060244203a0f4466; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + rax + 6], 14
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x060244203a0f4466; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + rax + 6], 15
	QUAD $0x070274203a0f4666; BYTE $0x01       // pinsrb    xmm14, byte [rdx + r8 + 7], 1
	QUAD $0x073a74203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rdx + rdi + 7], 2
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x070274203a0f4466; BYTE $0x03       // pinsrb    xmm14, byte [rdx + rax + 7], 3
	WORD $0x894d; BYTE $0xe9                   // mov    r9, r13
	QUAD $0x072a74203a0f4666; BYTE $0x04       // pinsrb    xmm14, byte [rdx + r13 + 7], 4
	WORD $0x894c; BYTE $0xe7                   // mov    rdi, r12
	QUAD $0x072274203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rdx + r12 + 7], 5
	QUAD $0x073274203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r14 + 7], 6
	QUAD $0x071a74203a0f4466; BYTE $0x07       // pinsrb    xmm14, byte [rdx + rbx + 7], 7
	WORD $0x8949; BYTE $0xdb                   // mov    r11, rbx
	LONG $0x24648b4c; BYTE $0x58               // mov    r12, qword [rsp + 88]
	QUAD $0x072274203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r12 + 7], 8
	LONG $0x246c8b4c; BYTE $0x50               // mov    r13, qword [rsp + 80]
	QUAD $0x072a74203a0f4666; BYTE $0x09       // pinsrb    xmm14, byte [rdx + r13 + 7], 9
	QUAD $0x073274203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + rsi + 7], 10
	QUAD $0x073a74203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + r15 + 7], 11
	QUAD $0x070a74203a0f4466; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + rcx + 7], 12
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x071a74203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rbx + 7], 13
	QUAD $0x071274203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r10 + 7], 14
	LONG $0x6f0f4166; BYTE $0xce               // movdqa    xmm1, xmm14
	QUAD $0x009024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 144]
	LONG $0x640f4166; BYTE $0xd6               // pcmpgtb    xmm2, xmm14
	QUAD $0x00000140856f0f66                   // movdqa    xmm0, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0xd0df0f66                           // pandn    xmm2, xmm0
	LONG $0x640f4566; BYTE $0xc6               // pcmpgtb    xmm8, xmm14
	QUAD $0x00000150856f0f66                   // movdqa    xmm0, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xdf0f4466; BYTE $0xc0               // pandn    xmm8, xmm0
	LONG $0xeb0f4466; BYTE $0xc2               // por    xmm8, xmm2
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0274b60f; BYTE $0x14               // movzx    esi, byte [rdx + rax + 20]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0f070a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 7], 15
	LONG $0x640f4166; BYTE $0xce               // pcmpgtb    xmm1, xmm14
	LONG $0x456f0f66; BYTE $0x60               // movdqa    xmm0, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xc8df0f66                           // pandn    xmm1, xmm0
	LONG $0xeb0f4166; BYTE $0xc8               // por    xmm1, xmm8
	LONG $0x0274b60f; BYTE $0x15               // movzx    esi, byte [rdx + rax + 21]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	QUAD $0x0000c024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 192]
	QUAD $0x080244203a0f4266; BYTE $0x01       // pinsrb    xmm0, byte [rdx + r8 + 8], 1
	LONG $0x24748b4c; BYTE $0x20               // mov    r14, qword [rsp + 32]
	QUAD $0x083244203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r14 + 8], 2
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x03083244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 8], 3
	QUAD $0x080a44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r9 + 8], 4
	QUAD $0x05083a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 8], 5
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	LONG $0x247c8b48; BYTE $0x40               // mov    rdi, qword [rsp + 64]
	QUAD $0x06083a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 8], 6
	QUAD $0x081a44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r11 + 8], 7
	QUAD $0x082244203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r12 + 8], 8
	QUAD $0x082a44203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rdx + r13 + 8], 9
	LONG $0x24448b4c; BYTE $0x38               // mov    r8, qword [rsp + 56]
	QUAD $0x080244203a0f4266; BYTE $0x0a       // pinsrb    xmm0, byte [rdx + r8 + 8], 10
	QUAD $0x083a44203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r15 + 8], 11
	LONG $0x24748b48; BYTE $0x60               // mov    rsi, qword [rsp + 96]
	QUAD $0x0c083244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 8], 12
	QUAD $0x0d081a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 8], 13
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0e083244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 8], 14
	QUAD $0x0f080a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 8], 15
	LONG $0xeb0f4166; BYTE $0xc9               // por    xmm1, xmm9
	QUAD $0x0000c0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 192], xmm1
	LONG $0x0274b60f; BYTE $0x16               // movzx    esi, byte [rdx + rax + 22]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x640f4166; BYTE $0xc6               // pcmpgtb    xmm0, xmm14
	LONG $0x245c8b4c; BYTE $0x08               // mov    r11, qword [rsp + 8]
	QUAD $0x091a5c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r11 + 9], 1
	WORD $0x894c; BYTE $0xdb                   // mov    rbx, r11
	WORD $0x894c; BYTE $0xf0                   // mov    rax, r14
	QUAD $0x09325c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rdx + r14 + 9], 2
	LONG $0x245c8b4c; BYTE $0x18               // mov    r11, qword [rsp + 24]
	QUAD $0x091a5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r11 + 9], 3
	QUAD $0x090a5c203a0f4666; BYTE $0x04       // pinsrb    xmm11, byte [rdx + r9 + 9], 4
	LONG $0x2454894c; BYTE $0x70               // mov    qword [rsp + 112], r10
	QUAD $0x09125c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r10 + 9], 5
	QUAD $0x093a5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rdx + rdi + 9], 6
	LONG $0x24748b4c; BYTE $0x68               // mov    r14, qword [rsp + 104]
	QUAD $0x09325c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r14 + 9], 7
	QUAD $0x09225c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r12 + 9], 8
	QUAD $0x092a5c203a0f4666; BYTE $0x09       // pinsrb    xmm11, byte [rdx + r13 + 9], 9
	WORD $0x894c; BYTE $0xc6                   // mov    rsi, r8
	QUAD $0x09025c203a0f4666; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + r8 + 9], 10
	WORD $0x894c; BYTE $0xf9                   // mov    rcx, r15
	QUAD $0x093a5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r15 + 9], 11
	LONG $0x24448b4c; BYTE $0x60               // mov    r8, qword [rsp + 96]
	QUAD $0x09025c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r8 + 9], 12
	LONG $0x247c8b4c; BYTE $0x30               // mov    r15, qword [rsp + 48]
	QUAD $0x093a5c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + r15 + 9], 13
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x093a5c203a0f4466; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + rdi + 9], 14
	LONG $0x247c8b48; BYTE $0x10               // mov    rdi, qword [rsp + 16]
	QUAD $0x093a5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + rdi + 9], 15
	QUAD $0x0a1a64203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rbx + 10], 1
	QUAD $0x0a0264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rax + 10], 2
	QUAD $0x0a1a64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r11 + 10], 3
	QUAD $0x0a0a64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rdx + r9 + 10], 4
	QUAD $0x0a1264203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rdx + r10 + 10], 5
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x0a1a64203a0f4466; BYTE $0x06       // pinsrb    xmm12, byte [rdx + rbx + 10], 6
	QUAD $0x0a3264203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r14 + 10], 7
	QUAD $0x0a2264203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r12 + 10], 8
	QUAD $0x0a2a64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r13 + 10], 9
	QUAD $0x0a3264203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rsi + 10], 10
	QUAD $0x0a0a64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + rcx + 10], 11
	QUAD $0x0a0264203a0f4666; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + r8 + 10], 12
	QUAD $0x0a3a64203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r15 + 10], 13
	WORD $0x894d; BYTE $0xfb                   // mov    r11, r15
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x0a3a64203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r15 + 10], 14
	QUAD $0x0a3a64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rdi + 10], 15
	LONG $0x245c8b48; BYTE $0x08               // mov    rbx, qword [rsp + 8]
	QUAD $0x0b1a6c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rdx + rbx + 11], 1
	QUAD $0x0b026c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rax + 11], 2
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0b026c203a0f4466; BYTE $0x03       // pinsrb    xmm13, byte [rdx + rax + 11], 3
	QUAD $0x0b0a6c203a0f4666; BYTE $0x04       // pinsrb    xmm13, byte [rdx + r9 + 11], 4
	QUAD $0x0b126c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rdx + r10 + 11], 5
	LONG $0x24548b4c; BYTE $0x40               // mov    r10, qword [rsp + 64]
	QUAD $0x0b126c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r10 + 11], 6
	QUAD $0x0b326c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r14 + 11], 7
	QUAD $0x0b226c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r12 + 11], 8
	QUAD $0x0b2a6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rdx + r13 + 11], 9
	QUAD $0x0b326c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rsi + 11], 10
	QUAD $0x0b0a6c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + rcx + 11], 11
	QUAD $0x0b026c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r8 + 11], 12
	QUAD $0x0b1a6c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r11 + 11], 13
	QUAD $0x0b3a6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r15 + 11], 14
	QUAD $0x0b3a6c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rdi + 11], 15
	LONG $0x640f4566; BYTE $0xde               // pcmpgtb    xmm11, xmm14
	QUAD $0x0001009ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xfc0f4466; BYTE $0xd8               // paddb    xmm11, xmm0
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	LONG $0x0a74b60f; BYTE $0x17               // movzx    esi, byte [rdx + rcx + 23]
	LONG $0x6e0f4466; BYTE $0xc6               // movd    xmm8, esi
	LONG $0x640f4566; BYTE $0xe6               // pcmpgtb    xmm12, xmm14
	QUAD $0x000110a5df0f4466; BYTE $0x00       // pandn    xmm12, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0x640f4566; BYTE $0xee               // pcmpgtb    xmm13, xmm14
	QUAD $0x000120addf0f4466; BYTE $0x00       // pandn    xmm13, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	LONG $0x0a74b60f; BYTE $0x18               // movzx    esi, byte [rdx + rcx + 24]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x00d0248c6f0f4466; WORD $0x0000     // movdqa    xmm9, oword [rsp + 208]
	QUAD $0x0c1a4c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rbx + 12], 1
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]
	QUAD $0x0c3a4c203a0f4666; BYTE $0x02       // pinsrb    xmm9, byte [rdx + r15 + 12], 2
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	QUAD $0x0c024c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rdx + rax + 12], 3
	WORD $0x894c; BYTE $0xcf                   // mov    rdi, r9
	QUAD $0x0c0a4c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r9 + 12], 4
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x0c0a4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rdx + r9 + 12], 5
	WORD $0x894c; BYTE $0xd3                   // mov    rbx, r10
	QUAD $0x0c124c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r10 + 12], 6
	WORD $0x894d; BYTE $0xf2                   // mov    r10, r14
	QUAD $0x0c324c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r14 + 12], 7
	WORD $0x894d; BYTE $0xe6                   // mov    r14, r12
	QUAD $0x0c224c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r12 + 12], 8
	WORD $0x894d; BYTE $0xec                   // mov    r12, r13
	QUAD $0x0c2a4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r13 + 12], 9
	LONG $0x246c8b4c; BYTE $0x38               // mov    r13, qword [rsp + 56]
	QUAD $0x0c2a4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r13 + 12], 10
	QUAD $0x000000b0248c8b48                   // mov    rcx, qword [rsp + 176]
	QUAD $0x0c0a4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + rcx + 12], 11
	QUAD $0x0c024c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r8 + 12], 12
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0c324c203a0f4466; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + rsi + 12], 13
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0c024c203a0f4466; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + rax + 12], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0c024c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + rax + 12], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x010d0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 13], 1
	QUAD $0x0d3a74203a0f4266; BYTE $0x02       // pinsrb    xmm6, byte [rdx + r15 + 13], 2
	QUAD $0x0d1a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 13], 3
	QUAD $0x040d3a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 13], 4
	QUAD $0x0d0a74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r9 + 13], 5
	QUAD $0x060d1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 13], 6
	QUAD $0x0d1274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r10 + 13], 7
	QUAD $0x0d3274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r14 + 13], 8
	QUAD $0x0d2274203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r12 + 13], 9
	QUAD $0x0d2a74203a0f4266; BYTE $0x0a       // pinsrb    xmm6, byte [rdx + r13 + 13], 10
	QUAD $0x0b0d0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 13], 11
	QUAD $0x0d0274203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r8 + 13], 12
	QUAD $0x0d0d3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 13], 13
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x0e0d0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 13], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0f0d0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 13], 15
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0e027c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rax + 14], 1
	QUAD $0x0e3a7c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rdx + r15 + 14], 2
	QUAD $0x0e1a7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r11 + 14], 3
	QUAD $0x0e3a7c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rdx + rdi + 14], 4
	WORD $0x8949; BYTE $0xfb                   // mov    r11, rdi
	QUAD $0x0e0a7c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rdx + r9 + 14], 5
	QUAD $0x0e1a7c203a0f4466; BYTE $0x06       // pinsrb    xmm15, byte [rdx + rbx + 14], 6
	QUAD $0x0e127c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r10 + 14], 7
	QUAD $0x0e327c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r14 + 14], 8
	QUAD $0x0e227c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r12 + 14], 9
	QUAD $0x0e2a7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + r13 + 14], 10
	QUAD $0x0e0a7c203a0f4466; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + rcx + 14], 11
	WORD $0x8949; BYTE $0xcd                   // mov    r13, rcx
	QUAD $0x0e027c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r8 + 14], 12
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	QUAD $0x0e327c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rsi + 14], 13
	LONG $0x247c8b4c; BYTE $0x28               // mov    r15, qword [rsp + 40]
	QUAD $0x0e3a7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + r15 + 14], 14
	LONG $0x640f4566; BYTE $0xce               // pcmpgtb    xmm9, xmm14
	QUAD $0x0001308ddf0f4466; BYTE $0x00       // pandn    xmm9, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xeb0f4566; BYTE $0xcd               // por    xmm9, xmm13
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0274b60f; BYTE $0x19               // movzx    esi, byte [rdx + rax + 25]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	QUAD $0x0001609df80f4466; BYTE $0x00       // psubb    xmm11, oword 352[rbp] /* [rip + .LCPI11_22] */
	LONG $0xeb0f4566; BYTE $0xcb               // por    xmm9, xmm11
	LONG $0x0274b60f; BYTE $0x1a               // movzx    esi, byte [rdx + rax + 26]
	LONG $0xc66e0f66                           // movd    xmm0, esi
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e0a7c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + rcx + 14], 15
	LONG $0x640f4166; BYTE $0xf6               // pcmpgtb    xmm6, xmm14
	QUAD $0x00000140b5df0f66                   // pandn    xmm6, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0x640f4566; BYTE $0xfe               // pcmpgtb    xmm15, xmm14
	QUAD $0x000150bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xeb0f4466; BYTE $0xfe               // por    xmm15, xmm6
	LONG $0x0274b60f; BYTE $0x1b               // movzx    esi, byte [rdx + rax + 27]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000a024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 160]
	LONG $0x24448b4c; BYTE $0x08               // mov    r8, qword [rsp + 8]
	QUAD $0x0f0274203a0f4266; BYTE $0x01       // pinsrb    xmm6, byte [rdx + r8 + 15], 1
	LONG $0x247c8b48; BYTE $0x20               // mov    rdi, qword [rsp + 32]
	QUAD $0x020f3a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 15], 2
	LONG $0x24748b48; BYTE $0x18               // mov    rsi, qword [rsp + 24]
	QUAD $0x030f3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 15], 3
	QUAD $0x0f1a74203a0f4266; BYTE $0x04       // pinsrb    xmm6, byte [rdx + r11 + 15], 4
	QUAD $0x0f0a74203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r9 + 15], 5
	WORD $0x8949; BYTE $0xd9                   // mov    r9, rbx
	QUAD $0x060f1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 15], 6
	QUAD $0x0f1274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r10 + 15], 7
	QUAD $0x0f3274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r14 + 15], 8
	WORD $0x894d; BYTE $0xf2                   // mov    r10, r14
	LONG $0x245c8b4c; BYTE $0x50               // mov    r11, qword [rsp + 80]
	QUAD $0x0f1a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r11 + 15], 9
	LONG $0x245c8b48; BYTE $0x38               // mov    rbx, qword [rsp + 56]
	QUAD $0x0a0f1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 15], 10
	QUAD $0x0f2a74203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r13 + 15], 11
	QUAD $0x0f2274203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r12 + 15], 12
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x0f2274203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rdx + r12 + 15], 13
	QUAD $0x0f3a74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r15 + 15], 14
	QUAD $0x0f0f0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 15], 15
	LONG $0x640f4166; BYTE $0xf6               // pcmpgtb    xmm6, xmm14
	LONG $0x75df0f66; BYTE $0x60               // pandn    xmm6, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x0274b60f; BYTE $0x1c               // movzx    esi, byte [rdx + rax + 28]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	LONG $0xeb0f4166; BYTE $0xf1               // por    xmm6, xmm9
	QUAD $0x0000a024b47f0f66; BYTE $0x00       // movdqa    oword [rsp + 160], xmm6
	LONG $0x0274b60f; BYTE $0x1d               // movzx    esi, byte [rdx + rax + 29]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x100254203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r8 + 16], 1
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x103a54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rdi + 16], 2
	LONG $0x244c8b48; BYTE $0x18               // mov    rcx, qword [rsp + 24]
	QUAD $0x100a54203a0f4466; BYTE $0x03       // pinsrb    xmm10, byte [rdx + rcx + 16], 3
	QUAD $0x0000008024bc8b48                   // mov    rdi, qword [rsp + 128]
	QUAD $0x103a54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rdx + rdi + 16], 4
	LONG $0x24448b4c; BYTE $0x70               // mov    r8, qword [rsp + 112]
	QUAD $0x100254203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r8 + 16], 5
	QUAD $0x100a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r9 + 16], 6
	LONG $0x244c8b4c; BYTE $0x68               // mov    r9, qword [rsp + 104]
	QUAD $0x100a54203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r9 + 16], 7
	QUAD $0x101254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r10 + 16], 8
	QUAD $0x101a54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rdx + r11 + 16], 9
	QUAD $0x101a54203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rbx + 16], 10
	QUAD $0x102a54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r13 + 16], 11
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x103a54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r15 + 16], 12
	QUAD $0x102254203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r12 + 16], 13
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x100a54203a0f4466; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + rcx + 16], 14
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x103254203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rsi + 16], 15
	QUAD $0x01110264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 17], 1
	QUAD $0x113264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r14 + 17], 2
	LONG $0x24748b4c; BYTE $0x18               // mov    r14, qword [rsp + 24]
	QUAD $0x113264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r14 + 17], 3
	QUAD $0x04113a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 17], 4
	QUAD $0x110264203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rdx + r8 + 17], 5
	LONG $0x24648b4c; BYTE $0x40               // mov    r12, qword [rsp + 64]
	QUAD $0x112264203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r12 + 17], 6
	QUAD $0x110a64203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r9 + 17], 7
	QUAD $0x111264203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r10 + 17], 8
	QUAD $0x111a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r11 + 17], 9
	QUAD $0x0a111a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 17], 10
	QUAD $0x112a64203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r13 + 17], 11
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x113a64203a0f4266; BYTE $0x0c       // pinsrb    xmm4, byte [rdx + r15 + 17], 12
	LONG $0x24448b4c; BYTE $0x30               // mov    r8, qword [rsp + 48]
	QUAD $0x110264203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r8 + 17], 13
	QUAD $0x0e110a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 17], 14
	WORD $0x8949; BYTE $0xc9                   // mov    r9, rcx
	QUAD $0x0f113264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 17], 15
	WORD $0x8949; BYTE $0xf7                   // mov    r15, rsi
	LONG $0x640f4566; BYTE $0xd6               // pcmpgtb    xmm10, xmm14
	LONG $0x640f4166; BYTE $0xe6               // pcmpgtb    xmm4, xmm14
	QUAD $0x00000100b56f0f66                   // movdqa    xmm6, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xe6df0f66                           // pandn    xmm4, xmm6
	LONG $0xfc0f4166; BYTE $0xe2               // paddb    xmm4, xmm10
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	LONG $0x0274b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rax + 30]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0x24748b48; BYTE $0x08               // mov    rsi, qword [rsp + 8]
	QUAD $0x0112327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 18], 1
	QUAD $0x0113326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 19], 1
	QUAD $0x0114325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 20], 1
	QUAD $0x01153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 1
	QUAD $0x0116324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 22], 1
	QUAD $0x173244203a0f4466; BYTE $0x01       // pinsrb    xmm8, byte [rdx + rsi + 23], 1
	QUAD $0x183264203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rsi + 24], 1
	QUAD $0x19326c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rdx + rsi + 25], 1
	QUAD $0x011a3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 26], 1
	QUAD $0x1b325c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rsi + 27], 1
	QUAD $0x1c327c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rsi + 28], 1
	QUAD $0x1d324c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rsi + 29], 1
	QUAD $0x1e3254203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rdx + rsi + 30], 1
	LONG $0x0244b60f; BYTE $0x1f               // movzx    eax, byte [rdx + rax + 31]
	LONG $0xf06e0f66                           // movd    xmm6, eax
	QUAD $0x011f3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 31], 1
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0212027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 18], 2
	QUAD $0x0213026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 19], 2
	QUAD $0x0214025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 20], 2
	QUAD $0x02150254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 21], 2
	QUAD $0x0216024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 22], 2
	QUAD $0x170244203a0f4466; BYTE $0x02       // pinsrb    xmm8, byte [rdx + rax + 23], 2
	QUAD $0x180264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rax + 24], 2
	QUAD $0x19026c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rax + 25], 2
	QUAD $0x021a0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 26], 2
	QUAD $0x1b025c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rax + 27], 2
	QUAD $0x1c027c203a0f4466; BYTE $0x02       // pinsrb    xmm15, byte [rdx + rax + 28], 2
	QUAD $0x1d024c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rax + 29], 2
	QUAD $0x1e0254203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rax + 30], 2
	QUAD $0x021f0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 31], 2
	WORD $0x894d; BYTE $0xf3                   // mov    r11, r14
	QUAD $0x12327c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r14 + 18], 3
	QUAD $0x04123a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 18], 4
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x05120a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 18], 5
	QUAD $0x12227c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r12 + 18], 6
	LONG $0x24548b4c; BYTE $0x68               // mov    r10, qword [rsp + 104]
	QUAD $0x12127c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rdx + r10 + 18], 7
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x12327c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r14 + 18], 8
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	QUAD $0x0912027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 18], 9
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0a12327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 18], 10
	QUAD $0x122a7c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r13 + 18], 11
	QUAD $0x0c121a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 18], 12
	QUAD $0x12027c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rdx + r8 + 18], 13
	QUAD $0x120a7c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r9 + 18], 14
	QUAD $0x123a7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r15 + 18], 15
	QUAD $0x131a6c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r11 + 19], 3
	QUAD $0x04133a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 19], 4
	QUAD $0x05130a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 19], 5
	QUAD $0x13226c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r12 + 19], 6
	QUAD $0x13126c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r10 + 19], 7
	QUAD $0x13326c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r14 + 19], 8
	QUAD $0x0913026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 19], 9
	QUAD $0x0a13326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 19], 10
	QUAD $0x132a6c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r13 + 19], 11
	QUAD $0x0c131a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 19], 12
	QUAD $0x13026c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r8 + 19], 13
	QUAD $0x130a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r9 + 19], 14
	QUAD $0x133a6c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r15 + 19], 15
	QUAD $0x141a5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r11 + 20], 3
	QUAD $0x04143a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 20], 4
	QUAD $0x05140a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 20], 5
	QUAD $0x14225c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r12 + 20], 6
	QUAD $0x14125c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r10 + 20], 7
	QUAD $0x14325c203a0f4266; BYTE $0x08       // pinsrb    xmm3, byte [rdx + r14 + 20], 8
	QUAD $0x0914025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 20], 9
	QUAD $0x0a14325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 20], 10
	QUAD $0x142a5c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r13 + 20], 11
	QUAD $0x0c141a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 20], 12
	QUAD $0x14025c203a0f4266; BYTE $0x0d       // pinsrb    xmm3, byte [rdx + r8 + 20], 13
	QUAD $0x140a5c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r9 + 20], 14
	LONG $0x640f4166; BYTE $0xfe               // pcmpgtb    xmm7, xmm14
	QUAD $0x000110b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xdf0f4166; BYTE $0xfe               // pandn    xmm7, xmm14
	QUAD $0x00009024ac640f66; BYTE $0x00       // pcmpgtb    xmm5, oword [rsp + 144]
	QUAD $0x000120b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xdf0f4166; BYTE $0xee               // pandn    xmm5, xmm14
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0x143a5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r15 + 20], 15
	QUAD $0x009024b46f0f4466; WORD $0x0000     // movdqa    xmm14, oword [rsp + 144]
	LONG $0x640f4166; BYTE $0xde               // pcmpgtb    xmm3, xmm14
	QUAD $0x00000130bd6f0f66                   // movdqa    xmm7, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xdfdf0f66                           // pandn    xmm3, xmm7
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	LONG $0xed760f66                           // pcmpeqd    xmm5, xmm5
	LONG $0xe5f80f66                           // psubb    xmm4, xmm5
	LONG $0xdceb0f66                           // por    xmm3, xmm4
	QUAD $0x151a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r11 + 21], 3
	QUAD $0x04153a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 21], 4
	QUAD $0x05150a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 21], 5
	QUAD $0x152254203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r12 + 21], 6
	QUAD $0x151254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r10 + 21], 7
	QUAD $0x153254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r14 + 21], 8
	QUAD $0x09150254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 21], 9
	QUAD $0x0a153254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 21], 10
	QUAD $0x152a54203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r13 + 21], 11
	QUAD $0x0c151a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 21], 12
	QUAD $0x150254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r8 + 21], 13
	QUAD $0x150a54203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r9 + 21], 14
	QUAD $0x153a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r15 + 21], 15
	QUAD $0x161a4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r11 + 22], 3
	QUAD $0x04163a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 22], 4
	QUAD $0x05160a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 22], 5
	QUAD $0x16224c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r12 + 22], 6
	QUAD $0x16124c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r10 + 22], 7
	QUAD $0x16324c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r14 + 22], 8
	QUAD $0x0916024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 22], 9
	QUAD $0x0a16324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 22], 10
	QUAD $0x162a4c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r13 + 22], 11
	QUAD $0x0c161a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 22], 12
	QUAD $0x16024c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r8 + 22], 13
	QUAD $0x160a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r9 + 22], 14
	QUAD $0x163a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r15 + 22], 15
	QUAD $0x171a44203a0f4666; BYTE $0x03       // pinsrb    xmm8, byte [rdx + r11 + 23], 3
	QUAD $0x173a44203a0f4466; BYTE $0x04       // pinsrb    xmm8, byte [rdx + rdi + 23], 4
	QUAD $0x170a44203a0f4466; BYTE $0x05       // pinsrb    xmm8, byte [rdx + rcx + 23], 5
	QUAD $0x172244203a0f4666; BYTE $0x06       // pinsrb    xmm8, byte [rdx + r12 + 23], 6
	QUAD $0x171244203a0f4666; BYTE $0x07       // pinsrb    xmm8, byte [rdx + r10 + 23], 7
	QUAD $0x173244203a0f4666; BYTE $0x08       // pinsrb    xmm8, byte [rdx + r14 + 23], 8
	QUAD $0x170244203a0f4466; BYTE $0x09       // pinsrb    xmm8, byte [rdx + rax + 23], 9
	QUAD $0x173244203a0f4466; BYTE $0x0a       // pinsrb    xmm8, byte [rdx + rsi + 23], 10
	QUAD $0x172a44203a0f4666; BYTE $0x0b       // pinsrb    xmm8, byte [rdx + r13 + 23], 11
	QUAD $0x171a44203a0f4466; BYTE $0x0c       // pinsrb    xmm8, byte [rdx + rbx + 23], 12
	QUAD $0x170244203a0f4666; BYTE $0x0d       // pinsrb    xmm8, byte [rdx + r8 + 23], 13
	QUAD $0x170a44203a0f4666; BYTE $0x0e       // pinsrb    xmm8, byte [rdx + r9 + 23], 14
	LONG $0x640f4166; BYTE $0xd6               // pcmpgtb    xmm2, xmm14
	QUAD $0x00000140ad6f0f66                   // movdqa    xmm5, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0xd5df0f66                           // pandn    xmm2, xmm5
	LONG $0x640f4166; BYTE $0xce               // pcmpgtb    xmm1, xmm14
	QUAD $0x00000150bd6f0f66                   // movdqa    xmm7, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xcfdf0f66                           // pandn    xmm1, xmm7
	LONG $0xcaeb0f66                           // por    xmm1, xmm2
	QUAD $0x173a44203a0f4666; BYTE $0x0f       // pinsrb    xmm8, byte [rdx + r15 + 23], 15
	LONG $0x640f4566; BYTE $0xc6               // pcmpgtb    xmm8, xmm14
	LONG $0x656f0f66; BYTE $0x60               // movdqa    xmm4, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xdf0f4466; BYTE $0xc4               // pandn    xmm8, xmm4
	LONG $0xeb0f4466; BYTE $0xc1               // por    xmm8, xmm1
	QUAD $0x181a64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r11 + 24], 3
	QUAD $0x183a64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rdi + 24], 4
	QUAD $0x180a64203a0f4466; BYTE $0x05       // pinsrb    xmm12, byte [rdx + rcx + 24], 5
	QUAD $0x182264203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r12 + 24], 6
	QUAD $0x181264203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r10 + 24], 7
	QUAD $0x183264203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r14 + 24], 8
	QUAD $0x180264203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rdx + rax + 24], 9
	QUAD $0x183264203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rsi + 24], 10
	QUAD $0x182a64203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r13 + 24], 11
	QUAD $0x181a64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + rbx + 24], 12
	QUAD $0x180264203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r8 + 24], 13
	QUAD $0x180a64203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r9 + 24], 14
	QUAD $0x183a64203a0f4666; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + r15 + 24], 15
	LONG $0xeb0f4466; BYTE $0xc3               // por    xmm8, xmm3
	LONG $0x640f4566; BYTE $0xe6               // pcmpgtb    xmm12, xmm14
	QUAD $0x191a6c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r11 + 25], 3
	QUAD $0x193a6c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rdx + rdi + 25], 4
	QUAD $0x190a6c203a0f4466; BYTE $0x05       // pinsrb    xmm13, byte [rdx + rcx + 25], 5
	QUAD $0x19226c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r12 + 25], 6
	QUAD $0x19126c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r10 + 25], 7
	QUAD $0x19326c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r14 + 25], 8
	QUAD $0x19026c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rdx + rax + 25], 9
	QUAD $0x19326c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rsi + 25], 10
	QUAD $0x192a6c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + r13 + 25], 11
	QUAD $0x191a6c203a0f4466; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + rbx + 25], 12
	QUAD $0x19026c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r8 + 25], 13
	QUAD $0x190a6c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r9 + 25], 14
	QUAD $0x193a6c203a0f4666; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + r15 + 25], 15
	QUAD $0x1a1a44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r11 + 26], 3
	QUAD $0x041a3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 26], 4
	QUAD $0x051a0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 26], 5
	QUAD $0x1a2244203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rdx + r12 + 26], 6
	QUAD $0x1a1244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r10 + 26], 7
	QUAD $0x1a3244203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r14 + 26], 8
	QUAD $0x091a0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 26], 9
	QUAD $0x0a1a3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 26], 10
	QUAD $0x1a2a44203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r13 + 26], 11
	QUAD $0x0c1a1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 26], 12
	QUAD $0x1a0244203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rdx + r8 + 26], 13
	QUAD $0x1a0a44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r9 + 26], 14
	QUAD $0x1a3a44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r15 + 26], 15
	QUAD $0x1b1a5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r11 + 27], 3
	QUAD $0x1b3a5c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rdx + rdi + 27], 4
	QUAD $0x1b0a5c203a0f4466; BYTE $0x05       // pinsrb    xmm11, byte [rdx + rcx + 27], 5
	QUAD $0x1b225c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r12 + 27], 6
	QUAD $0x1b125c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r10 + 27], 7
	QUAD $0x1b325c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r14 + 27], 8
	QUAD $0x1b025c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rax + 27], 9
	QUAD $0x1b325c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + rsi + 27], 10
	QUAD $0x1b2a5c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r13 + 27], 11
	QUAD $0x1b1a5c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + rbx + 27], 12
	QUAD $0x1b025c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + r8 + 27], 13
	QUAD $0x1b0a5c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r9 + 27], 14
	LONG $0x640f4566; BYTE $0xee               // pcmpgtb    xmm13, xmm14
	QUAD $0x000100addf0f4466; BYTE $0x00       // pandn    xmm13, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xfc0f4566; BYTE $0xec               // paddb    xmm13, xmm12
	QUAD $0x1b3a5c203a0f4666; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + r15 + 27], 15
	LONG $0x640f4166; BYTE $0xc6               // pcmpgtb    xmm0, xmm14
	QUAD $0x0000011085df0f66                   // pandn    xmm0, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0x640f4566; BYTE $0xde               // pcmpgtb    xmm11, xmm14
	QUAD $0x0001209ddf0f4466; BYTE $0x00       // pandn    xmm11, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xeb0f4466; BYTE $0xd8               // por    xmm11, xmm0
	QUAD $0x1c1a7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r11 + 28], 3
	QUAD $0x1d1a4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r11 + 29], 3
	QUAD $0x1e1a54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r11 + 30], 3
	QUAD $0x1f1a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 31], 3
	QUAD $0x1c3a7c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rdx + rdi + 28], 4
	QUAD $0x1d3a4c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rdx + rdi + 29], 4
	QUAD $0x1e3a54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rdx + rdi + 30], 4
	QUAD $0x041f3a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 31], 4
	WORD $0x8948; BYTE $0xcf                   // mov    rdi, rcx
	QUAD $0x1c0a7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rcx + 28], 5
	QUAD $0x1d0a4c203a0f4466; BYTE $0x05       // pinsrb    xmm9, byte [rdx + rcx + 29], 5
	QUAD $0x1e0a54203a0f4466; BYTE $0x05       // pinsrb    xmm10, byte [rdx + rcx + 30], 5
	QUAD $0x051f0a74203a0f66                   // pinsrb    xmm6, byte [rdx + rcx + 31], 5
	QUAD $0x1c227c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r12 + 28], 6
	QUAD $0x1d224c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r12 + 29], 6
	QUAD $0x1e2254203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r12 + 30], 6
	QUAD $0x1f2274203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r12 + 31], 6
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	WORD $0x894c; BYTE $0xd7                   // mov    rdi, r10
	QUAD $0x1c127c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r10 + 28], 7
	QUAD $0x1d124c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r10 + 29], 7
	QUAD $0x1e1254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r10 + 30], 7
	QUAD $0x1f1274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r10 + 31], 7
	WORD $0x894c; BYTE $0xf7                   // mov    rdi, r14
	QUAD $0x1c327c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r14 + 28], 8
	QUAD $0x1d324c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r14 + 29], 8
	QUAD $0x1e3254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r14 + 30], 8
	QUAD $0x1f3274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r14 + 31], 8
	QUAD $0x1c027c203a0f4466; BYTE $0x09       // pinsrb    xmm15, byte [rdx + rax + 28], 9
	QUAD $0x1d024c203a0f4466; BYTE $0x09       // pinsrb    xmm9, byte [rdx + rax + 29], 9
	QUAD $0x1e0254203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rax + 30], 9
	QUAD $0x091f0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 31], 9
	WORD $0x8948; BYTE $0xf0                   // mov    rax, rsi
	QUAD $0x1c327c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + rsi + 28], 10
	QUAD $0x1d324c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + rsi + 29], 10
	QUAD $0x1e3254203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rsi + 30], 10
	QUAD $0x0a1f3274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 31], 10
	QUAD $0x1c2a7c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r13 + 28], 11
	QUAD $0x1d2a4c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r13 + 29], 11
	QUAD $0x1e2a54203a0f4666; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + r13 + 30], 11
	QUAD $0x1f2a74203a0f4266; BYTE $0x0b       // pinsrb    xmm6, byte [rdx + r13 + 31], 11
	QUAD $0x1c1a7c203a0f4466; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + rbx + 28], 12
	QUAD $0x1d1a4c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + rbx + 29], 12
	QUAD $0x1e1a54203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rbx + 30], 12
	QUAD $0x0c1f1a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 31], 12
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x1c027c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + r8 + 28], 13
	QUAD $0x1d024c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + r8 + 29], 13
	QUAD $0x1e0254203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r8 + 30], 13
	QUAD $0x1f0274203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rdx + r8 + 31], 13
	WORD $0x894c; BYTE $0xc8                   // mov    rax, r9
	QUAD $0x1c0a7c203a0f4666; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + r9 + 28], 14
	QUAD $0x1d0a4c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r9 + 29], 14
	QUAD $0x1e0a54203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r9 + 30], 14
	QUAD $0x1f0a74203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r9 + 31], 14
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x1c027c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + rax + 28], 15
	QUAD $0x1d024c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + rax + 29], 15
	QUAD $0x1e0254203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rax + 30], 15
	LONG $0x640f4566; BYTE $0xfe               // pcmpgtb    xmm15, xmm14
	QUAD $0x000130bddf0f4466; BYTE $0x00       // pandn    xmm15, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xeb0f4566; BYTE $0xfb               // por    xmm15, xmm11
	QUAD $0x0f1f0274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 31], 15
	QUAD $0x000160adf80f4466; BYTE $0x00       // psubb    xmm13, oword 352[rbp] /* [rip + .LCPI11_22] */
	LONG $0xeb0f4566; BYTE $0xfd               // por    xmm15, xmm13
	LONG $0x640f4566; BYTE $0xce               // pcmpgtb    xmm9, xmm14
	LONG $0xdf0f4466; BYTE $0xcd               // pandn    xmm9, xmm5
	LONG $0x640f4566; BYTE $0xd6               // pcmpgtb    xmm10, xmm14
	LONG $0xdf0f4466; BYTE $0xd7               // pandn    xmm10, xmm7
	LONG $0xeb0f4566; BYTE $0xd1               // por    xmm10, xmm9
	LONG $0x640f4166; BYTE $0xf6               // pcmpgtb    xmm6, xmm14
	LONG $0xf4df0f66                           // pandn    xmm6, xmm4
	LONG $0xeb0f4166; BYTE $0xf2               // por    xmm6, xmm10
	LONG $0xeb0f4166; BYTE $0xf7               // por    xmm6, xmm15
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0xc6600f66                           // punpcklbw    xmm0, xmm6
	QUAD $0x0000c0249c6f0f66; BYTE $0x00       // movdqa    xmm3, oword [rsp + 192]
	LONG $0xcb6f0f66                           // movdqa    xmm1, xmm3
	QUAD $0x0000a024a46f0f66; BYTE $0x00       // movdqa    xmm4, oword [rsp + 160]
	LONG $0xcc600f66                           // punpcklbw    xmm1, xmm4
	LONG $0xd16f0f66                           // movdqa    xmm2, xmm1
	LONG $0xd0610f66                           // punpcklwd    xmm2, xmm0
	LONG $0xc8690f66                           // punpckhwd    xmm1, xmm0
	LONG $0x680f4466; BYTE $0xc6               // punpckhbw    xmm8, xmm6
	LONG $0xdc680f66                           // punpckhbw    xmm3, xmm4
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x610f4166; BYTE $0xc0               // punpcklwd    xmm0, xmm8
	LONG $0x690f4166; BYTE $0xd8               // punpckhwd    xmm3, xmm8
	QUAD $0x000000e0248c8b48                   // mov    rcx, qword [rsp + 224]
	LONG $0x7f0f41f3; WORD $0x8f5c; BYTE $0x30 // movdqu    oword [r15 + 4*rcx + 48], xmm3
	LONG $0x7f0f41f3; WORD $0x8f44; BYTE $0x20 // movdqu    oword [r15 + 4*rcx + 32], xmm0
	LONG $0x7f0f41f3; WORD $0x8f4c; BYTE $0x10 // movdqu    oword [r15 + 4*rcx + 16], xmm1
	LONG $0x7f0f41f3; WORD $0x8f14             // movdqu    oword [r15 + 4*rcx], xmm2
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x00000100248c3b48                   // cmp    rcx, qword [rsp + 256]
	JNE  LBB11_86
	QUAD $0x000000f824948b4c                   // mov    r10, qword [rsp + 248]
	QUAD $0x0000010024943b4c                   // cmp    r10, qword [rsp + 256]
	LONG $0x24348a44                           // mov    r14b, byte [rsp]
	QUAD $0x0000012024ac8b4c                   // mov    r13, qword [rsp + 288]
	QUAD $0x0000011824948b48                   // mov    rdx, qword [rsp + 280]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	JNE  LBB11_88
	JMP  LBB11_91

LBB11_66:
	LONG $0xf0e28349                       // and    r10, -16
	WORD $0x894c; BYTE $0xd0               // mov    rax, r10
	LONG $0x05e0c148                       // shl    rax, 5
	WORD $0x0148; BYTE $0xd0               // add    rax, rdx
	QUAD $0x0000011824848948               // mov    qword [rsp + 280], rax
	QUAD $0x000000c02494894c               // mov    qword [rsp + 192], r10
	LONG $0x97048d4b                       // lea    rax, [r15 + 4*r10]
	QUAD $0x0000012024848948               // mov    qword [rsp + 288], rax
	LONG $0xc6b60f41                       // movzx    eax, r14b
	LONG $0xc86e0f66                       // movd    xmm1, eax
	LONG $0xc0ef0f66                       // pxor    xmm0, xmm0
	LONG $0x00380f66; BYTE $0xc8           // pshufb    xmm1, xmm0
	QUAD $0x000100248c7f0f66; BYTE $0x00   // movdqa    oword [rsp + 256], xmm1
	WORD $0xc031                           // xor    eax, eax
	LONG $0x247c894c; BYTE $0x78           // mov    qword [rsp + 120], r15
	QUAD $0x010024846f0f4466; WORD $0x0000 // movdqa    xmm8, oword [rsp + 256]

LBB11_67:
	QUAD $0x0000008024848948                   // mov    qword [rsp + 128], rax
	LONG $0x05e0c148                           // shl    rax, 5
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	WORD $0x8948; BYTE $0xc3                   // mov    rbx, rax
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	LONG $0x24448948; BYTE $0x20               // mov    qword [rsp + 32], rax
	WORD $0x8949; BYTE $0xc4                   // mov    r12, rax
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	WORD $0x8949; BYTE $0xc3                   // mov    r11, rax
	WORD $0x8949; BYTE $0xc1                   // mov    r9, rax
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0x020cb60f                           // movzx    ecx, byte [rdx + rax]
	LONG $0xf16e0f66                           // movd    xmm6, ecx
	LONG $0x024cb60f; BYTE $0x01               // movzx    ecx, byte [rdx + rax + 1]
	LONG $0x6e0f4466; BYTE $0xf9               // movd    xmm15, ecx
	LONG $0x024cb60f; BYTE $0x02               // movzx    ecx, byte [rdx + rax + 2]
	LONG $0xe96e0f66                           // movd    xmm5, ecx
	LONG $0x024cb60f; BYTE $0x03               // movzx    ecx, byte [rdx + rax + 3]
	LONG $0xe16e0f66                           // movd    xmm4, ecx
	LONG $0x024cb60f; BYTE $0x04               // movzx    ecx, byte [rdx + rax + 4]
	LONG $0xd96e0f66                           // movd    xmm3, ecx
	LONG $0x024cb60f; BYTE $0x05               // movzx    ecx, byte [rdx + rax + 5]
	LONG $0xf96e0f66                           // movd    xmm7, ecx
	LONG $0x024cb60f; BYTE $0x06               // movzx    ecx, byte [rdx + rax + 6]
	LONG $0xd16e0f66                           // movd    xmm2, ecx
	LONG $0x024cb60f; BYTE $0x07               // movzx    ecx, byte [rdx + rax + 7]
	LONG $0x6e0f4466; BYTE $0xc9               // movd    xmm9, ecx
	LONG $0x024cb60f; BYTE $0x08               // movzx    ecx, byte [rdx + rax + 8]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	QUAD $0x0000e024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 224], xmm0
	LONG $0x024cb60f; BYTE $0x09               // movzx    ecx, byte [rdx + rax + 9]
	LONG $0x6e0f4466; BYTE $0xd1               // movd    xmm10, ecx
	LONG $0x024cb60f; BYTE $0x0a               // movzx    ecx, byte [rdx + rax + 10]
	LONG $0x6e0f4466; BYTE $0xe1               // movd    xmm12, ecx
	LONG $0x024cb60f; BYTE $0x0b               // movzx    ecx, byte [rdx + rax + 11]
	LONG $0x6e0f4466; BYTE $0xd9               // movd    xmm11, ecx
	LONG $0x024cb60f; BYTE $0x0c               // movzx    ecx, byte [rdx + rax + 12]
	LONG $0x6e0f4466; BYTE $0xe9               // movd    xmm13, ecx
	LONG $0x024cb60f; BYTE $0x0d               // movzx    ecx, byte [rdx + rax + 13]
	LONG $0xc16e0f66                           // movd    xmm0, ecx
	LONG $0x024cb60f; BYTE $0x0e               // movzx    ecx, byte [rdx + rax + 14]
	LONG $0x6e0f4466; BYTE $0xf1               // movd    xmm14, ecx
	LONG $0x024cb60f; BYTE $0x0f               // movzx    ecx, byte [rdx + rax + 15]
	LONG $0xc96e0f66                           // movd    xmm1, ecx
	QUAD $0x0000b0248c7f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm1
	LONG $0x24448948; BYTE $0x50               // mov    qword [rsp + 80], rax
	WORD $0x8949; BYTE $0xc5                   // mov    r13, rax
	LONG $0x20cd8349                           // or    r13, 32
	LONG $0x246c894c; BYTE $0x28               // mov    qword [rsp + 40], r13
	LONG $0x40ce8349                           // or    r14, 64
	LONG $0x60cb8348                           // or    rbx, 96
	LONG $0x80cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 128
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	LONG $0xa0c98148; WORD $0x0000; BYTE $0x00 // or    rcx, 160
	LONG $0x244c8948; BYTE $0x20               // mov    qword [rsp + 32], rcx
	LONG $0xc0cc8149; WORD $0x0000; BYTE $0x00 // or    r12, 192
	LONG $0xe0c88149; WORD $0x0000; BYTE $0x00 // or    r8, 224
	LONG $0x00cb8149; WORD $0x0001; BYTE $0x00 // or    r11, 256
	LONG $0x20c98149; WORD $0x0001; BYTE $0x00 // or    r9, 288
	LONG $0x40ca8149; WORD $0x0001; BYTE $0x00 // or    r10, 320
	LONG $0x60ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 352
	LONG $0x24748948; BYTE $0x58               // mov    qword [rsp + 88], rsi
	WORD $0x8948; BYTE $0xc6                   // mov    rsi, rax
	LONG $0x80ce8148; WORD $0x0001; BYTE $0x00 // or    rsi, 384
	LONG $0x24748948; BYTE $0x70               // mov    qword [rsp + 112], rsi
	LONG $0xa0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 416
	LONG $0x247c8948; BYTE $0x10               // mov    qword [rsp + 16], rdi
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0xc0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 448
	LONG $0x247c8948; BYTE $0x18               // mov    qword [rsp + 24], rdi
	WORD $0x8948; BYTE $0xc7                   // mov    rdi, rax
	LONG $0xe0cf8148; WORD $0x0001; BYTE $0x00 // or    rdi, 480
	LONG $0x247c8948; BYTE $0x08               // mov    qword [rsp + 8], rdi
	QUAD $0x012a34203a0f4266                   // pinsrb    xmm6, byte [rdx + r13], 1
	QUAD $0x023234203a0f4266                   // pinsrb    xmm6, byte [rdx + r14], 2
	LONG $0x245c8948; BYTE $0x68               // mov    qword [rsp + 104], rbx
	LONG $0x203a0f66; WORD $0x1a34; BYTE $0x03 // pinsrb    xmm6, byte [rdx + rbx], 3
	QUAD $0x043a34203a0f4266                   // pinsrb    xmm6, byte [rdx + r15], 4
	LONG $0x203a0f66; WORD $0x0a34; BYTE $0x05 // pinsrb    xmm6, byte [rdx + rcx], 5
	QUAD $0x062234203a0f4266                   // pinsrb    xmm6, byte [rdx + r12], 6
	LONG $0x2444894c; BYTE $0x38               // mov    qword [rsp + 56], r8
	QUAD $0x070234203a0f4266                   // pinsrb    xmm6, byte [rdx + r8], 7
	LONG $0x245c894c; BYTE $0x48               // mov    qword [rsp + 72], r11
	QUAD $0x081a34203a0f4266                   // pinsrb    xmm6, byte [rdx + r11], 8
	WORD $0x894d; BYTE $0xcb                   // mov    r11, r9
	LONG $0x244c894c; BYTE $0x60               // mov    qword [rsp + 96], r9
	QUAD $0x090a34203a0f4266                   // pinsrb    xmm6, byte [rdx + r9], 9
	WORD $0x894d; BYTE $0xd1                   // mov    r9, r10
	QUAD $0x0a1234203a0f4266                   // pinsrb    xmm6, byte [rdx + r10], 10
	LONG $0x24548b4c; BYTE $0x58               // mov    r10, qword [rsp + 88]
	QUAD $0x0b1234203a0f4266                   // pinsrb    xmm6, byte [rdx + r10], 11
	LONG $0x203a0f66; WORD $0x3234; BYTE $0x0c // pinsrb    xmm6, byte [rdx + rsi], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	LONG $0x203a0f66; WORD $0x0234; BYTE $0x0d // pinsrb    xmm6, byte [rdx + rax], 13
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0e2a34203a0f4266                   // pinsrb    xmm6, byte [rdx + r13], 14
	LONG $0x203a0f66; WORD $0x3a34; BYTE $0x0f // pinsrb    xmm6, byte [rdx + rdi], 15
	LONG $0xde0f4166; BYTE $0xf0               // pmaxub    xmm6, xmm8
	LONG $0x740f4166; BYTE $0xf0               // pcmpeqb    xmm6, xmm8
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x013a7c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rdi + 1], 1
	QUAD $0x01327c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rdx + r14 + 1], 2
	QUAD $0x011a7c203a0f4466; BYTE $0x03       // pinsrb    xmm15, byte [rdx + rbx + 1], 3
	QUAD $0x013a7c203a0f4666; BYTE $0x04       // pinsrb    xmm15, byte [rdx + r15 + 1], 4
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x010a7c203a0f4466; BYTE $0x05       // pinsrb    xmm15, byte [rdx + rcx + 1], 5
	QUAD $0x01227c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r12 + 1], 6
	WORD $0x894d; BYTE $0xe7                   // mov    r15, r12
	QUAD $0x01027c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r8 + 1], 7
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x012a7c203a0f4666; BYTE $0x08       // pinsrb    xmm15, byte [rdx + r13 + 1], 8
	QUAD $0x011a7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r11 + 1], 9
	QUAD $0x010a7c203a0f4666; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + r9 + 1], 10
	LONG $0x244c894c; BYTE $0x40               // mov    qword [rsp + 64], r9
	QUAD $0x01127c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r10 + 1], 11
	WORD $0x894c; BYTE $0xd1                   // mov    rcx, r10
	QUAD $0x01327c203a0f4466; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + rsi + 1], 12
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x01227c203a0f4666; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + r12 + 1], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x01027c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + rax + 1], 14
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x01027c203a0f4466; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + rax + 1], 15
	LONG $0xde0f4566; BYTE $0xf8               // pmaxub    xmm15, xmm8
	LONG $0x740f4566; BYTE $0xf8               // pcmpeqb    xmm15, xmm8
	QUAD $0x000001008d6f0f66                   // movdqa    xmm1, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xdb0f4466; BYTE $0xf9               // pand    xmm15, xmm1
	LONG $0xf80f4466; BYTE $0xfe               // psubb    xmm15, xmm6
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	LONG $0x0274b60f; BYTE $0x10               // movzx    esi, byte [rdx + rax + 16]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x01023a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 2], 1
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	LONG $0x2474894c; BYTE $0x30               // mov    qword [rsp + 48], r14
	QUAD $0x02326c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rdx + r14 + 2], 2
	LONG $0x24748b4c; BYTE $0x68               // mov    r14, qword [rsp + 104]
	QUAD $0x02326c203a0f4266; BYTE $0x03       // pinsrb    xmm5, byte [rdx + r14 + 2], 3
	WORD $0x8949; BYTE $0xda                   // mov    r10, rbx
	QUAD $0x04021a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 2], 4
	LONG $0x24448b48; BYTE $0x20               // mov    rax, qword [rsp + 32]
	QUAD $0x0502026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 2], 5
	WORD $0x894c; BYTE $0xfb                   // mov    rbx, r15
	QUAD $0x023a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r15 + 2], 6
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x0702326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 2], 7
	WORD $0x894d; BYTE $0xeb                   // mov    r11, r13
	QUAD $0x022a6c203a0f4266; BYTE $0x08       // pinsrb    xmm5, byte [rdx + r13 + 2], 8
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x023a6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r15 + 2], 9
	QUAD $0x020a6c203a0f4266; BYTE $0x0a       // pinsrb    xmm5, byte [rdx + r9 + 2], 10
	QUAD $0x0b020a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 2], 11
	LONG $0x244c8b48; BYTE $0x70               // mov    rcx, qword [rsp + 112]
	QUAD $0x0c020a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 2], 12
	WORD $0x894d; BYTE $0xe5                   // mov    r13, r12
	QUAD $0x02226c203a0f4266; BYTE $0x0d       // pinsrb    xmm5, byte [rdx + r12 + 2], 13
	LONG $0x244c8b4c; BYTE $0x18               // mov    r9, qword [rsp + 24]
	QUAD $0x020a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r9 + 2], 14
	LONG $0x24648b4c; BYTE $0x08               // mov    r12, qword [rsp + 8]
	QUAD $0x02226c203a0f4266; BYTE $0x0f       // pinsrb    xmm5, byte [rdx + r12 + 2], 15
	QUAD $0x01033a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 3], 1
	QUAD $0x030264203a0f4266; BYTE $0x02       // pinsrb    xmm4, byte [rdx + r8 + 3], 2
	QUAD $0x033264203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r14 + 3], 3
	QUAD $0x031264203a0f4266; BYTE $0x04       // pinsrb    xmm4, byte [rdx + r10 + 3], 4
	QUAD $0x05030264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 3], 5
	QUAD $0x06031a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 3], 6
	QUAD $0x07033264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 3], 7
	QUAD $0x031a64203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r11 + 3], 8
	QUAD $0x033a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r15 + 3], 9
	LONG $0x245c8b4c; BYTE $0x40               // mov    r11, qword [rsp + 64]
	QUAD $0x031a64203a0f4266; BYTE $0x0a       // pinsrb    xmm4, byte [rdx + r11 + 3], 10
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x030264203a0f4266; BYTE $0x0b       // pinsrb    xmm4, byte [rdx + r8 + 3], 11
	QUAD $0x0c030a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 3], 12
	QUAD $0x032a64203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r13 + 3], 13
	QUAD $0x030a64203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r9 + 3], 14
	QUAD $0x032264203a0f4266; BYTE $0x0f       // pinsrb    xmm4, byte [rdx + r12 + 3], 15
	LONG $0xde0f4166; BYTE $0xe8               // pmaxub    xmm5, xmm8
	LONG $0x740f4166; BYTE $0xe8               // pcmpeqb    xmm5, xmm8
	QUAD $0x00000110b56f0f66                   // movdqa    xmm6, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xeedb0f66                           // pand    xmm5, xmm6
	LONG $0xde0f4166; BYTE $0xe0               // pmaxub    xmm4, xmm8
	LONG $0x740f4166; BYTE $0xe0               // pcmpeqb    xmm4, xmm8
	QUAD $0x00000120b56f0f66                   // movdqa    xmm6, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xe6db0f66                           // pand    xmm4, xmm6
	LONG $0xe5eb0f66                           // por    xmm4, xmm5
	LONG $0x244c8b48; BYTE $0x50               // mov    rcx, qword [rsp + 80]
	LONG $0x0a74b60f; BYTE $0x11               // movzx    esi, byte [rdx + rcx + 17]
	LONG $0xee6e0f66                           // movd    xmm5, esi
	LONG $0xeb0f4166; BYTE $0xe7               // por    xmm4, xmm15
	LONG $0x0a74b60f; BYTE $0x12               // movzx    esi, byte [rdx + rcx + 18]
	LONG $0x6e0f4466; BYTE $0xfe               // movd    xmm15, esi
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	QUAD $0x01043a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 4], 1
	LONG $0x246c8b4c; BYTE $0x30               // mov    r13, qword [rsp + 48]
	QUAD $0x042a5c203a0f4266; BYTE $0x02       // pinsrb    xmm3, byte [rdx + r13 + 4], 2
	LONG $0x24648b4c; BYTE $0x68               // mov    r12, qword [rsp + 104]
	QUAD $0x04225c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r12 + 4], 3
	QUAD $0x000000902494894c                   // mov    qword [rsp + 144], r10
	QUAD $0x04125c203a0f4266; BYTE $0x04       // pinsrb    xmm3, byte [rdx + r10 + 4], 4
	QUAD $0x0504025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 4], 5
	QUAD $0x06041a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 4], 6
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x07040a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 4], 7
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x08040a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 4], 8
	QUAD $0x043a5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rdx + r15 + 4], 9
	WORD $0x894c; BYTE $0xde                   // mov    rsi, r11
	QUAD $0x041a5c203a0f4266; BYTE $0x0a       // pinsrb    xmm3, byte [rdx + r11 + 4], 10
	QUAD $0x04025c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r8 + 4], 11
	LONG $0x244c8b4c; BYTE $0x70               // mov    r9, qword [rsp + 112]
	QUAD $0x040a5c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r9 + 4], 12
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0d040a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 4], 13
	LONG $0x247c8b48; BYTE $0x18               // mov    rdi, qword [rsp + 24]
	QUAD $0x0e043a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 4], 14
	LONG $0x245c8b4c; BYTE $0x08               // mov    r11, qword [rsp + 8]
	QUAD $0x041a5c203a0f4266; BYTE $0x0f       // pinsrb    xmm3, byte [rdx + r11 + 4], 15
	QUAD $0x05327c203a0f4266; BYTE $0x01       // pinsrb    xmm7, byte [rdx + r14 + 5], 1
	QUAD $0x052a7c203a0f4266; BYTE $0x02       // pinsrb    xmm7, byte [rdx + r13 + 5], 2
	QUAD $0x05227c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r12 + 5], 3
	QUAD $0x05127c203a0f4266; BYTE $0x04       // pinsrb    xmm7, byte [rdx + r10 + 5], 4
	QUAD $0x0505027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 5], 5
	QUAD $0x06051a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 5], 6
	LONG $0x244c8b48; BYTE $0x38               // mov    rcx, qword [rsp + 56]
	QUAD $0x07050a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 5], 7
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x08050a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 5], 8
	QUAD $0x053a7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r15 + 5], 9
	QUAD $0x0a05327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 5], 10
	QUAD $0x05027c203a0f4266; BYTE $0x0b       // pinsrb    xmm7, byte [rdx + r8 + 5], 11
	QUAD $0x050a7c203a0f4266; BYTE $0x0c       // pinsrb    xmm7, byte [rdx + r9 + 5], 12
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0d050a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 5], 13
	QUAD $0x0e053a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 5], 14
	QUAD $0x051a7c203a0f4266; BYTE $0x0f       // pinsrb    xmm7, byte [rdx + r11 + 5], 15
	QUAD $0x063254203a0f4266; BYTE $0x01       // pinsrb    xmm2, byte [rdx + r14 + 6], 1
	QUAD $0x062a54203a0f4266; BYTE $0x02       // pinsrb    xmm2, byte [rdx + r13 + 6], 2
	QUAD $0x062254203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r12 + 6], 3
	QUAD $0x061254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r10 + 6], 4
	QUAD $0x05060254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 6], 5
	WORD $0x8949; BYTE $0xc2                   // mov    r10, rax
	QUAD $0x06061a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 6], 6
	WORD $0x8949; BYTE $0xdd                   // mov    r13, rbx
	QUAD $0x000000a0249c8948                   // mov    qword [rsp + 160], rbx
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x07060254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 6], 7
	WORD $0x8949; BYTE $0xc6                   // mov    r14, rax
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x08061a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 6], 8
	QUAD $0x063a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r15 + 6], 9
	WORD $0x894d; BYTE $0xfb                   // mov    r11, r15
	QUAD $0x0a063254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 6], 10
	QUAD $0x060254203a0f4266; BYTE $0x0b       // pinsrb    xmm2, byte [rdx + r8 + 6], 11
	WORD $0x894d; BYTE $0xc4                   // mov    r12, r8
	QUAD $0x060a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r9 + 6], 12
	QUAD $0x0d060a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 6], 13
	QUAD $0x0e063a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 6], 14
	LONG $0x247c8b4c; BYTE $0x08               // mov    r15, qword [rsp + 8]
	QUAD $0x063a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r15 + 6], 15
	LONG $0xde0f4166; BYTE $0xd8               // pmaxub    xmm3, xmm8
	LONG $0x740f4166; BYTE $0xd8               // pcmpeqb    xmm3, xmm8
	QUAD $0x00000130b56f0f66                   // movdqa    xmm6, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xdedb0f66                           // pand    xmm3, xmm6
	LONG $0xde0f4166; BYTE $0xf8               // pmaxub    xmm7, xmm8
	LONG $0x740f4166; BYTE $0xf8               // pcmpeqb    xmm7, xmm8
	QUAD $0x00000140b56f0f66                   // movdqa    xmm6, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0xfedb0f66                           // pand    xmm7, xmm6
	LONG $0xfbeb0f66                           // por    xmm7, xmm3
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	LONG $0x0274b60f; BYTE $0x13               // movzx    esi, byte [rdx + rax + 19]
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0xde0f4166; BYTE $0xd0               // pmaxub    xmm2, xmm8
	LONG $0x740f4166; BYTE $0xd0               // pcmpeqb    xmm2, xmm8
	QUAD $0x00000150b56f0f66                   // movdqa    xmm6, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xd6db0f66                           // pand    xmm2, xmm6
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	LONG $0x0274b60f; BYTE $0x14               // movzx    esi, byte [rdx + rax + 20]
	LONG $0xf66e0f66                           // movd    xmm6, esi
	LONG $0xd4eb0f66                           // por    xmm2, xmm4
	LONG $0x0274b60f; BYTE $0x15               // movzx    esi, byte [rdx + rax + 21]
	LONG $0xe66e0f66                           // movd    xmm4, esi
	LONG $0x247c8b48; BYTE $0x28               // mov    rdi, qword [rsp + 40]
	QUAD $0x073a4c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rdi + 7], 1
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	QUAD $0x07024c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rax + 7], 2
	LONG $0x24448b48; BYTE $0x68               // mov    rax, qword [rsp + 104]
	QUAD $0x07024c203a0f4466; BYTE $0x03       // pinsrb    xmm9, byte [rdx + rax + 7], 3
	QUAD $0x0000009024848b4c                   // mov    r8, qword [rsp + 144]
	QUAD $0x07024c203a0f4666; BYTE $0x04       // pinsrb    xmm9, byte [rdx + r8 + 7], 4
	QUAD $0x07124c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rdx + r10 + 7], 5
	QUAD $0x072a4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r13 + 7], 6
	QUAD $0x07324c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r14 + 7], 7
	QUAD $0x071a4c203a0f4466; BYTE $0x08       // pinsrb    xmm9, byte [rdx + rbx + 7], 8
	QUAD $0x071a4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r11 + 7], 9
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	LONG $0x245c8b4c; BYTE $0x40               // mov    r11, qword [rsp + 64]
	QUAD $0x071a4c203a0f4666; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + r11 + 7], 10
	QUAD $0x07224c203a0f4666; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + r12 + 7], 11
	QUAD $0x070a4c203a0f4666; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + r9 + 7], 12
	LONG $0x246c8b4c; BYTE $0x10               // mov    r13, qword [rsp + 16]
	QUAD $0x072a4c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + r13 + 7], 13
	LONG $0x24648b4c; BYTE $0x18               // mov    r12, qword [rsp + 24]
	QUAD $0x07224c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r12 + 7], 14
	QUAD $0x073a4c203a0f4666; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + r15 + 7], 15
	LONG $0xde0f4566; BYTE $0xc8               // pmaxub    xmm9, xmm8
	LONG $0x740f4566; BYTE $0xc8               // pcmpeqb    xmm9, xmm8
	LONG $0x7d6f0f66; BYTE $0x60               // movdqa    xmm7, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xdb0f4466; BYTE $0xcf               // pand    xmm9, xmm7
	LONG $0xeb0f4466; BYTE $0xca               // por    xmm9, xmm2
	QUAD $0x00d0248c7f0f4466; WORD $0x0000     // movdqa    oword [rsp + 208], xmm9
	LONG $0x244c8b4c; BYTE $0x50               // mov    r9, qword [rsp + 80]
	LONG $0x74b60f42; WORD $0x160a             // movzx    esi, byte [rdx + r9 + 22]
	LONG $0xfe6e0f66                           // movd    xmm7, esi
	QUAD $0x0000e024946f0f66; BYTE $0x00       // movdqa    xmm2, oword [rsp + 224]
	QUAD $0x01083a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 8], 1
	WORD $0x8949; BYTE $0xfe                   // mov    r14, rdi
	LONG $0x247c8b48; BYTE $0x30               // mov    rdi, qword [rsp + 48]
	QUAD $0x02083a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 8], 2
	QUAD $0x03080254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 8], 3
	WORD $0x8949; BYTE $0xc7                   // mov    r15, rax
	QUAD $0x080254203a0f4266; BYTE $0x04       // pinsrb    xmm2, byte [rdx + r8 + 8], 4
	QUAD $0x081254203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r10 + 8], 5
	QUAD $0x000000a024848b48                   // mov    rax, qword [rsp + 160]
	QUAD $0x06080254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 8], 6
	LONG $0x24748b48; BYTE $0x38               // mov    rsi, qword [rsp + 56]
	QUAD $0x07083254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 8], 7
	LONG $0x245c8b48; BYTE $0x48               // mov    rbx, qword [rsp + 72]
	QUAD $0x08081a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 8], 8
	QUAD $0x09080a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 8], 9
	QUAD $0x081a54203a0f4266; BYTE $0x0a       // pinsrb    xmm2, byte [rdx + r11 + 8], 10
	LONG $0x244c8b48; BYTE $0x58               // mov    rcx, qword [rsp + 88]
	QUAD $0x0b080a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 8], 11
	LONG $0x245c8b4c; BYTE $0x70               // mov    r11, qword [rsp + 112]
	QUAD $0x081a54203a0f4266; BYTE $0x0c       // pinsrb    xmm2, byte [rdx + r11 + 8], 12
	WORD $0x894c; BYTE $0xee                   // mov    rsi, r13
	QUAD $0x082a54203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r13 + 8], 13
	QUAD $0x082254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r12 + 8], 14
	LONG $0x246c8b4c; BYTE $0x08               // mov    r13, qword [rsp + 8]
	QUAD $0x082a54203a0f4266; BYTE $0x0f       // pinsrb    xmm2, byte [rdx + r13 + 8], 15
	LONG $0xde0f4166; BYTE $0xd0               // pmaxub    xmm2, xmm8
	LONG $0x740f4166; BYTE $0xd0               // pcmpeqb    xmm2, xmm8
	QUAD $0x093254203a0f4666; BYTE $0x01       // pinsrb    xmm10, byte [rdx + r14 + 9], 1
	QUAD $0x093a54203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rdi + 9], 2
	QUAD $0x093a54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r15 + 9], 3
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	QUAD $0x090254203a0f4666; BYTE $0x04       // pinsrb    xmm10, byte [rdx + r8 + 9], 4
	WORD $0x894d; BYTE $0xc7                   // mov    r15, r8
	QUAD $0x091254203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r10 + 9], 5
	QUAD $0x090254203a0f4466; BYTE $0x06       // pinsrb    xmm10, byte [rdx + rax + 9], 6
	WORD $0x8949; BYTE $0xc0                   // mov    r8, rax
	LONG $0x24448b48; BYTE $0x38               // mov    rax, qword [rsp + 56]
	QUAD $0x090254203a0f4466; BYTE $0x07       // pinsrb    xmm10, byte [rdx + rax + 9], 7
	QUAD $0x091a54203a0f4466; BYTE $0x08       // pinsrb    xmm10, byte [rdx + rbx + 9], 8
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x090254203a0f4466; BYTE $0x09       // pinsrb    xmm10, byte [rdx + rax + 9], 9
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x090254203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rax + 9], 10
	QUAD $0x090a54203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + rcx + 9], 11
	WORD $0x894c; BYTE $0xd9                   // mov    rcx, r11
	QUAD $0x091a54203a0f4666; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + r11 + 9], 12
	QUAD $0x093254203a0f4466; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + rsi + 9], 13
	QUAD $0x092254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r12 + 9], 14
	QUAD $0x092a54203a0f4666; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + r13 + 9], 15
	LONG $0xde0f4566; BYTE $0xd0               // pmaxub    xmm10, xmm8
	LONG $0x740f4566; BYTE $0xd0               // pcmpeqb    xmm10, xmm8
	QUAD $0x00010095db0f4466; BYTE $0x00       // pand    xmm10, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xf80f4466; BYTE $0xd2               // psubb    xmm10, xmm2
	LONG $0x74b60f42; WORD $0x170a             // movzx    esi, byte [rdx + r9 + 23]
	LONG $0xd66e0f66                           // movd    xmm2, esi
	LONG $0x245c8b4c; BYTE $0x28               // mov    r11, qword [rsp + 40]
	QUAD $0x0a1a64203a0f4666; BYTE $0x01       // pinsrb    xmm12, byte [rdx + r11 + 10], 1
	QUAD $0x0a3a64203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rdi + 10], 2
	WORD $0x8949; BYTE $0xfa                   // mov    r10, rdi
	WORD $0x894c; BYTE $0xf6                   // mov    rsi, r14
	QUAD $0x0a3264203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r14 + 10], 3
	QUAD $0x0a3a64203a0f4666; BYTE $0x04       // pinsrb    xmm12, byte [rdx + r15 + 10], 4
	LONG $0x24748b4c; BYTE $0x20               // mov    r14, qword [rsp + 32]
	QUAD $0x0a3264203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rdx + r14 + 10], 5
	QUAD $0x0a0264203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r8 + 10], 6
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x247c8b4c; BYTE $0x38               // mov    r15, qword [rsp + 56]
	QUAD $0x0a3a64203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r15 + 10], 7
	LONG $0x246c8b4c; BYTE $0x48               // mov    r13, qword [rsp + 72]
	QUAD $0x0a2a64203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r13 + 10], 8
	LONG $0x247c8b48; BYTE $0x60               // mov    rdi, qword [rsp + 96]
	QUAD $0x0a3a64203a0f4466; BYTE $0x09       // pinsrb    xmm12, byte [rdx + rdi + 10], 9
	QUAD $0x0a0264203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rax + 10], 10
	LONG $0x24448b4c; BYTE $0x58               // mov    r8, qword [rsp + 88]
	QUAD $0x0a0264203a0f4666; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + r8 + 10], 11
	WORD $0x8949; BYTE $0xc9                   // mov    r9, rcx
	QUAD $0x0a0a64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + rcx + 10], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0a0264203a0f4466; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + rax + 10], 13
	QUAD $0x0a2264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r12 + 10], 14
	LONG $0x244c8b48; BYTE $0x08               // mov    rcx, qword [rsp + 8]
	QUAD $0x0a0a64203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rcx + 10], 15
	QUAD $0x0b1a5c203a0f4666; BYTE $0x01       // pinsrb    xmm11, byte [rdx + r11 + 11], 1
	QUAD $0x0b125c203a0f4666; BYTE $0x02       // pinsrb    xmm11, byte [rdx + r10 + 11], 2
	QUAD $0x0b325c203a0f4466; BYTE $0x03       // pinsrb    xmm11, byte [rdx + rsi + 11], 3
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	QUAD $0x0000009024b48b48                   // mov    rsi, qword [rsp + 144]
	QUAD $0x0b325c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rdx + rsi + 11], 4
	QUAD $0x0b325c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r14 + 11], 5
	QUAD $0x0b1a5c203a0f4466; BYTE $0x06       // pinsrb    xmm11, byte [rdx + rbx + 11], 6
	QUAD $0x0b3a5c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r15 + 11], 7
	WORD $0x894d; BYTE $0xfe                   // mov    r14, r15
	QUAD $0x0b2a5c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r13 + 11], 8
	QUAD $0x0b3a5c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rdi + 11], 9
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x0b1a5c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + rbx + 11], 10
	QUAD $0x0b025c203a0f4666; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + r8 + 11], 11
	QUAD $0x0b0a5c203a0f4666; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + r9 + 11], 12
	QUAD $0x0b025c203a0f4466; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + rax + 11], 13
	QUAD $0x0b225c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r12 + 11], 14
	QUAD $0x0b0a5c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + rcx + 11], 15
	LONG $0xde0f4566; BYTE $0xe0               // pmaxub    xmm12, xmm8
	LONG $0x740f4566; BYTE $0xe0               // pcmpeqb    xmm12, xmm8
	QUAD $0x000110a5db0f4466; BYTE $0x00       // pand    xmm12, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xde0f4566; BYTE $0xd8               // pmaxub    xmm11, xmm8
	LONG $0x740f4566; BYTE $0xd8               // pcmpeqb    xmm11, xmm8
	QUAD $0x0001209ddb0f4466; BYTE $0x00       // pand    xmm11, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xeb0f4566; BYTE $0xdc               // por    xmm11, xmm12
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	LONG $0x0274b60f; BYTE $0x18               // movzx    esi, byte [rdx + rax + 24]
	LONG $0x6e0f4466; BYTE $0xce               // movd    xmm9, esi
	LONG $0xeb0f4566; BYTE $0xda               // por    xmm11, xmm10
	LONG $0x0274b60f; BYTE $0x19               // movzx    esi, byte [rdx + rax + 25]
	LONG $0x6e0f4466; BYTE $0xe6               // movd    xmm12, esi
	QUAD $0x0c1a6c203a0f4666; BYTE $0x01       // pinsrb    xmm13, byte [rdx + r11 + 12], 1
	LONG $0x24648b4c; BYTE $0x30               // mov    r12, qword [rsp + 48]
	QUAD $0x0c226c203a0f4666; BYTE $0x02       // pinsrb    xmm13, byte [rdx + r12 + 12], 2
	WORD $0x894d; BYTE $0xd3                   // mov    r11, r10
	QUAD $0x0c126c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r10 + 12], 3
	QUAD $0x0000009024bc8b48                   // mov    rdi, qword [rsp + 144]
	QUAD $0x0c3a6c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rdx + rdi + 12], 4
	LONG $0x247c8b4c; BYTE $0x20               // mov    r15, qword [rsp + 32]
	QUAD $0x0c3a6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rdx + r15 + 12], 5
	QUAD $0x000000a024948b4c                   // mov    r10, qword [rsp + 160]
	QUAD $0x0c126c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r10 + 12], 6
	QUAD $0x0c326c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r14 + 12], 7
	QUAD $0x0c2a6c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r13 + 12], 8
	LONG $0x244c8b48; BYTE $0x60               // mov    rcx, qword [rsp + 96]
	QUAD $0x0c0a6c203a0f4466; BYTE $0x09       // pinsrb    xmm13, byte [rdx + rcx + 12], 9
	QUAD $0x0c1a6c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rbx + 12], 10
	QUAD $0x0c026c203a0f4666; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + r8 + 12], 11
	QUAD $0x0c0a6c203a0f4666; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + r9 + 12], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0c026c203a0f4466; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + rax + 12], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0c026c203a0f4466; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + rax + 12], 14
	LONG $0x24748b48; BYTE $0x08               // mov    rsi, qword [rsp + 8]
	QUAD $0x0c326c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rsi + 12], 15
	LONG $0x24448b48; BYTE $0x28               // mov    rax, qword [rsp + 40]
	QUAD $0x010d0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 13], 1
	QUAD $0x0d2244203a0f4266; BYTE $0x02       // pinsrb    xmm0, byte [rdx + r12 + 13], 2
	QUAD $0x0d1a44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r11 + 13], 3
	QUAD $0x040d3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 13], 4
	QUAD $0x0d3a44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rdx + r15 + 13], 5
	QUAD $0x0d1244203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rdx + r10 + 13], 6
	QUAD $0x0d3244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r14 + 13], 7
	QUAD $0x0d2a44203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r13 + 13], 8
	QUAD $0x090d0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 13], 9
	QUAD $0x0a0d1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 13], 10
	QUAD $0x0d0244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r8 + 13], 11
	QUAD $0x0d0a44203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r9 + 13], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d0d0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 13], 13
	LONG $0x24448b48; BYTE $0x18               // mov    rax, qword [rsp + 24]
	QUAD $0x0e0d0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 13], 14
	QUAD $0x0f0d3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 13], 15
	WORD $0x8948; BYTE $0xf0                   // mov    rax, rsi
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x0e3274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rsi + 14], 1
	QUAD $0x0e2274203a0f4666; BYTE $0x02       // pinsrb    xmm14, byte [rdx + r12 + 14], 2
	QUAD $0x0e1a74203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r11 + 14], 3
	QUAD $0x0e3a74203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rdx + rdi + 14], 4
	QUAD $0x0e3a74203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rdx + r15 + 14], 5
	QUAD $0x0e1274203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r10 + 14], 6
	QUAD $0x0e3274203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rdx + r14 + 14], 7
	WORD $0x894d; BYTE $0xf7                   // mov    r15, r14
	QUAD $0x0e2a74203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r13 + 14], 8
	QUAD $0x0e0a74203a0f4466; BYTE $0x09       // pinsrb    xmm14, byte [rdx + rcx + 14], 9
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	QUAD $0x0e1a74203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + rbx + 14], 10
	QUAD $0x0e0274203a0f4666; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + r8 + 14], 11
	QUAD $0x0e0a74203a0f4666; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + r9 + 14], 12
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	QUAD $0x0e0a74203a0f4466; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + rcx + 14], 13
	LONG $0x246c8b4c; BYTE $0x18               // mov    r13, qword [rsp + 24]
	QUAD $0x0e2a74203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r13 + 14], 14
	QUAD $0x0e0274203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rax + 14], 15
	LONG $0xde0f4566; BYTE $0xe8               // pmaxub    xmm13, xmm8
	LONG $0x740f4566; BYTE $0xe8               // pcmpeqb    xmm13, xmm8
	QUAD $0x000130addb0f4466; BYTE $0x00       // pand    xmm13, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xde0f4166; BYTE $0xc0               // pmaxub    xmm0, xmm8
	LONG $0x740f4166; BYTE $0xc0               // pcmpeqb    xmm0, xmm8
	QUAD $0x0000014085db0f66                   // pand    xmm0, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0xeb0f4166; BYTE $0xc5               // por    xmm0, xmm13
	LONG $0x24648b4c; BYTE $0x50               // mov    r12, qword [rsp + 80]
	LONG $0x74b60f42; WORD $0x1a22             // movzx    esi, byte [rdx + r12 + 26]
	LONG $0x6e0f4466; BYTE $0xee               // movd    xmm13, esi
	LONG $0xde0f4566; BYTE $0xf0               // pmaxub    xmm14, xmm8
	LONG $0x740f4566; BYTE $0xf0               // pcmpeqb    xmm14, xmm8
	QUAD $0x000150b5db0f4466; BYTE $0x00       // pand    xmm14, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xeb0f4466; BYTE $0xf0               // por    xmm14, xmm0
	LONG $0x74b60f42; WORD $0x1b22             // movzx    esi, byte [rdx + r12 + 27]
	LONG $0x6e0f4466; BYTE $0xd6               // movd    xmm10, esi
	LONG $0xeb0f4566; BYTE $0xf3               // por    xmm14, xmm11
	LONG $0x74b60f42; WORD $0x1c22             // movzx    esi, byte [rdx + r12 + 28]
	LONG $0x6e0f4466; BYTE $0xde               // movd    xmm11, esi
	QUAD $0x0000b024846f0f66; BYTE $0x00       // movdqa    xmm0, oword [rsp + 176]
	LONG $0x244c8b48; BYTE $0x28               // mov    rcx, qword [rsp + 40]
	QUAD $0x010f0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 15], 1
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x020f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 15], 2
	LONG $0x247c8b48; BYTE $0x68               // mov    rdi, qword [rsp + 104]
	QUAD $0x030f3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 15], 3
	QUAD $0x00000090248c8b4c                   // mov    r9, qword [rsp + 144]
	QUAD $0x0f0a44203a0f4266; BYTE $0x04       // pinsrb    xmm0, byte [rdx + r9 + 15], 4
	LONG $0x24548b4c; BYTE $0x20               // mov    r10, qword [rsp + 32]
	QUAD $0x0f1244203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rdx + r10 + 15], 5
	QUAD $0x000000a024848b48                   // mov    rax, qword [rsp + 160]
	QUAD $0x060f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 15], 6
	QUAD $0x0f3a44203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r15 + 15], 7
	LONG $0x24448b48; BYTE $0x48               // mov    rax, qword [rsp + 72]
	QUAD $0x080f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 15], 8
	QUAD $0x0f3244203a0f4266; BYTE $0x09       // pinsrb    xmm0, byte [rdx + r14 + 15], 9
	LONG $0x245c8b48; BYTE $0x40               // mov    rbx, qword [rsp + 64]
	QUAD $0x0a0f1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 15], 10
	QUAD $0x0f0244203a0f4266; BYTE $0x0b       // pinsrb    xmm0, byte [rdx + r8 + 15], 11
	LONG $0x24448b4c; BYTE $0x70               // mov    r8, qword [rsp + 112]
	QUAD $0x0f0244203a0f4266; BYTE $0x0c       // pinsrb    xmm0, byte [rdx + r8 + 15], 12
	LONG $0x24748b48; BYTE $0x10               // mov    rsi, qword [rsp + 16]
	QUAD $0x0d0f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 15], 13
	QUAD $0x0f2a44203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r13 + 15], 14
	LONG $0x245c8b4c; BYTE $0x08               // mov    r11, qword [rsp + 8]
	QUAD $0x0f1a44203a0f4266; BYTE $0x0f       // pinsrb    xmm0, byte [rdx + r11 + 15], 15
	LONG $0xde0f4166; BYTE $0xc0               // pmaxub    xmm0, xmm8
	LONG $0x740f4166; BYTE $0xc0               // pcmpeqb    xmm0, xmm8
	LONG $0x45db0f66; BYTE $0x60               // pand    xmm0, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xeb0f4166; BYTE $0xc6               // por    xmm0, xmm14
	QUAD $0x0000b024847f0f66; BYTE $0x00       // movdqa    oword [rsp + 176], xmm0
	LONG $0x74b60f42; WORD $0x1d22             // movzx    esi, byte [rdx + r12 + 29]
	LONG $0x6e0f4466; BYTE $0xf6               // movd    xmm14, esi
	QUAD $0x01100a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 16], 1
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x0210324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 16], 2
	WORD $0x8949; BYTE $0xf4                   // mov    r12, rsi
	QUAD $0x03103a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 16], 3
	QUAD $0x100a4c203a0f4266; BYTE $0x04       // pinsrb    xmm1, byte [rdx + r9 + 16], 4
	QUAD $0x10124c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rdx + r10 + 16], 5
	QUAD $0x000000a0248c8b4c                   // mov    r9, qword [rsp + 160]
	QUAD $0x100a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r9 + 16], 6
	QUAD $0x103a4c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r15 + 16], 7
	QUAD $0x0810024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 16], 8
	QUAD $0x10324c203a0f4266; BYTE $0x09       // pinsrb    xmm1, byte [rdx + r14 + 16], 9
	QUAD $0x0a101a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 16], 10
	LONG $0x24748b4c; BYTE $0x58               // mov    r14, qword [rsp + 88]
	QUAD $0x10324c203a0f4266; BYTE $0x0b       // pinsrb    xmm1, byte [rdx + r14 + 16], 11
	QUAD $0x10024c203a0f4266; BYTE $0x0c       // pinsrb    xmm1, byte [rdx + r8 + 16], 12
	WORD $0x894d; BYTE $0xc2                   // mov    r10, r8
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x0d10024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 16], 13
	QUAD $0x102a4c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r13 + 16], 14
	WORD $0x894c; BYTE $0xde                   // mov    rsi, r11
	QUAD $0x101a4c203a0f4266; BYTE $0x0f       // pinsrb    xmm1, byte [rdx + r11 + 16], 15
	LONG $0xde0f4166; BYTE $0xc8               // pmaxub    xmm1, xmm8
	LONG $0x740f4166; BYTE $0xc8               // pcmpeqb    xmm1, xmm8
	QUAD $0x01110a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 17], 1
	QUAD $0x11226c203a0f4266; BYTE $0x02       // pinsrb    xmm5, byte [rdx + r12 + 17], 2
	WORD $0x894d; BYTE $0xe3                   // mov    r11, r12
	QUAD $0x03113a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 17], 3
	QUAD $0x0000009024bc8b48                   // mov    rdi, qword [rsp + 144]
	QUAD $0x04113a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rdi + 17], 4
	LONG $0x244c8b48; BYTE $0x20               // mov    rcx, qword [rsp + 32]
	QUAD $0x05110a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 17], 5
	QUAD $0x110a6c203a0f4266; BYTE $0x06       // pinsrb    xmm5, byte [rdx + r9 + 17], 6
	QUAD $0x113a6c203a0f4266; BYTE $0x07       // pinsrb    xmm5, byte [rdx + r15 + 17], 7
	WORD $0x894d; BYTE $0xf9                   // mov    r9, r15
	LONG $0x244c8b48; BYTE $0x48               // mov    rcx, qword [rsp + 72]
	QUAD $0x08110a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rcx + 17], 8
	LONG $0x247c8b4c; BYTE $0x60               // mov    r15, qword [rsp + 96]
	QUAD $0x113a6c203a0f4266; BYTE $0x09       // pinsrb    xmm5, byte [rdx + r15 + 17], 9
	QUAD $0x0a111a6c203a0f66                   // pinsrb    xmm5, byte [rdx + rbx + 17], 10
	WORD $0x894d; BYTE $0xf0                   // mov    r8, r14
	QUAD $0x11326c203a0f4266; BYTE $0x0b       // pinsrb    xmm5, byte [rdx + r14 + 17], 11
	QUAD $0x11126c203a0f4266; BYTE $0x0c       // pinsrb    xmm5, byte [rdx + r10 + 17], 12
	WORD $0x894d; BYTE $0xd4                   // mov    r12, r10
	QUAD $0x0d11026c203a0f66                   // pinsrb    xmm5, byte [rdx + rax + 17], 13
	QUAD $0x112a6c203a0f4266; BYTE $0x0e       // pinsrb    xmm5, byte [rdx + r13 + 17], 14
	QUAD $0x0f11326c203a0f66                   // pinsrb    xmm5, byte [rdx + rsi + 17], 15
	LONG $0xde0f4166; BYTE $0xe8               // pmaxub    xmm5, xmm8
	LONG $0x740f4166; BYTE $0xe8               // pcmpeqb    xmm5, xmm8
	QUAD $0x00000100addb0f66                   // pand    xmm5, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xe9f80f66                           // psubb    xmm5, xmm1
	LONG $0x24448b48; BYTE $0x50               // mov    rax, qword [rsp + 80]
	LONG $0x0274b60f; BYTE $0x1e               // movzx    esi, byte [rdx + rax + 30]
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x24748b48; BYTE $0x28               // mov    rsi, qword [rsp + 40]
	QUAD $0x12327c203a0f4466; BYTE $0x01       // pinsrb    xmm15, byte [rdx + rsi + 18], 1
	QUAD $0x0113325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 19], 1
	QUAD $0x01143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 1
	QUAD $0x01153264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 21], 1
	QUAD $0x0116327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 22], 1
	QUAD $0x01173254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 23], 1
	QUAD $0x18324c203a0f4466; BYTE $0x01       // pinsrb    xmm9, byte [rdx + rsi + 24], 1
	QUAD $0x193264203a0f4466; BYTE $0x01       // pinsrb    xmm12, byte [rdx + rsi + 25], 1
	QUAD $0x1a326c203a0f4466; BYTE $0x01       // pinsrb    xmm13, byte [rdx + rsi + 26], 1
	QUAD $0x1b3254203a0f4466; BYTE $0x01       // pinsrb    xmm10, byte [rdx + rsi + 27], 1
	QUAD $0x1c325c203a0f4466; BYTE $0x01       // pinsrb    xmm11, byte [rdx + rsi + 28], 1
	QUAD $0x1d3274203a0f4466; BYTE $0x01       // pinsrb    xmm14, byte [rdx + rsi + 29], 1
	QUAD $0x011e324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 30], 1
	LONG $0x0244b60f; BYTE $0x1f               // movzx    eax, byte [rdx + rax + 31]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	QUAD $0x011f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 1
	QUAD $0x121a7c203a0f4666; BYTE $0x02       // pinsrb    xmm15, byte [rdx + r11 + 18], 2
	LONG $0x245c8b4c; BYTE $0x68               // mov    r11, qword [rsp + 104]
	QUAD $0x121a7c203a0f4666; BYTE $0x03       // pinsrb    xmm15, byte [rdx + r11 + 18], 3
	QUAD $0x123a7c203a0f4466; BYTE $0x04       // pinsrb    xmm15, byte [rdx + rdi + 18], 4
	LONG $0x24748b4c; BYTE $0x20               // mov    r14, qword [rsp + 32]
	QUAD $0x12327c203a0f4666; BYTE $0x05       // pinsrb    xmm15, byte [rdx + r14 + 18], 5
	QUAD $0x000000a024948b4c                   // mov    r10, qword [rsp + 160]
	QUAD $0x12127c203a0f4666; BYTE $0x06       // pinsrb    xmm15, byte [rdx + r10 + 18], 6
	QUAD $0x120a7c203a0f4666; BYTE $0x07       // pinsrb    xmm15, byte [rdx + r9 + 18], 7
	WORD $0x8948; BYTE $0xce                   // mov    rsi, rcx
	QUAD $0x120a7c203a0f4466; BYTE $0x08       // pinsrb    xmm15, byte [rdx + rcx + 18], 8
	QUAD $0x123a7c203a0f4666; BYTE $0x09       // pinsrb    xmm15, byte [rdx + r15 + 18], 9
	LONG $0x244c8b48; BYTE $0x40               // mov    rcx, qword [rsp + 64]
	QUAD $0x120a7c203a0f4466; BYTE $0x0a       // pinsrb    xmm15, byte [rdx + rcx + 18], 10
	QUAD $0x12027c203a0f4666; BYTE $0x0b       // pinsrb    xmm15, byte [rdx + r8 + 18], 11
	QUAD $0x12227c203a0f4666; BYTE $0x0c       // pinsrb    xmm15, byte [rdx + r12 + 18], 12
	LONG $0x24448b48; BYTE $0x10               // mov    rax, qword [rsp + 16]
	QUAD $0x12027c203a0f4466; BYTE $0x0d       // pinsrb    xmm15, byte [rdx + rax + 18], 13
	LONG $0x245c8b48; BYTE $0x18               // mov    rbx, qword [rsp + 24]
	QUAD $0x121a7c203a0f4466; BYTE $0x0e       // pinsrb    xmm15, byte [rdx + rbx + 18], 14
	LONG $0x246c8b4c; BYTE $0x08               // mov    r13, qword [rsp + 8]
	QUAD $0x122a7c203a0f4666; BYTE $0x0f       // pinsrb    xmm15, byte [rdx + r13 + 18], 15
	LONG $0x245c8b48; BYTE $0x30               // mov    rbx, qword [rsp + 48]
	QUAD $0x02131a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rbx + 19], 2
	QUAD $0x131a5c203a0f4266; BYTE $0x03       // pinsrb    xmm3, byte [rdx + r11 + 19], 3
	QUAD $0x04133a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rdi + 19], 4
	QUAD $0x13325c203a0f4266; BYTE $0x05       // pinsrb    xmm3, byte [rdx + r14 + 19], 5
	QUAD $0x13125c203a0f4266; BYTE $0x06       // pinsrb    xmm3, byte [rdx + r10 + 19], 6
	WORD $0x894d; BYTE $0xd5                   // mov    r13, r10
	QUAD $0x130a5c203a0f4266; BYTE $0x07       // pinsrb    xmm3, byte [rdx + r9 + 19], 7
	QUAD $0x0813325c203a0f66                   // pinsrb    xmm3, byte [rdx + rsi + 19], 8
	WORD $0x8949; BYTE $0xf2                   // mov    r10, rsi
	QUAD $0x133a5c203a0f4266; BYTE $0x09       // pinsrb    xmm3, byte [rdx + r15 + 19], 9
	QUAD $0x0a130a5c203a0f66                   // pinsrb    xmm3, byte [rdx + rcx + 19], 10
	QUAD $0x13025c203a0f4266; BYTE $0x0b       // pinsrb    xmm3, byte [rdx + r8 + 19], 11
	WORD $0x894c; BYTE $0xe1                   // mov    rcx, r12
	QUAD $0x13225c203a0f4266; BYTE $0x0c       // pinsrb    xmm3, byte [rdx + r12 + 19], 12
	QUAD $0x0d13025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 19], 13
	LONG $0x24448b4c; BYTE $0x18               // mov    r8, qword [rsp + 24]
	QUAD $0x13025c203a0f4266; BYTE $0x0e       // pinsrb    xmm3, byte [rdx + r8 + 19], 14
	LONG $0x24448b48; BYTE $0x08               // mov    rax, qword [rsp + 8]
	QUAD $0x0f13025c203a0f66                   // pinsrb    xmm3, byte [rdx + rax + 19], 15
	LONG $0x24748b48; BYTE $0x30               // mov    rsi, qword [rsp + 48]
	QUAD $0x02143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 2
	QUAD $0x02153264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 21], 2
	QUAD $0x0216327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 22], 2
	QUAD $0x02173254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 23], 2
	QUAD $0x18324c203a0f4466; BYTE $0x02       // pinsrb    xmm9, byte [rdx + rsi + 24], 2
	QUAD $0x193264203a0f4466; BYTE $0x02       // pinsrb    xmm12, byte [rdx + rsi + 25], 2
	QUAD $0x1a326c203a0f4466; BYTE $0x02       // pinsrb    xmm13, byte [rdx + rsi + 26], 2
	QUAD $0x1b3254203a0f4466; BYTE $0x02       // pinsrb    xmm10, byte [rdx + rsi + 27], 2
	QUAD $0x1c325c203a0f4466; BYTE $0x02       // pinsrb    xmm11, byte [rdx + rsi + 28], 2
	QUAD $0x1d3274203a0f4466; BYTE $0x02       // pinsrb    xmm14, byte [rdx + rsi + 29], 2
	QUAD $0x021e324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 30], 2
	LONG $0xde0f4566; BYTE $0xf8               // pmaxub    xmm15, xmm8
	LONG $0x740f4566; BYTE $0xf8               // pcmpeqb    xmm15, xmm8
	QUAD $0x000110bddb0f4466; BYTE $0x00       // pand    xmm15, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xde0f4166; BYTE $0xd8               // pmaxub    xmm3, xmm8
	LONG $0x740f4166; BYTE $0xd8               // pcmpeqb    xmm3, xmm8
	QUAD $0x000001209ddb0f66                   // pand    xmm3, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xeb0f4166; BYTE $0xdf               // por    xmm3, xmm15
	QUAD $0x021f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 2
	LONG $0xddeb0f66                           // por    xmm3, xmm5
	QUAD $0x141a74203a0f4266; BYTE $0x03       // pinsrb    xmm6, byte [rdx + r11 + 20], 3
	QUAD $0x04143a74203a0f66                   // pinsrb    xmm6, byte [rdx + rdi + 20], 4
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	QUAD $0x143274203a0f4266; BYTE $0x05       // pinsrb    xmm6, byte [rdx + r14 + 20], 5
	QUAD $0x142a74203a0f4266; BYTE $0x06       // pinsrb    xmm6, byte [rdx + r13 + 20], 6
	LONG $0x24748b4c; BYTE $0x38               // mov    r14, qword [rsp + 56]
	QUAD $0x143274203a0f4266; BYTE $0x07       // pinsrb    xmm6, byte [rdx + r14 + 20], 7
	QUAD $0x141274203a0f4266; BYTE $0x08       // pinsrb    xmm6, byte [rdx + r10 + 20], 8
	QUAD $0x143a74203a0f4266; BYTE $0x09       // pinsrb    xmm6, byte [rdx + r15 + 20], 9
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x0a140274203a0f66                   // pinsrb    xmm6, byte [rdx + rax + 20], 10
	LONG $0x245c8b48; BYTE $0x58               // mov    rbx, qword [rsp + 88]
	QUAD $0x0b141a74203a0f66                   // pinsrb    xmm6, byte [rdx + rbx + 20], 11
	QUAD $0x142274203a0f4266; BYTE $0x0c       // pinsrb    xmm6, byte [rdx + r12 + 20], 12
	LONG $0x24648b4c; BYTE $0x10               // mov    r12, qword [rsp + 16]
	QUAD $0x142274203a0f4266; BYTE $0x0d       // pinsrb    xmm6, byte [rdx + r12 + 20], 13
	QUAD $0x140274203a0f4266; BYTE $0x0e       // pinsrb    xmm6, byte [rdx + r8 + 20], 14
	LONG $0x24748b48; BYTE $0x08               // mov    rsi, qword [rsp + 8]
	QUAD $0x0f143274203a0f66                   // pinsrb    xmm6, byte [rdx + rsi + 20], 15
	QUAD $0x151a64203a0f4266; BYTE $0x03       // pinsrb    xmm4, byte [rdx + r11 + 21], 3
	QUAD $0x04153a64203a0f66                   // pinsrb    xmm4, byte [rdx + rdi + 21], 4
	QUAD $0x150a64203a0f4266; BYTE $0x05       // pinsrb    xmm4, byte [rdx + r9 + 21], 5
	QUAD $0x152a64203a0f4266; BYTE $0x06       // pinsrb    xmm4, byte [rdx + r13 + 21], 6
	QUAD $0x153264203a0f4266; BYTE $0x07       // pinsrb    xmm4, byte [rdx + r14 + 21], 7
	QUAD $0x151264203a0f4266; BYTE $0x08       // pinsrb    xmm4, byte [rdx + r10 + 21], 8
	QUAD $0x153a64203a0f4266; BYTE $0x09       // pinsrb    xmm4, byte [rdx + r15 + 21], 9
	QUAD $0x0a150264203a0f66                   // pinsrb    xmm4, byte [rdx + rax + 21], 10
	QUAD $0x0b151a64203a0f66                   // pinsrb    xmm4, byte [rdx + rbx + 21], 11
	QUAD $0x0c150a64203a0f66                   // pinsrb    xmm4, byte [rdx + rcx + 21], 12
	QUAD $0x152264203a0f4266; BYTE $0x0d       // pinsrb    xmm4, byte [rdx + r12 + 21], 13
	QUAD $0x150264203a0f4266; BYTE $0x0e       // pinsrb    xmm4, byte [rdx + r8 + 21], 14
	QUAD $0x0f153264203a0f66                   // pinsrb    xmm4, byte [rdx + rsi + 21], 15
	QUAD $0x161a7c203a0f4266; BYTE $0x03       // pinsrb    xmm7, byte [rdx + r11 + 22], 3
	QUAD $0x04163a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rdi + 22], 4
	QUAD $0x160a7c203a0f4266; BYTE $0x05       // pinsrb    xmm7, byte [rdx + r9 + 22], 5
	QUAD $0x162a7c203a0f4266; BYTE $0x06       // pinsrb    xmm7, byte [rdx + r13 + 22], 6
	QUAD $0x16327c203a0f4266; BYTE $0x07       // pinsrb    xmm7, byte [rdx + r14 + 22], 7
	QUAD $0x16127c203a0f4266; BYTE $0x08       // pinsrb    xmm7, byte [rdx + r10 + 22], 8
	QUAD $0x163a7c203a0f4266; BYTE $0x09       // pinsrb    xmm7, byte [rdx + r15 + 22], 9
	QUAD $0x0a16027c203a0f66                   // pinsrb    xmm7, byte [rdx + rax + 22], 10
	QUAD $0x0b161a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rbx + 22], 11
	QUAD $0x0c160a7c203a0f66                   // pinsrb    xmm7, byte [rdx + rcx + 22], 12
	QUAD $0x16227c203a0f4266; BYTE $0x0d       // pinsrb    xmm7, byte [rdx + r12 + 22], 13
	QUAD $0x16027c203a0f4266; BYTE $0x0e       // pinsrb    xmm7, byte [rdx + r8 + 22], 14
	QUAD $0x0f16327c203a0f66                   // pinsrb    xmm7, byte [rdx + rsi + 22], 15
	LONG $0xde0f4166; BYTE $0xf0               // pmaxub    xmm6, xmm8
	LONG $0x740f4166; BYTE $0xf0               // pcmpeqb    xmm6, xmm8
	QUAD $0x00000130ad6f0f66                   // movdqa    xmm5, oword 304[rbp] /* [rip + .LCPI11_19] */
	LONG $0xf5db0f66                           // pand    xmm6, xmm5
	LONG $0xde0f4166; BYTE $0xe0               // pmaxub    xmm4, xmm8
	LONG $0x740f4166; BYTE $0xe0               // pcmpeqb    xmm4, xmm8
	QUAD $0x000140bd6f0f4466; BYTE $0x00       // movdqa    xmm15, oword 320[rbp] /* [rip + .LCPI11_20] */
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xe6eb0f66                           // por    xmm4, xmm6
	LONG $0xde0f4166; BYTE $0xf8               // pmaxub    xmm7, xmm8
	LONG $0x740f4166; BYTE $0xf8               // pcmpeqb    xmm7, xmm8
	QUAD $0x00000150b56f0f66                   // movdqa    xmm6, oword 336[rbp] /* [rip + .LCPI11_21] */
	LONG $0xfedb0f66                           // pand    xmm7, xmm6
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	LONG $0xfbeb0f66                           // por    xmm7, xmm3
	QUAD $0x171a54203a0f4266; BYTE $0x03       // pinsrb    xmm2, byte [rdx + r11 + 23], 3
	QUAD $0x04173a54203a0f66                   // pinsrb    xmm2, byte [rdx + rdi + 23], 4
	QUAD $0x170a54203a0f4266; BYTE $0x05       // pinsrb    xmm2, byte [rdx + r9 + 23], 5
	QUAD $0x172a54203a0f4266; BYTE $0x06       // pinsrb    xmm2, byte [rdx + r13 + 23], 6
	QUAD $0x173254203a0f4266; BYTE $0x07       // pinsrb    xmm2, byte [rdx + r14 + 23], 7
	QUAD $0x171254203a0f4266; BYTE $0x08       // pinsrb    xmm2, byte [rdx + r10 + 23], 8
	QUAD $0x173a54203a0f4266; BYTE $0x09       // pinsrb    xmm2, byte [rdx + r15 + 23], 9
	QUAD $0x0a170254203a0f66                   // pinsrb    xmm2, byte [rdx + rax + 23], 10
	QUAD $0x0b171a54203a0f66                   // pinsrb    xmm2, byte [rdx + rbx + 23], 11
	QUAD $0x0c170a54203a0f66                   // pinsrb    xmm2, byte [rdx + rcx + 23], 12
	QUAD $0x172254203a0f4266; BYTE $0x0d       // pinsrb    xmm2, byte [rdx + r12 + 23], 13
	QUAD $0x170254203a0f4266; BYTE $0x0e       // pinsrb    xmm2, byte [rdx + r8 + 23], 14
	QUAD $0x0f173254203a0f66                   // pinsrb    xmm2, byte [rdx + rsi + 23], 15
	LONG $0xde0f4166; BYTE $0xd0               // pmaxub    xmm2, xmm8
	LONG $0x740f4166; BYTE $0xd0               // pcmpeqb    xmm2, xmm8
	LONG $0x5d6f0f66; BYTE $0x60               // movdqa    xmm3, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0xd3db0f66                           // pand    xmm2, xmm3
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0x181a4c203a0f4666; BYTE $0x03       // pinsrb    xmm9, byte [rdx + r11 + 24], 3
	QUAD $0x183a4c203a0f4466; BYTE $0x04       // pinsrb    xmm9, byte [rdx + rdi + 24], 4
	QUAD $0x180a4c203a0f4666; BYTE $0x05       // pinsrb    xmm9, byte [rdx + r9 + 24], 5
	QUAD $0x182a4c203a0f4666; BYTE $0x06       // pinsrb    xmm9, byte [rdx + r13 + 24], 6
	QUAD $0x18324c203a0f4666; BYTE $0x07       // pinsrb    xmm9, byte [rdx + r14 + 24], 7
	QUAD $0x18124c203a0f4666; BYTE $0x08       // pinsrb    xmm9, byte [rdx + r10 + 24], 8
	QUAD $0x183a4c203a0f4666; BYTE $0x09       // pinsrb    xmm9, byte [rdx + r15 + 24], 9
	QUAD $0x18024c203a0f4466; BYTE $0x0a       // pinsrb    xmm9, byte [rdx + rax + 24], 10
	QUAD $0x181a4c203a0f4466; BYTE $0x0b       // pinsrb    xmm9, byte [rdx + rbx + 24], 11
	QUAD $0x180a4c203a0f4466; BYTE $0x0c       // pinsrb    xmm9, byte [rdx + rcx + 24], 12
	QUAD $0x18224c203a0f4666; BYTE $0x0d       // pinsrb    xmm9, byte [rdx + r12 + 24], 13
	QUAD $0x18024c203a0f4666; BYTE $0x0e       // pinsrb    xmm9, byte [rdx + r8 + 24], 14
	QUAD $0x18324c203a0f4466; BYTE $0x0f       // pinsrb    xmm9, byte [rdx + rsi + 24], 15
	LONG $0xde0f4566; BYTE $0xc8               // pmaxub    xmm9, xmm8
	LONG $0x740f4566; BYTE $0xc8               // pcmpeqb    xmm9, xmm8
	QUAD $0x191a64203a0f4666; BYTE $0x03       // pinsrb    xmm12, byte [rdx + r11 + 25], 3
	QUAD $0x193a64203a0f4466; BYTE $0x04       // pinsrb    xmm12, byte [rdx + rdi + 25], 4
	QUAD $0x190a64203a0f4666; BYTE $0x05       // pinsrb    xmm12, byte [rdx + r9 + 25], 5
	QUAD $0x192a64203a0f4666; BYTE $0x06       // pinsrb    xmm12, byte [rdx + r13 + 25], 6
	QUAD $0x193264203a0f4666; BYTE $0x07       // pinsrb    xmm12, byte [rdx + r14 + 25], 7
	QUAD $0x191264203a0f4666; BYTE $0x08       // pinsrb    xmm12, byte [rdx + r10 + 25], 8
	QUAD $0x193a64203a0f4666; BYTE $0x09       // pinsrb    xmm12, byte [rdx + r15 + 25], 9
	QUAD $0x190264203a0f4466; BYTE $0x0a       // pinsrb    xmm12, byte [rdx + rax + 25], 10
	QUAD $0x191a64203a0f4466; BYTE $0x0b       // pinsrb    xmm12, byte [rdx + rbx + 25], 11
	QUAD $0x190a64203a0f4466; BYTE $0x0c       // pinsrb    xmm12, byte [rdx + rcx + 25], 12
	QUAD $0x192264203a0f4666; BYTE $0x0d       // pinsrb    xmm12, byte [rdx + r12 + 25], 13
	QUAD $0x190264203a0f4666; BYTE $0x0e       // pinsrb    xmm12, byte [rdx + r8 + 25], 14
	QUAD $0x193264203a0f4466; BYTE $0x0f       // pinsrb    xmm12, byte [rdx + rsi + 25], 15
	LONG $0xde0f4566; BYTE $0xe0               // pmaxub    xmm12, xmm8
	LONG $0x740f4566; BYTE $0xe0               // pcmpeqb    xmm12, xmm8
	QUAD $0x000100a5db0f4466; BYTE $0x00       // pand    xmm12, oword 256[rbp] /* [rip + .LCPI11_16] */
	LONG $0xf80f4566; BYTE $0xe1               // psubb    xmm12, xmm9
	QUAD $0x1a1a6c203a0f4666; BYTE $0x03       // pinsrb    xmm13, byte [rdx + r11 + 26], 3
	QUAD $0x1a3a6c203a0f4466; BYTE $0x04       // pinsrb    xmm13, byte [rdx + rdi + 26], 4
	QUAD $0x1a0a6c203a0f4666; BYTE $0x05       // pinsrb    xmm13, byte [rdx + r9 + 26], 5
	QUAD $0x1a2a6c203a0f4666; BYTE $0x06       // pinsrb    xmm13, byte [rdx + r13 + 26], 6
	QUAD $0x1a326c203a0f4666; BYTE $0x07       // pinsrb    xmm13, byte [rdx + r14 + 26], 7
	QUAD $0x1a126c203a0f4666; BYTE $0x08       // pinsrb    xmm13, byte [rdx + r10 + 26], 8
	QUAD $0x1a3a6c203a0f4666; BYTE $0x09       // pinsrb    xmm13, byte [rdx + r15 + 26], 9
	QUAD $0x1a026c203a0f4466; BYTE $0x0a       // pinsrb    xmm13, byte [rdx + rax + 26], 10
	QUAD $0x1a1a6c203a0f4466; BYTE $0x0b       // pinsrb    xmm13, byte [rdx + rbx + 26], 11
	QUAD $0x1a0a6c203a0f4466; BYTE $0x0c       // pinsrb    xmm13, byte [rdx + rcx + 26], 12
	QUAD $0x1a226c203a0f4666; BYTE $0x0d       // pinsrb    xmm13, byte [rdx + r12 + 26], 13
	QUAD $0x1a026c203a0f4666; BYTE $0x0e       // pinsrb    xmm13, byte [rdx + r8 + 26], 14
	QUAD $0x1a326c203a0f4466; BYTE $0x0f       // pinsrb    xmm13, byte [rdx + rsi + 26], 15
	QUAD $0x1b1a54203a0f4666; BYTE $0x03       // pinsrb    xmm10, byte [rdx + r11 + 27], 3
	QUAD $0x1b3a54203a0f4466; BYTE $0x04       // pinsrb    xmm10, byte [rdx + rdi + 27], 4
	QUAD $0x1b0a54203a0f4666; BYTE $0x05       // pinsrb    xmm10, byte [rdx + r9 + 27], 5
	QUAD $0x1b2a54203a0f4666; BYTE $0x06       // pinsrb    xmm10, byte [rdx + r13 + 27], 6
	QUAD $0x1b3254203a0f4666; BYTE $0x07       // pinsrb    xmm10, byte [rdx + r14 + 27], 7
	QUAD $0x1b1254203a0f4666; BYTE $0x08       // pinsrb    xmm10, byte [rdx + r10 + 27], 8
	QUAD $0x1b3a54203a0f4666; BYTE $0x09       // pinsrb    xmm10, byte [rdx + r15 + 27], 9
	QUAD $0x1b0254203a0f4466; BYTE $0x0a       // pinsrb    xmm10, byte [rdx + rax + 27], 10
	QUAD $0x1b1a54203a0f4466; BYTE $0x0b       // pinsrb    xmm10, byte [rdx + rbx + 27], 11
	QUAD $0x1b0a54203a0f4466; BYTE $0x0c       // pinsrb    xmm10, byte [rdx + rcx + 27], 12
	QUAD $0x1b2254203a0f4666; BYTE $0x0d       // pinsrb    xmm10, byte [rdx + r12 + 27], 13
	QUAD $0x1b0254203a0f4666; BYTE $0x0e       // pinsrb    xmm10, byte [rdx + r8 + 27], 14
	QUAD $0x1b3254203a0f4466; BYTE $0x0f       // pinsrb    xmm10, byte [rdx + rsi + 27], 15
	LONG $0xde0f4566; BYTE $0xe8               // pmaxub    xmm13, xmm8
	LONG $0x740f4566; BYTE $0xe8               // pcmpeqb    xmm13, xmm8
	QUAD $0x000110addb0f4466; BYTE $0x00       // pand    xmm13, oword 272[rbp] /* [rip + .LCPI11_17] */
	LONG $0xde0f4566; BYTE $0xd0               // pmaxub    xmm10, xmm8
	LONG $0x740f4566; BYTE $0xd0               // pcmpeqb    xmm10, xmm8
	QUAD $0x00012095db0f4466; BYTE $0x00       // pand    xmm10, oword 288[rbp] /* [rip + .LCPI11_18] */
	LONG $0xeb0f4566; BYTE $0xd5               // por    xmm10, xmm13
	LONG $0xeb0f4566; BYTE $0xd4               // por    xmm10, xmm12
	QUAD $0x1c1a5c203a0f4666; BYTE $0x03       // pinsrb    xmm11, byte [rdx + r11 + 28], 3
	QUAD $0x1d1a74203a0f4666; BYTE $0x03       // pinsrb    xmm14, byte [rdx + r11 + 29], 3
	QUAD $0x1e1a4c203a0f4266; BYTE $0x03       // pinsrb    xmm1, byte [rdx + r11 + 30], 3
	QUAD $0x1f1a44203a0f4266; BYTE $0x03       // pinsrb    xmm0, byte [rdx + r11 + 31], 3
	QUAD $0x1c3a5c203a0f4466; BYTE $0x04       // pinsrb    xmm11, byte [rdx + rdi + 28], 4
	QUAD $0x1d3a74203a0f4466; BYTE $0x04       // pinsrb    xmm14, byte [rdx + rdi + 29], 4
	QUAD $0x041e3a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rdi + 30], 4
	QUAD $0x041f3a44203a0f66                   // pinsrb    xmm0, byte [rdx + rdi + 31], 4
	QUAD $0x1c0a5c203a0f4666; BYTE $0x05       // pinsrb    xmm11, byte [rdx + r9 + 28], 5
	QUAD $0x1d0a74203a0f4666; BYTE $0x05       // pinsrb    xmm14, byte [rdx + r9 + 29], 5
	QUAD $0x1e0a4c203a0f4266; BYTE $0x05       // pinsrb    xmm1, byte [rdx + r9 + 30], 5
	QUAD $0x1f0a44203a0f4266; BYTE $0x05       // pinsrb    xmm0, byte [rdx + r9 + 31], 5
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x1c2a5c203a0f4666; BYTE $0x06       // pinsrb    xmm11, byte [rdx + r13 + 28], 6
	QUAD $0x1d2a74203a0f4666; BYTE $0x06       // pinsrb    xmm14, byte [rdx + r13 + 29], 6
	QUAD $0x1e2a4c203a0f4266; BYTE $0x06       // pinsrb    xmm1, byte [rdx + r13 + 30], 6
	QUAD $0x1f2a44203a0f4266; BYTE $0x06       // pinsrb    xmm0, byte [rdx + r13 + 31], 6
	WORD $0x894c; BYTE $0xf0                   // mov    rax, r14
	QUAD $0x1c325c203a0f4666; BYTE $0x07       // pinsrb    xmm11, byte [rdx + r14 + 28], 7
	QUAD $0x1d3274203a0f4666; BYTE $0x07       // pinsrb    xmm14, byte [rdx + r14 + 29], 7
	QUAD $0x1e324c203a0f4266; BYTE $0x07       // pinsrb    xmm1, byte [rdx + r14 + 30], 7
	QUAD $0x1f3244203a0f4266; BYTE $0x07       // pinsrb    xmm0, byte [rdx + r14 + 31], 7
	QUAD $0x1c125c203a0f4666; BYTE $0x08       // pinsrb    xmm11, byte [rdx + r10 + 28], 8
	QUAD $0x1d1274203a0f4666; BYTE $0x08       // pinsrb    xmm14, byte [rdx + r10 + 29], 8
	QUAD $0x1e124c203a0f4266; BYTE $0x08       // pinsrb    xmm1, byte [rdx + r10 + 30], 8
	QUAD $0x1f1244203a0f4266; BYTE $0x08       // pinsrb    xmm0, byte [rdx + r10 + 31], 8
	LONG $0x24448b48; BYTE $0x60               // mov    rax, qword [rsp + 96]
	QUAD $0x1c025c203a0f4466; BYTE $0x09       // pinsrb    xmm11, byte [rdx + rax + 28], 9
	QUAD $0x1d0274203a0f4466; BYTE $0x09       // pinsrb    xmm14, byte [rdx + rax + 29], 9
	QUAD $0x091e024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 30], 9
	QUAD $0x091f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 31], 9
	LONG $0x24448b48; BYTE $0x40               // mov    rax, qword [rsp + 64]
	QUAD $0x1c025c203a0f4466; BYTE $0x0a       // pinsrb    xmm11, byte [rdx + rax + 28], 10
	QUAD $0x1d0274203a0f4466; BYTE $0x0a       // pinsrb    xmm14, byte [rdx + rax + 29], 10
	QUAD $0x0a1e024c203a0f66                   // pinsrb    xmm1, byte [rdx + rax + 30], 10
	QUAD $0x0a1f0244203a0f66                   // pinsrb    xmm0, byte [rdx + rax + 31], 10
	WORD $0x8948; BYTE $0xd8                   // mov    rax, rbx
	QUAD $0x1c1a5c203a0f4466; BYTE $0x0b       // pinsrb    xmm11, byte [rdx + rbx + 28], 11
	QUAD $0x1d1a74203a0f4466; BYTE $0x0b       // pinsrb    xmm14, byte [rdx + rbx + 29], 11
	QUAD $0x0b1e1a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rbx + 30], 11
	QUAD $0x0b1f1a44203a0f66                   // pinsrb    xmm0, byte [rdx + rbx + 31], 11
	QUAD $0x1c0a5c203a0f4466; BYTE $0x0c       // pinsrb    xmm11, byte [rdx + rcx + 28], 12
	QUAD $0x1d0a74203a0f4466; BYTE $0x0c       // pinsrb    xmm14, byte [rdx + rcx + 29], 12
	QUAD $0x0c1e0a4c203a0f66                   // pinsrb    xmm1, byte [rdx + rcx + 30], 12
	QUAD $0x0c1f0a44203a0f66                   // pinsrb    xmm0, byte [rdx + rcx + 31], 12
	WORD $0x894c; BYTE $0xe0                   // mov    rax, r12
	QUAD $0x1c225c203a0f4666; BYTE $0x0d       // pinsrb    xmm11, byte [rdx + r12 + 28], 13
	QUAD $0x1d2274203a0f4666; BYTE $0x0d       // pinsrb    xmm14, byte [rdx + r12 + 29], 13
	QUAD $0x1e224c203a0f4266; BYTE $0x0d       // pinsrb    xmm1, byte [rdx + r12 + 30], 13
	QUAD $0x1f2244203a0f4266; BYTE $0x0d       // pinsrb    xmm0, byte [rdx + r12 + 31], 13
	WORD $0x894c; BYTE $0xc0                   // mov    rax, r8
	QUAD $0x1c025c203a0f4666; BYTE $0x0e       // pinsrb    xmm11, byte [rdx + r8 + 28], 14
	QUAD $0x1d0274203a0f4666; BYTE $0x0e       // pinsrb    xmm14, byte [rdx + r8 + 29], 14
	QUAD $0x1e024c203a0f4266; BYTE $0x0e       // pinsrb    xmm1, byte [rdx + r8 + 30], 14
	QUAD $0x1f0244203a0f4266; BYTE $0x0e       // pinsrb    xmm0, byte [rdx + r8 + 31], 14
	WORD $0x8948; BYTE $0xf0                   // mov    rax, rsi
	QUAD $0x1c325c203a0f4466; BYTE $0x0f       // pinsrb    xmm11, byte [rdx + rsi + 28], 15
	QUAD $0x1d3274203a0f4466; BYTE $0x0f       // pinsrb    xmm14, byte [rdx + rsi + 29], 15
	QUAD $0x0f1e324c203a0f66                   // pinsrb    xmm1, byte [rdx + rsi + 30], 15
	QUAD $0x0f1f3244203a0f66                   // pinsrb    xmm0, byte [rdx + rsi + 31], 15
	LONG $0xde0f4566; BYTE $0xd8               // pmaxub    xmm11, xmm8
	LONG $0x740f4566; BYTE $0xd8               // pcmpeqb    xmm11, xmm8
	LONG $0xdb0f4466; BYTE $0xdd               // pand    xmm11, xmm5
	LONG $0xde0f4566; BYTE $0xf0               // pmaxub    xmm14, xmm8
	LONG $0x740f4566; BYTE $0xf0               // pcmpeqb    xmm14, xmm8
	LONG $0xdb0f4566; BYTE $0xf7               // pand    xmm14, xmm15
	LONG $0xeb0f4566; BYTE $0xf3               // por    xmm14, xmm11
	LONG $0xde0f4166; BYTE $0xc8               // pmaxub    xmm1, xmm8
	LONG $0x740f4166; BYTE $0xc8               // pcmpeqb    xmm1, xmm8
	LONG $0xcedb0f66                           // pand    xmm1, xmm6
	LONG $0xeb0f4166; BYTE $0xce               // por    xmm1, xmm14
	LONG $0xeb0f4166; BYTE $0xca               // por    xmm1, xmm10
	LONG $0xde0f4166; BYTE $0xc0               // pmaxub    xmm0, xmm8
	LONG $0x740f4166; BYTE $0xc0               // pcmpeqb    xmm0, xmm8
	LONG $0xc3db0f66                           // pand    xmm0, xmm3
	LONG $0xc1eb0f66                           // por    xmm0, xmm1
	LONG $0xca6f0f66                           // movdqa    xmm1, xmm2
	LONG $0xc8600f66                           // punpcklbw    xmm1, xmm0
	QUAD $0x0000d024ac6f0f66; BYTE $0x00       // movdqa    xmm5, oword [rsp + 208]
	LONG $0xdd6f0f66                           // movdqa    xmm3, xmm5
	QUAD $0x0000b024b46f0f66; BYTE $0x00       // movdqa    xmm6, oword [rsp + 176]
	LONG $0xde600f66                           // punpcklbw    xmm3, xmm6
	LONG $0xe36f0f66                           // movdqa    xmm4, xmm3
	LONG $0xe1610f66                           // punpcklwd    xmm4, xmm1
	LONG $0xd9690f66                           // punpckhwd    xmm3, xmm1
	LONG $0xd0680f66                           // punpckhbw    xmm2, xmm0
	LONG $0xee680f66                           // punpckhbw    xmm5, xmm6
	LONG $0xc56f0f66                           // movdqa    xmm0, xmm5
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0xea690f66                           // punpckhwd    xmm5, xmm2
	QUAD $0x00000080248c8b48                   // mov    rcx, qword [rsp + 128]
	LONG $0x7f0f41f3; WORD $0x8f6c; BYTE $0x30 // movdqu    oword [r15 + 4*rcx + 48], xmm5
	LONG $0x7f0f41f3; WORD $0x8f44; BYTE $0x20 // movdqu    oword [r15 + 4*rcx + 32], xmm0
	LONG $0x7f0f41f3; WORD $0x8f5c; BYTE $0x10 // movdqu    oword [r15 + 4*rcx + 16], xmm3
	LONG $0x7f0f41f3; WORD $0x8f24             // movdqu    oword [r15 + 4*rcx], xmm4
	LONG $0x10c18348                           // add    rcx, 16
	WORD $0x8948; BYTE $0xc8                   // mov    rax, rcx
	QUAD $0x000000c0248c3b48                   // cmp    rcx, qword [rsp + 192]
	JNE  LBB11_67
	QUAD $0x000000f824948b4c                   // mov    r10, qword [rsp + 248]
	QUAD $0x000000c024943b4c                   // cmp    r10, qword [rsp + 192]
	LONG $0x24348a44                           // mov    r14b, byte [rsp]
	QUAD $0x0000012024ac8b4c                   // mov    r13, qword [rsp + 288]
	QUAD $0x0000011824948b48                   // mov    rdx, qword [rsp + 280]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	JNE  LBB11_69
	JMP  LBB11_72

LBB11_124:
	LONG $0xf8e28349               // and    r10, -8
	WORD $0x894c; BYTE $0xd0       // mov    rax, r10
	LONG $0x06e0c148               // shl    rax, 6
	WORD $0x0148; BYTE $0xd0       // add    rax, rdx
	LONG $0x24448948; BYTE $0x30   // mov    qword [rsp + 48], rax
	LONG $0x2454894c; BYTE $0x20   // mov    qword [rsp + 32], r10
	LONG $0x97048d4b               // lea    rax, [r15 + 4*r10]
	LONG $0x24448948; BYTE $0x38   // mov    qword [rsp + 56], rax
	LONG $0x6e0f4166; BYTE $0xc6   // movd    xmm0, r14d
	LONG $0xc0700ff2; BYTE $0xe0   // pshuflw    xmm0, xmm0, 224
	LONG $0x700f4466; WORD $0x00d8 // pshufd    xmm11, xmm0, 0
	WORD $0x3145; BYTE $0xf6       // xor    r14d, r14d
	LONG $0x247c894c; BYTE $0x78   // mov    qword [rsp + 120], r15
	LONG $0xef0f4566; BYTE $0xff   // pxor    xmm15, xmm15

LBB11_125:
	LONG $0x2474894c; BYTE $0x10               // mov    qword [rsp + 16], r14
	LONG $0x06e6c149                           // shl    r14, 6
	WORD $0x894c; BYTE $0xf7                   // mov    rdi, r14
	WORD $0x894d; BYTE $0xf7                   // mov    r15, r14
	WORD $0x894d; BYTE $0xf4                   // mov    r12, r14
	WORD $0x894d; BYTE $0xf5                   // mov    r13, r14
	WORD $0x894c; BYTE $0xf3                   // mov    rbx, r14
	WORD $0x894d; BYTE $0xf1                   // mov    r9, r14
	LONG $0x04b70f42; BYTE $0x32               // movzx    eax, word [rdx + r14]
	LONG $0xe86e0f66                           // movd    xmm5, eax
	LONG $0x44b70f42; WORD $0x0232             // movzx    eax, word [rdx + r14 + 2]
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44b70f42; WORD $0x0432             // movzx    eax, word [rdx + r14 + 4]
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x44b70f42; WORD $0x0632             // movzx    eax, word [rdx + r14 + 6]
	LONG $0xf86e0f66                           // movd    xmm7, eax
	LONG $0x44b70f42; WORD $0x0832             // movzx    eax, word [rdx + r14 + 8]
	LONG $0x6e0f4466; BYTE $0xc0               // movd    xmm8, eax
	LONG $0x44b70f42; WORD $0x0a32             // movzx    eax, word [rdx + r14 + 10]
	LONG $0xe06e0f66                           // movd    xmm4, eax
	LONG $0x44b70f42; WORD $0x0c32             // movzx    eax, word [rdx + r14 + 12]
	LONG $0x74b70f42; WORD $0x0e32             // movzx    esi, word [rdx + r14 + 14]
	LONG $0x4cb70f42; WORD $0x1032             // movzx    ecx, word [rdx + r14 + 16]
	LONG $0x18244c89                           // mov    dword [rsp + 24], ecx
	LONG $0x54b70f46; WORD $0x1232             // movzx    r10d, word [rdx + r14 + 18]
	LONG $0x5cb70f46; WORD $0x1432             // movzx    r11d, word [rdx + r14 + 20]
	WORD $0x894c; BYTE $0xf1                   // mov    rcx, r14
	LONG $0x40c98348                           // or    rcx, 64
	LONG $0x80cf8148; WORD $0x0000; BYTE $0x00 // or    rdi, 128
	LONG $0xc0cf8149; WORD $0x0000; BYTE $0x00 // or    r15, 192
	LONG $0x00cc8149; WORD $0x0001; BYTE $0x00 // or    r12, 256
	LONG $0x40cd8149; WORD $0x0001; BYTE $0x00 // or    r13, 320
	LONG $0x80cb8148; WORD $0x0001; BYTE $0x00 // or    rbx, 384
	LONG $0x2cc40f66; WORD $0x010a             // pinsrw    xmm5, word [rdx + rcx], 1
	LONG $0x2cc40f66; WORD $0x023a             // pinsrw    xmm5, word [rdx + rdi], 2
	LONG $0xc40f4266; WORD $0x3a2c; BYTE $0x03 // pinsrw    xmm5, word [rdx + r15], 3
	LONG $0xc40f4266; WORD $0x222c; BYTE $0x04 // pinsrw    xmm5, word [rdx + r12], 4
	LONG $0xc40f4266; WORD $0x2a2c; BYTE $0x05 // pinsrw    xmm5, word [rdx + r13], 5
	LONG $0x2cc40f66; WORD $0x061a             // pinsrw    xmm5, word [rdx + rbx], 6
	LONG $0x44c40f66; WORD $0x020a; BYTE $0x01 // pinsrw    xmm0, word [rdx + rcx + 2], 1
	LONG $0x44c40f66; WORD $0x023a; BYTE $0x02 // pinsrw    xmm0, word [rdx + rdi + 2], 2
	QUAD $0x03023a44c40f4266                   // pinsrw    xmm0, word [rdx + r15 + 2], 3
	QUAD $0x04022244c40f4266                   // pinsrw    xmm0, word [rdx + r12 + 2], 4
	QUAD $0x05022a44c40f4266                   // pinsrw    xmm0, word [rdx + r13 + 2], 5
	LONG $0x44c40f66; WORD $0x021a; BYTE $0x06 // pinsrw    xmm0, word [rdx + rbx + 2], 6
	LONG $0xc0c98149; WORD $0x0001; BYTE $0x00 // or    r9, 448
	QUAD $0x07020a44c40f4266                   // pinsrw    xmm0, word [rdx + r9 + 2], 7
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x44b70f42; WORD $0x1632             // movzx    eax, word [rdx + r14 + 22]
	LONG $0x08244489                           // mov    dword [rsp + 8], eax
	LONG $0x650f4166; BYTE $0xc3               // pcmpgtw    xmm0, xmm11
	LONG $0x4cc40f66; WORD $0x040a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 4], 1
	LONG $0x4cc40f66; WORD $0x043a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 4], 2
	QUAD $0x03043a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 4], 3
	QUAD $0x0404224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 4], 4
	QUAD $0x05042a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 4], 5
	LONG $0x4cc40f66; WORD $0x041a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 4], 6
	QUAD $0x07040a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 4], 7
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	QUAD $0x0000808d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 128[rbp] /* [rip + .LCPI11_8] */
	LONG $0x6f0f4166; BYTE $0xd9               // movdqa    xmm3, xmm9
	LONG $0x380f4166; WORD $0xdf10             // pblendvb    xmm3, xmm15, xmm0
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x00000090856f0f66                   // movdqa    xmm0, oword 144[rbp] /* [rip + .LCPI11_9] */
	LONG $0xf06f0f66                           // movdqa    xmm6, xmm0
	LONG $0x6f0f4466; BYTE $0xf0               // movdqa    xmm14, xmm0
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x44b70f46; WORD $0x1832             // movzx    r8d, word [rdx + r14 + 24]
	LONG $0xc40f4266; WORD $0x0a2c; BYTE $0x07 // pinsrw    xmm5, word [rdx + r9], 7
	LONG $0x650f4166; BYTE $0xeb               // pcmpgtw    xmm5, xmm11
	LONG $0xc0760f66                           // pcmpeqd    xmm0, xmm0
	LONG $0xe8ef0f66                           // pxor    xmm5, xmm0
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x7cc40f66; WORD $0x060a; BYTE $0x01 // pinsrw    xmm7, word [rdx + rcx + 6], 1
	LONG $0x7cc40f66; WORD $0x063a; BYTE $0x02 // pinsrw    xmm7, word [rdx + rdi + 6], 2
	QUAD $0x03063a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 6], 3
	QUAD $0x0406227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 6], 4
	QUAD $0x05062a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 6], 5
	LONG $0x7cc40f66; WORD $0x061a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rbx + 6], 6
	QUAD $0x07060a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 6], 7
	LONG $0x650f4166; BYTE $0xfb               // pcmpgtw    xmm7, xmm11
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x01080a44c40f4466                   // pinsrw    xmm8, word [rdx + rcx + 8], 1
	QUAD $0x02083a44c40f4466                   // pinsrw    xmm8, word [rdx + rdi + 8], 2
	QUAD $0x03083a44c40f4666                   // pinsrw    xmm8, word [rdx + r15 + 8], 3
	QUAD $0x04082244c40f4666                   // pinsrw    xmm8, word [rdx + r12 + 8], 4
	QUAD $0x05082a44c40f4666                   // pinsrw    xmm8, word [rdx + r13 + 8], 5
	QUAD $0x06081a44c40f4466                   // pinsrw    xmm8, word [rdx + rbx + 8], 6
	QUAD $0x07080a44c40f4666                   // pinsrw    xmm8, word [rdx + r9 + 8], 7
	LONG $0xddf80f66                           // psubb    xmm3, xmm5
	QUAD $0x0000a0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 160[rbp] /* [rip + .LCPI11_10] */
	LONG $0xc76f0f66                           // movdqa    xmm0, xmm7
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x44b70f42; WORD $0x1a32             // movzx    eax, word [rdx + r14 + 26]
	LONG $0x650f4566; BYTE $0xc3               // pcmpgtw    xmm8, xmm11
	LONG $0x630f4566; BYTE $0xc0               // packsswb    xmm8, xmm8
	LONG $0xeb0f4466; BYTE $0xe6               // por    xmm12, xmm6
	QUAD $0x0000b0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 176[rbp] /* [rip + .LCPI11_11] */
	LONG $0x6f0f4166; BYTE $0xc0               // movdqa    xmm0, xmm8
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xf2               // movd    xmm6, r10d
	LONG $0x54b70f46; WORD $0x1c32             // movzx    r10d, word [rdx + r14 + 28]
	LONG $0x64c40f66; WORD $0x0a0a; BYTE $0x01 // pinsrw    xmm4, word [rdx + rcx + 10], 1
	LONG $0x64c40f66; WORD $0x0a3a; BYTE $0x02 // pinsrw    xmm4, word [rdx + rdi + 10], 2
	QUAD $0x030a3a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 10], 3
	QUAD $0x040a2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 10], 4
	QUAD $0x050a2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 10], 5
	LONG $0x64c40f66; WORD $0x0a1a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rbx + 10], 6
	QUAD $0x070a0a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 10], 7
	LONG $0x650f4166; BYTE $0xe3               // pcmpgtw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0x54c40f66; WORD $0x0c0a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 12], 1
	LONG $0x54c40f66; WORD $0x0c3a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 12], 2
	QUAD $0x030c3a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 12], 3
	QUAD $0x040c2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 12], 4
	QUAD $0x050c2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 12], 5
	LONG $0x54c40f66; WORD $0x0c1a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 12], 6
	LONG $0xeb0f4466; BYTE $0xe3               // por    xmm12, xmm3
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI11_12] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x74b70f42; WORD $0x1e32             // movzx    esi, word [rdx + r14 + 30]
	LONG $0x28247489                           // mov    dword [rsp + 40], esi
	QUAD $0x070c0a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 12], 7
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x0000d0ad6f0f4466; BYTE $0x00       // movdqa    xmm13, oword 208[rbp] /* [rip + .LCPI11_13] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x0824             // movd    xmm3, dword [rsp + 8]
	LONG $0x74b70f42; WORD $0x2032             // movzx    esi, word [rdx + r14 + 32]
	LONG $0x18247489                           // mov    dword [rsp + 24], esi
	LONG $0x4cc40f66; WORD $0x0e0a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 14], 1
	LONG $0x4cc40f66; WORD $0x0e3a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 14], 2
	QUAD $0x030e3a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 14], 3
	QUAD $0x040e224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 14], 4
	QUAD $0x050e2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 14], 5
	LONG $0x4cc40f66; WORD $0x0e1a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 14], 6
	LONG $0xeb0f4466; BYTE $0xed               // por    xmm13, xmm5
	LONG $0x6e0f4166; BYTE $0xd0               // movd    xmm2, r8d
	LONG $0x74b70f42; WORD $0x2232             // movzx    esi, word [rdx + r14 + 34]
	LONG $0x08247489                           // mov    dword [rsp + 8], esi
	QUAD $0x070e0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 14], 7
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0x74c40f66; WORD $0x120a; BYTE $0x01 // pinsrw    xmm6, word [rdx + rcx + 18], 1
	LONG $0x74c40f66; WORD $0x123a; BYTE $0x02 // pinsrw    xmm6, word [rdx + rdi + 18], 2
	QUAD $0x03123a74c40f4266                   // pinsrw    xmm6, word [rdx + r15 + 18], 3
	QUAD $0x04122274c40f4266                   // pinsrw    xmm6, word [rdx + r12 + 18], 4
	QUAD $0x05122a74c40f4266                   // pinsrw    xmm6, word [rdx + r13 + 18], 5
	LONG $0x74c40f66; WORD $0x121a; BYTE $0x06 // pinsrw    xmm6, word [rdx + rbx + 18], 6
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	QUAD $0x07120a74c40f4266                   // pinsrw    xmm6, word [rdx + r9 + 18], 7
	LONG $0x650f4166; BYTE $0xf3               // pcmpgtw    xmm6, xmm11
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xeb0f4566; BYTE $0xec               // por    xmm13, xmm12
	QUAD $0x0000e0a56f0f4466; BYTE $0x00       // movdqa    xmm12, oword 224[rbp] /* [rip + .LCPI11_14] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4566; WORD $0xe710             // pblendvb    xmm12, xmm15, xmm0
	LONG $0x6f0f4566; BYTE $0xc1               // movdqa    xmm8, xmm9
	LONG $0xc66f0f66                           // movdqa    xmm0, xmm6
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x5cb70f46; WORD $0x2432             // movzx    r11d, word [rdx + r14 + 36]
	LONG $0x7cc40f66; WORD $0x100a; BYTE $0x01 // pinsrw    xmm7, word [rdx + rcx + 16], 1
	LONG $0x7cc40f66; WORD $0x103a; BYTE $0x02 // pinsrw    xmm7, word [rdx + rdi + 16], 2
	QUAD $0x03103a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 16], 3
	QUAD $0x0410227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 16], 4
	QUAD $0x05102a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 16], 5
	LONG $0x7cc40f66; WORD $0x101a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rbx + 16], 6
	LONG $0x64c40f66; WORD $0x140a; BYTE $0x01 // pinsrw    xmm4, word [rdx + rcx + 20], 1
	LONG $0x64c40f66; WORD $0x143a; BYTE $0x02 // pinsrw    xmm4, word [rdx + rdi + 20], 2
	QUAD $0x03143a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 20], 3
	QUAD $0x04142264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 20], 4
	QUAD $0x05142a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 20], 5
	LONG $0x64c40f66; WORD $0x141a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rbx + 20], 6
	QUAD $0x07140a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 20], 7
	LONG $0x650f4166; BYTE $0xe3               // pcmpgtw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4566; BYTE $0xe5               // por    xmm12, xmm13
	LONG $0x6f0f4166; BYTE $0xee               // movdqa    xmm5, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe2               // movd    xmm4, r10d
	LONG $0x74b70f42; WORD $0x2632             // movzx    esi, word [rdx + r14 + 38]
	QUAD $0x07100a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 16], 7
	LONG $0x650f4166; BYTE $0xfb               // pcmpgtw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI11_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x5cc40f66; WORD $0x160a; BYTE $0x01 // pinsrw    xmm3, word [rdx + rcx + 22], 1
	LONG $0x5cc40f66; WORD $0x163a; BYTE $0x02 // pinsrw    xmm3, word [rdx + rdi + 22], 2
	QUAD $0x03163a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 22], 3
	QUAD $0x0416225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 22], 4
	QUAD $0x05162a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 22], 5
	LONG $0x5cc40f66; WORD $0x161a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rbx + 22], 6
	QUAD $0x07160a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 22], 7
	LONG $0x650f4166; BYTE $0xdb               // pcmpgtw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x54c40f66; WORD $0x180a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 24], 1
	LONG $0x54c40f66; WORD $0x183a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 24], 2
	QUAD $0x03183a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 24], 3
	QUAD $0x04182254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 24], 4
	QUAD $0x05182a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 24], 5
	LONG $0x54c40f66; WORD $0x181a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 24], 6
	QUAD $0x07180a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 24], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	QUAD $0x0000a0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 160[rbp] /* [rip + .LCPI11_10] */
	LONG $0x6f0f4566; BYTE $0xf2               // movdqa    xmm14, xmm10
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0x5c6e0f66; WORD $0x2824             // movd    xmm3, dword [rsp + 40]
	LONG $0x44b70f42; WORD $0x2832             // movzx    eax, word [rdx + r14 + 40]
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4466; BYTE $0xf5               // por    xmm14, xmm5
	QUAD $0x0000b08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 176[rbp] /* [rip + .LCPI11_11] */
	LONG $0x6f0f4566; BYTE $0xe9               // movdqa    xmm13, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	LONG $0x7c6e0f66; WORD $0x1824             // movd    xmm7, dword [rsp + 24]
	LONG $0x54b70f46; WORD $0x2a32             // movzx    r10d, word [rdx + r14 + 42]
	LONG $0x4cc40f66; WORD $0x1a0a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 26], 1
	LONG $0x4cc40f66; WORD $0x1a3a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 26], 2
	QUAD $0x031a3a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 26], 3
	QUAD $0x041a224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 26], 4
	QUAD $0x051a2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 26], 5
	LONG $0x4cc40f66; WORD $0x1a1a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 26], 6
	QUAD $0x071a0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 26], 7
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x64c40f66; WORD $0x1c0a; BYTE $0x01 // pinsrw    xmm4, word [rdx + rcx + 28], 1
	LONG $0x64c40f66; WORD $0x1c3a; BYTE $0x02 // pinsrw    xmm4, word [rdx + rdi + 28], 2
	QUAD $0x031c3a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 28], 3
	QUAD $0x041c2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 28], 4
	QUAD $0x051c2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 28], 5
	LONG $0x64c40f66; WORD $0x1c1a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rbx + 28], 6
	LONG $0xeb0f4566; BYTE $0xf0               // por    xmm14, xmm8
	QUAD $0x000000c0ad6f0f66                   // movdqa    xmm5, oword 192[rbp] /* [rip + .LCPI11_12] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x546e0f66; WORD $0x0824             // movd    xmm2, dword [rsp + 8]
	LONG $0x44b70f46; WORD $0x2c32             // movzx    r8d, word [rdx + r14 + 44]
	QUAD $0x071c0a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 28], 7
	LONG $0x650f4166; BYTE $0xe3               // pcmpgtw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4166; BYTE $0xed               // por    xmm5, xmm13
	QUAD $0x000000d0b56f0f66                   // movdqa    xmm6, oword 208[rbp] /* [rip + .LCPI11_13] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x5cb70f46; WORD $0x2e32             // movzx    r11d, word [rdx + r14 + 46]
	LONG $0x5cc40f66; WORD $0x1e0a; BYTE $0x01 // pinsrw    xmm3, word [rdx + rcx + 30], 1
	LONG $0x5cc40f66; WORD $0x1e3a; BYTE $0x02 // pinsrw    xmm3, word [rdx + rdi + 30], 2
	QUAD $0x031e3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 30], 3
	QUAD $0x041e225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 30], 4
	QUAD $0x051e2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 30], 5
	LONG $0x5cc40f66; WORD $0x1e1a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rbx + 30], 6
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x74b70f42; WORD $0x3032             // movzx    esi, word [rdx + r14 + 48]
	LONG $0x08247489                           // mov    dword [rsp + 8], esi
	QUAD $0x071e0a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 30], 7
	LONG $0x650f4166; BYTE $0xdb               // pcmpgtw    xmm3, xmm11
	LONG $0x54c40f66; WORD $0x220a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 34], 1
	LONG $0x54c40f66; WORD $0x223a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 34], 2
	QUAD $0x03223a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 34], 3
	QUAD $0x04222254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 34], 4
	QUAD $0x05222a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 34], 5
	LONG $0x54c40f66; WORD $0x221a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 34], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07220a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 34], 7
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeb0f4166; BYTE $0xf6               // por    xmm6, xmm14
	QUAD $0x0000e0b56f0f4466; BYTE $0x00       // movdqa    xmm14, oword 224[rbp] /* [rip + .LCPI11_14] */
	LONG $0x6f0f4566; BYTE $0xee               // movdqa    xmm13, xmm14
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xef10             // pblendvb    xmm13, xmm15, xmm0
	QUAD $0x000080856f0f4466; BYTE $0x00       // movdqa    xmm8, oword 128[rbp] /* [rip + .LCPI11_8] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0xd06e0f66                           // movd    xmm2, eax
	LONG $0x74b70f42; WORD $0x3232             // movzx    esi, word [rdx + r14 + 50]
	LONG $0x7cc40f66; WORD $0x200a; BYTE $0x01 // pinsrw    xmm7, word [rdx + rcx + 32], 1
	LONG $0x7cc40f66; WORD $0x203a; BYTE $0x02 // pinsrw    xmm7, word [rdx + rdi + 32], 2
	QUAD $0x03203a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 32], 3
	QUAD $0x0420227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 32], 4
	QUAD $0x05202a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 32], 5
	LONG $0x7cc40f66; WORD $0x201a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rbx + 32], 6
	LONG $0x64c40f66; WORD $0x240a; BYTE $0x01 // pinsrw    xmm4, word [rdx + rcx + 36], 1
	LONG $0x64c40f66; WORD $0x243a; BYTE $0x02 // pinsrw    xmm4, word [rdx + rdi + 36], 2
	QUAD $0x03243a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 36], 3
	QUAD $0x04242264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 36], 4
	QUAD $0x05242a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 36], 5
	LONG $0x64c40f66; WORD $0x241a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rbx + 36], 6
	QUAD $0x07240a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 36], 7
	LONG $0x650f4166; BYTE $0xe3               // pcmpgtw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xeb0f4466; BYTE $0xee               // por    xmm13, xmm6
	QUAD $0x00000090b56f0f66                   // movdqa    xmm6, oword 144[rbp] /* [rip + .LCPI11_9] */
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xda               // movd    xmm3, r10d
	LONG $0x54b70f46; WORD $0x3432             // movzx    r10d, word [rdx + r14 + 52]
	QUAD $0x07200a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 32], 7
	LONG $0x650f4166; BYTE $0xfb               // pcmpgtw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI11_22] */
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x4cc40f66; WORD $0x260a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 38], 1
	LONG $0x4cc40f66; WORD $0x263a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 38], 2
	QUAD $0x03263a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 38], 3
	QUAD $0x0426224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 38], 4
	QUAD $0x05262a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 38], 5
	LONG $0x4cc40f66; WORD $0x261a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 38], 6
	QUAD $0x07260a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 38], 7
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x54c40f66; WORD $0x280a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 40], 1
	LONG $0x54c40f66; WORD $0x283a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 40], 2
	QUAD $0x03283a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 40], 3
	QUAD $0x04282254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 40], 4
	QUAD $0x05282a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 40], 5
	LONG $0x54c40f66; WORD $0x281a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 40], 6
	QUAD $0x07280a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 40], 7
	LONG $0xf80f4466; BYTE $0xc7               // psubb    xmm8, xmm7
	LONG $0x6f0f4166; BYTE $0xea               // movdqa    xmm5, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xc8               // movd    xmm1, r8d
	LONG $0x44b70f46; WORD $0x3632             // movzx    r8d, word [rdx + r14 + 54]
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x6f0f4166; BYTE $0xf1               // movdqa    xmm6, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xe3               // movd    xmm4, r11d
	LONG $0x44b70f42; WORD $0x3832             // movzx    eax, word [rdx + r14 + 56]
	LONG $0x5cc40f66; WORD $0x2a0a; BYTE $0x01 // pinsrw    xmm3, word [rdx + rcx + 42], 1
	LONG $0x5cc40f66; WORD $0x2a3a; BYTE $0x02 // pinsrw    xmm3, word [rdx + rdi + 42], 2
	QUAD $0x032a3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 42], 3
	QUAD $0x042a225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 42], 4
	QUAD $0x052a2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 42], 5
	LONG $0x5cc40f66; WORD $0x2a1a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rbx + 42], 6
	QUAD $0x072a0a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 42], 7
	LONG $0x650f4166; BYTE $0xdb               // pcmpgtw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0x4cc40f66; WORD $0x2c0a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 44], 1
	LONG $0x4cc40f66; WORD $0x2c3a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 44], 2
	QUAD $0x032c3a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 44], 3
	QUAD $0x042c224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 44], 4
	QUAD $0x052c2a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 44], 5
	LONG $0x4cc40f66; WORD $0x2c1a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 44], 6
	LONG $0xeb0f4166; BYTE $0xe8               // por    xmm5, xmm8
	QUAD $0x0000c08d6f0f4466; BYTE $0x00       // movdqa    xmm9, oword 192[rbp] /* [rip + .LCPI11_12] */
	LONG $0x6f0f4166; BYTE $0xd1               // movdqa    xmm2, xmm9
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xd710             // pblendvb    xmm2, xmm15, xmm0
	LONG $0x7c6e0f66; WORD $0x0824             // movd    xmm7, dword [rsp + 8]
	LONG $0x5cb70f46; WORD $0x3a32             // movzx    r11d, word [rdx + r14 + 58]
	QUAD $0x072c0a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 44], 7
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0x0000d0956f0f4466; BYTE $0x00       // movdqa    xmm10, oword 208[rbp] /* [rip + .LCPI11_13] */
	LONG $0x6f0f4166; BYTE $0xf2               // movdqa    xmm6, xmm10
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0xce6e0f66                           // movd    xmm1, esi
	LONG $0x74b70f42; WORD $0x3c32             // movzx    esi, word [rdx + r14 + 60]
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	LONG $0x6e0f4166; BYTE $0xd2               // movd    xmm2, r10d
	LONG $0x64c40f66; WORD $0x2e0a; BYTE $0x01 // pinsrw    xmm4, word [rdx + rcx + 46], 1
	LONG $0x64c40f66; WORD $0x2e3a; BYTE $0x02 // pinsrw    xmm4, word [rdx + rdi + 46], 2
	QUAD $0x032e3a64c40f4266                   // pinsrw    xmm4, word [rdx + r15 + 46], 3
	QUAD $0x042e2264c40f4266                   // pinsrw    xmm4, word [rdx + r12 + 46], 4
	QUAD $0x052e2a64c40f4266                   // pinsrw    xmm4, word [rdx + r13 + 46], 5
	LONG $0x64c40f66; WORD $0x2e1a; BYTE $0x06 // pinsrw    xmm4, word [rdx + rbx + 46], 6
	QUAD $0x072e0a64c40f4266                   // pinsrw    xmm4, word [rdx + r9 + 46], 7
	LONG $0x650f4166; BYTE $0xe3               // pcmpgtw    xmm4, xmm11
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0x6f0f4566; BYTE $0xc6               // movdqa    xmm8, xmm14
	LONG $0xc46f0f66                           // movdqa    xmm0, xmm4
	LONG $0x380f4566; WORD $0xc710             // pblendvb    xmm8, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xd8               // movd    xmm3, r8d
	LONG $0x4cc40f66; WORD $0x320a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 50], 1
	LONG $0x4cc40f66; WORD $0x323a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 50], 2
	QUAD $0x03323a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 50], 3
	QUAD $0x0432224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 50], 4
	QUAD $0x05322a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 50], 5
	LONG $0x4cc40f66; WORD $0x321a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 50], 6
	QUAD $0x07320a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 50], 7
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0xeb0f4466; BYTE $0xc6               // por    xmm8, xmm6
	QUAD $0x00000080a56f0f66                   // movdqa    xmm4, oword 128[rbp] /* [rip + .LCPI11_8] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0xc86e0f66                           // movd    xmm1, eax
	LONG $0x7cc40f66; WORD $0x300a; BYTE $0x01 // pinsrw    xmm7, word [rdx + rcx + 48], 1
	LONG $0x7cc40f66; WORD $0x303a; BYTE $0x02 // pinsrw    xmm7, word [rdx + rdi + 48], 2
	QUAD $0x03303a7cc40f4266                   // pinsrw    xmm7, word [rdx + r15 + 48], 3
	QUAD $0x0430227cc40f4266                   // pinsrw    xmm7, word [rdx + r12 + 48], 4
	QUAD $0x05302a7cc40f4266                   // pinsrw    xmm7, word [rdx + r13 + 48], 5
	LONG $0x7cc40f66; WORD $0x301a; BYTE $0x06 // pinsrw    xmm7, word [rdx + rbx + 48], 6
	QUAD $0x07300a7cc40f4266                   // pinsrw    xmm7, word [rdx + r9 + 48], 7
	LONG $0x650f4166; BYTE $0xfb               // pcmpgtw    xmm7, xmm11
	QUAD $0x00000160bdef0f66                   // pxor    xmm7, oword 352[rbp] /* [rip + .LCPI11_22] */
	LONG $0x54c40f66; WORD $0x340a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 52], 1
	LONG $0x54c40f66; WORD $0x343a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 52], 2
	QUAD $0x03343a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 52], 3
	QUAD $0x04342254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 52], 4
	QUAD $0x05342a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 52], 5
	LONG $0x54c40f66; WORD $0x341a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 52], 6
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	QUAD $0x07340a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 52], 7
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0x5cc40f66; WORD $0x360a; BYTE $0x01 // pinsrw    xmm3, word [rdx + rcx + 54], 1
	LONG $0x5cc40f66; WORD $0x363a; BYTE $0x02 // pinsrw    xmm3, word [rdx + rdi + 54], 2
	QUAD $0x03363a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 54], 3
	QUAD $0x0436225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 54], 4
	QUAD $0x05362a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 54], 5
	LONG $0x5cc40f66; WORD $0x361a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rbx + 54], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x07360a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 54], 7
	LONG $0x650f4166; BYTE $0xdb               // pcmpgtw    xmm3, xmm11
	LONG $0x4cc40f66; WORD $0x380a; BYTE $0x01 // pinsrw    xmm1, word [rdx + rcx + 56], 1
	LONG $0x4cc40f66; WORD $0x383a; BYTE $0x02 // pinsrw    xmm1, word [rdx + rdi + 56], 2
	QUAD $0x03383a4cc40f4266                   // pinsrw    xmm1, word [rdx + r15 + 56], 3
	QUAD $0x0438224cc40f4266                   // pinsrw    xmm1, word [rdx + r12 + 56], 4
	QUAD $0x05382a4cc40f4266                   // pinsrw    xmm1, word [rdx + r13 + 56], 5
	LONG $0x4cc40f66; WORD $0x381a; BYTE $0x06 // pinsrw    xmm1, word [rdx + rbx + 56], 6
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	QUAD $0x07380a4cc40f4266                   // pinsrw    xmm1, word [rdx + r9 + 56], 7
	LONG $0xe7f80f66                           // psubb    xmm4, xmm7
	QUAD $0x00000090ad6f0f66                   // movdqa    xmm5, oword 144[rbp] /* [rip + .LCPI11_9] */
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xef10             // pblendvb    xmm5, xmm15, xmm0
	QUAD $0x000000a0b56f0f66                   // movdqa    xmm6, oword 160[rbp] /* [rip + .LCPI11_10] */
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4166; WORD $0xf710             // pblendvb    xmm6, xmm15, xmm0
	LONG $0x6e0f4166; BYTE $0xd3               // movd    xmm2, r11d
	LONG $0x650f4166; BYTE $0xcb               // pcmpgtw    xmm1, xmm11
	LONG $0x54c40f66; WORD $0x3a0a; BYTE $0x01 // pinsrw    xmm2, word [rdx + rcx + 58], 1
	LONG $0x54c40f66; WORD $0x3a3a; BYTE $0x02 // pinsrw    xmm2, word [rdx + rdi + 58], 2
	QUAD $0x033a3a54c40f4266                   // pinsrw    xmm2, word [rdx + r15 + 58], 3
	QUAD $0x043a2254c40f4266                   // pinsrw    xmm2, word [rdx + r12 + 58], 4
	QUAD $0x053a2a54c40f4266                   // pinsrw    xmm2, word [rdx + r13 + 58], 5
	LONG $0x54c40f66; WORD $0x3a1a; BYTE $0x06 // pinsrw    xmm2, word [rdx + rbx + 58], 6
	QUAD $0x073a0a54c40f4266                   // pinsrw    xmm2, word [rdx + r9 + 58], 7
	LONG $0xc9630f66                           // packsswb    xmm1, xmm1
	LONG $0x650f4166; BYTE $0xd3               // pcmpgtw    xmm2, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	LONG $0xde6e0f66                           // movd    xmm3, esi
	LONG $0x5cc40f66; WORD $0x3c0a; BYTE $0x01 // pinsrw    xmm3, word [rdx + rcx + 60], 1
	LONG $0x5cc40f66; WORD $0x3c3a; BYTE $0x02 // pinsrw    xmm3, word [rdx + rdi + 60], 2
	QUAD $0x033c3a5cc40f4266                   // pinsrw    xmm3, word [rdx + r15 + 60], 3
	QUAD $0x043c225cc40f4266                   // pinsrw    xmm3, word [rdx + r12 + 60], 4
	QUAD $0x053c2a5cc40f4266                   // pinsrw    xmm3, word [rdx + r13 + 60], 5
	LONG $0x5cc40f66; WORD $0x3c1a; BYTE $0x06 // pinsrw    xmm3, word [rdx + rbx + 60], 6
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	QUAD $0x073c0a5cc40f4266                   // pinsrw    xmm3, word [rdx + r9 + 60], 7
	LONG $0x650f4166; BYTE $0xdb               // pcmpgtw    xmm3, xmm11
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf4eb0f66                           // por    xmm6, xmm4
	QUAD $0x000000b0a56f0f66                   // movdqa    xmm4, oword 176[rbp] /* [rip + .LCPI11_11] */
	LONG $0xc16f0f66                           // movdqa    xmm0, xmm1
	LONG $0x380f4166; WORD $0xe710             // pblendvb    xmm4, xmm15, xmm0
	LONG $0x6f0f4166; BYTE $0xc9               // movdqa    xmm1, xmm9
	LONG $0xc26f0f66                           // movdqa    xmm0, xmm2
	LONG $0x380f4166; WORD $0xcf10             // pblendvb    xmm1, xmm15, xmm0
	LONG $0xc36f0f66                           // movdqa    xmm0, xmm3
	LONG $0x380f4566; WORD $0xd710             // pblendvb    xmm10, xmm15, xmm0
	LONG $0xcceb0f66                           // por    xmm1, xmm4
	LONG $0x44b70f42; WORD $0x3e32             // movzx    eax, word [rdx + r14 + 62]
	LONG $0xeb0f4466; BYTE $0xd1               // por    xmm10, xmm1
	LONG $0xc06e0f66                           // movd    xmm0, eax
	LONG $0x44c40f66; WORD $0x3e0a; BYTE $0x01 // pinsrw    xmm0, word [rdx + rcx + 62], 1
	LONG $0x44c40f66; WORD $0x3e3a; BYTE $0x02 // pinsrw    xmm0, word [rdx + rdi + 62], 2
	QUAD $0x033e3a44c40f4266                   // pinsrw    xmm0, word [rdx + r15 + 62], 3
	LONG $0x247c8b4c; BYTE $0x78               // mov    r15, qword [rsp + 120]
	QUAD $0x043e2244c40f4266                   // pinsrw    xmm0, word [rdx + r12 + 62], 4
	QUAD $0x053e2a44c40f4266                   // pinsrw    xmm0, word [rdx + r13 + 62], 5
	LONG $0x44c40f66; WORD $0x3e1a; BYTE $0x06 // pinsrw    xmm0, word [rdx + rbx + 62], 6
	QUAD $0x073e0a44c40f4266                   // pinsrw    xmm0, word [rdx + r9 + 62], 7
	LONG $0x650f4166; BYTE $0xc3               // pcmpgtw    xmm0, xmm11
	LONG $0xc0630f66                           // packsswb    xmm0, xmm0
	LONG $0xeb0f4466; BYTE $0xd6               // por    xmm10, xmm6
	LONG $0x380f4566; WORD $0xf710             // pblendvb    xmm14, xmm15, xmm0
	LONG $0xeb0f4566; BYTE $0xf2               // por    xmm14, xmm10
	LONG $0x6f0f4166; BYTE $0xc4               // movdqa    xmm0, xmm12
	LONG $0x6c0f4166; BYTE $0xc5               // punpcklqdq    xmm0, xmm13
	LONG $0x6f0f4166; BYTE $0xd0               // movdqa    xmm2, xmm8
	LONG $0x6c0f4166; BYTE $0xd6               // punpcklqdq    xmm2, xmm14
	QUAD $0x000000f09d6f0f66                   // movdqa    xmm3, oword 240[rbp] /* [rip + .LCPI11_15] */
	LONG $0x00380f66; BYTE $0xd3               // pshufb    xmm2, xmm3
	LONG $0x00380f66; BYTE $0xc3               // pshufb    xmm0, xmm3
	LONG $0xc2610f66                           // punpcklwd    xmm0, xmm2
	LONG $0x600f4566; BYTE $0xc6               // punpcklbw    xmm8, xmm14
	LONG $0x600f4566; BYTE $0xe5               // punpcklbw    xmm12, xmm13
	LONG $0x610f4566; BYTE $0xe0               // punpcklwd    xmm12, xmm8
	LONG $0x244c8b48; BYTE $0x10               // mov    rcx, qword [rsp + 16]
	LONG $0x7f0f45f3; WORD $0x8f24             // movdqu    oword [r15 + 4*rcx], xmm12
	LONG $0x7f0f41f3; WORD $0x8f44; BYTE $0x10 // movdqu    oword [r15 + 4*rcx + 16], xmm0
	LONG $0x08c18348                           // add    rcx, 8
	WORD $0x8949; BYTE $0xce                   // mov    r14, rcx
	LONG $0x244c3b48; BYTE $0x20               // cmp    rcx, qword [rsp + 32]
	JNE  LBB11_125
	QUAD $0x0000010024948b4c                   // mov    r10, qword [rsp + 256]
	LONG $0x24543b4c; BYTE $0x20               // cmp    r10, qword [rsp + 32]
	QUAD $0x00000088249c8b4c                   // mov    r11, qword [rsp + 136]
	LONG $0x24348b44                           // mov    r14d, dword [rsp]
	LONG $0x24648b4c; BYTE $0x38               // mov    r12, qword [rsp + 56]
	LONG $0x24448b48; BYTE $0x30               // mov    rax, qword [rsp + 48]
	JNE  LBB11_127
	JMP  LBB11_130

LBB11_182:
	WORD $0x894d; BYTE $0xd0                   // mov    r8, r10
	LONG $0xfce08349                           // and    r8, -4
	WORD $0x894c; BYTE $0xc3                   // mov    rbx, r8
	LONG $0x07e3c148                           // shl    rbx, 7
	WORD $0x0148; BYTE $0xd3                   // add    rbx, rdx
	LONG $0x87348d4f                           // lea    r14, [r15 + 4*r8]
	WORD $0x280f; BYTE $0xc8                   // movaps    xmm1, xmm0
	LONG $0x00c8c60f                           // shufps    xmm1, xmm0, 0
	LONG $0xfcc28148; WORD $0x0001; BYTE $0x00 // add    rdx, 508
	WORD $0xc931                               // xor    ecx, ecx
	LONG $0x6f0f4466; WORD $0x007d             // movdqa    xmm15, oword 0[rbp] /* [rip + .LCPI11_0] */
	LONG $0x6f0f4466; WORD $0x1045             // movdqa    xmm8, oword 16[rbp] /* [rip + .LCPI11_1] */
	LONG $0x6f0f4466; WORD $0x2055             // movdqa    xmm10, oword 32[rbp] /* [rip + .LCPI11_2] */
	LONG $0x6f0f4466; WORD $0x305d             // movdqa    xmm11, oword 48[rbp] /* [rip + .LCPI11_3] */
	LONG $0x6f0f4466; WORD $0x4065             // movdqa    xmm12, oword 64[rbp] /* [rip + .LCPI11_4] */
	LONG $0x6f0f4466; WORD $0x506d             // movdqa    xmm13, oword 80[rbp] /* [rip + .LCPI11_5] */
	LONG $0x6f0f4466; WORD $0x6075             // movdqa    xmm14, oword 96[rbp] /* [rip + .LCPI11_6] */
	LONG $0x6f0f4466; WORD $0x704d             // movdqa    xmm9, oword 112[rbp] /* [rip + .LCPI11_7] */

LBB11_183:
	QUAD $0xfffffe04b2100ff3                   // movss    xmm6, dword [rdx - 508]
	QUAD $0xfffffe08ba100ff3                   // movss    xmm7, dword [rdx - 504]
	QUAD $0xfffffe0caa100ff3                   // movss    xmm5, dword [rdx - 500]
	QUAD $0xfffffe10a2100ff3                   // movss    xmm4, dword [rdx - 496]
	QUAD $0xfffe84b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 380], 16
	QUAD $0xffff04b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 252], 32
	LONG $0x213a0f66; WORD $0x8472; BYTE $0x30 // insertps    xmm6, dword [rdx - 124], 48
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	QUAD $0xfffe88ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 376], 16
	QUAD $0xffff08ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 248], 32
	LONG $0x213a0f66; WORD $0x887a; BYTE $0x30 // insertps    xmm7, dword [rdx - 120], 48
	QUAD $0xfffe8caa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 372], 16
	QUAD $0xffff0caa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 244], 32
	LONG $0x213a0f66; WORD $0x8c6a; BYTE $0x30 // insertps    xmm5, dword [rdx - 116], 48
	QUAD $0xfffe90a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 368], 16
	QUAD $0xffff10a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 240], 32
	LONG $0x213a0f66; WORD $0x9062; BYTE $0x30 // insertps    xmm4, dword [rdx - 112], 48
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xd76f0f66                           // movdqa    xmm2, xmm7
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xd7f80f66                           // psubb    xmm2, xmm7
	QUAD $0xfffffe14ba100ff3                   // movss    xmm7, dword [rdx - 492]
	QUAD $0xfffe94ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 364], 16
	QUAD $0xffff14ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 236], 32
	LONG $0x213a0f66; WORD $0x947a; BYTE $0x30 // insertps    xmm7, dword [rdx - 108], 48
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe18b2100ff3                   // movss    xmm6, dword [rdx - 488]
	QUAD $0xfffe98b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 360], 16
	QUAD $0xffff18b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 232], 32
	LONG $0x213a0f66; WORD $0x9872; BYTE $0x30 // insertps    xmm6, dword [rdx - 104], 48
	LONG $0x02e9c20f                           // cmpleps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x02               // psllw    xmm5, 2
	LONG $0xdb0f4166; BYTE $0xe8               // pand    xmm5, xmm8
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe1c9a100ff3                   // movss    xmm3, dword [rdx - 484]
	QUAD $0xfffe9c9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 356], 16
	QUAD $0xffff1c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 228], 32
	LONG $0x213a0f66; WORD $0x9c5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 100], 48
	LONG $0x02e1c20f                           // cmpleps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xdb0f4166; BYTE $0xe7               // pand    xmm4, xmm15
	LONG $0xf4710f66; BYTE $0x03               // psllw    xmm4, 3
	LONG $0xdb0f4166; BYTE $0xe2               // pand    xmm4, xmm10
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x04               // psllw    xmm7, 4
	LONG $0xdb0f4166; BYTE $0xfb               // pand    xmm7, xmm11
	LONG $0xfceb0f66                           // por    xmm7, xmm4
	QUAD $0xfffffe20a2100ff3                   // movss    xmm4, dword [rdx - 480]
	QUAD $0xfffea0a2213a0f66; WORD $0x10ff     // insertps    xmm4, dword [rdx - 352], 16
	QUAD $0xffff20a2213a0f66; WORD $0x20ff     // insertps    xmm4, dword [rdx - 224], 32
	LONG $0x213a0f66; WORD $0xa062; BYTE $0x30 // insertps    xmm4, dword [rdx - 96], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe24aa100ff3                   // movss    xmm5, dword [rdx - 476]
	QUAD $0xfffea4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 348], 16
	QUAD $0xffff24aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 220], 32
	LONG $0x213a0f66; WORD $0xa46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 92], 48
	LONG $0x02e9c20f                           // cmpleps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x02d9c20f                           // cmpleps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x06               // psllw    xmm3, 6
	LONG $0xdb0f4166; BYTE $0xdd               // pand    xmm3, xmm13
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe2892100ff3                   // movss    xmm2, dword [rdx - 472]
	QUAD $0xfffea892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 344], 16
	QUAD $0xffff2892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 216], 32
	LONG $0x213a0f66; WORD $0xa852; BYTE $0x30 // insertps    xmm2, dword [rdx - 88], 48
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0x02e1c20f                           // cmpleps    xmm4, xmm1
	LONG $0xe46b0f66                           // packssdw    xmm4, xmm4
	LONG $0xe4630f66                           // packsswb    xmm4, xmm4
	LONG $0xf4710f66; BYTE $0x07               // psllw    xmm4, 7
	LONG $0xdb0f4166; BYTE $0xe6               // pand    xmm4, xmm14
	LONG $0xe3eb0f66                           // por    xmm4, xmm3
	QUAD $0xfffffe2c9a100ff3                   // movss    xmm3, dword [rdx - 468]
	QUAD $0xfffeac9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 340], 16
	QUAD $0xffff2c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 212], 32
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0x213a0f66; WORD $0xac5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 84], 48
	LONG $0xe7eb0f66                           // por    xmm4, xmm7
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe30ba100ff3                   // movss    xmm7, dword [rdx - 464]
	QUAD $0xfffeb0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 336], 16
	QUAD $0xffff30ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 208], 32
	LONG $0x213a0f66; WORD $0xb07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 80], 48
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe34aa100ff3                   // movss    xmm5, dword [rdx - 460]
	QUAD $0xfffeb4aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 332], 16
	QUAD $0xffff34aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 204], 32
	LONG $0x213a0f66; WORD $0xb46a; BYTE $0x30 // insertps    xmm5, dword [rdx - 76], 48
	LONG $0x02d9c20f                           // cmpleps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe38b2100ff3                   // movss    xmm6, dword [rdx - 456]
	QUAD $0xfffeb8b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 328], 16
	QUAD $0xffff38b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 200], 32
	LONG $0x213a0f66; WORD $0xb872; BYTE $0x30 // insertps    xmm6, dword [rdx - 72], 48
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x03               // psllw    xmm7, 3
	LONG $0xdb0f4166; BYTE $0xfa               // pand    xmm7, xmm10
	LONG $0x02e9c20f                           // cmpleps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x04               // psllw    xmm5, 4
	LONG $0xdb0f4166; BYTE $0xeb               // pand    xmm5, xmm11
	LONG $0xefeb0f66                           // por    xmm5, xmm7
	QUAD $0xfffffe3c92100ff3                   // movss    xmm2, dword [rdx - 452]
	QUAD $0xfffebc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 324], 16
	QUAD $0xffff3c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 196], 32
	LONG $0x213a0f66; WORD $0xbc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 68], 48
	LONG $0xebeb0f66                           // por    xmm5, xmm3
	QUAD $0xfffffe40ba100ff3                   // movss    xmm7, dword [rdx - 448]
	QUAD $0xfffec0ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 320], 16
	QUAD $0xffff40ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 192], 32
	LONG $0x213a0f66; WORD $0xc07a; BYTE $0x30 // insertps    xmm7, dword [rdx - 64], 48
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x05               // psllw    xmm6, 5
	LONG $0xdb0f4166; BYTE $0xf4               // pand    xmm6, xmm12
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd6eb0f66                           // por    xmm2, xmm6
	QUAD $0xfffffe44b2100ff3                   // movss    xmm6, dword [rdx - 444]
	QUAD $0xfffec4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 316], 16
	QUAD $0xffff44b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 188], 32
	LONG $0x213a0f66; WORD $0xc472; BYTE $0x30 // insertps    xmm6, dword [rdx - 60], 48
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xf7710f66; BYTE $0x07               // psllw    xmm7, 7
	LONG $0xdb0f4166; BYTE $0xfe               // pand    xmm7, xmm14
	LONG $0xfaeb0f66                           // por    xmm7, xmm2
	QUAD $0xfffffe4892100ff3                   // movss    xmm2, dword [rdx - 440]
	QUAD $0xfffec892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 312], 16
	QUAD $0xffff4892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 184], 32
	LONG $0x213a0f66; WORD $0xc852; BYTE $0x30 // insertps    xmm2, dword [rdx - 56], 48
	LONG $0xfdeb0f66                           // por    xmm7, xmm5
	QUAD $0xfffffe4c9a100ff3                   // movss    xmm3, dword [rdx - 436]
	QUAD $0xfffecc9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 308], 16
	QUAD $0xffff4c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 180], 32
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0x213a0f66; WORD $0xcc5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 52], 48
	LONG $0xe7620f66                           // punpckldq    xmm4, xmm7
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xfa6f0f66                           // movdqa    xmm7, xmm2
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xfaf80f66                           // psubb    xmm7, xmm2
	QUAD $0xfffffe50aa100ff3                   // movss    xmm5, dword [rdx - 432]
	QUAD $0xfffed0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 304], 16
	QUAD $0xffff50aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 176], 32
	LONG $0x213a0f66; WORD $0xd06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 48], 48
	LONG $0xfeeb0f66                           // por    xmm7, xmm6
	QUAD $0xfffffe54b2100ff3                   // movss    xmm6, dword [rdx - 428]
	QUAD $0xfffed4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 300], 16
	QUAD $0xffff54b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 172], 32
	LONG $0x213a0f66; WORD $0xd472; BYTE $0x30 // insertps    xmm6, dword [rdx - 44], 48
	LONG $0x02d9c20f                           // cmpleps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdfeb0f66                           // por    xmm3, xmm7
	QUAD $0xfffffe58ba100ff3                   // movss    xmm7, dword [rdx - 424]
	QUAD $0xfffed8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 296], 16
	QUAD $0xffff58ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 168], 32
	LONG $0x213a0f66; WORD $0xd87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 40], 48
	LONG $0x02e9c20f                           // cmpleps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xdb0f4166; BYTE $0xef               // pand    xmm5, xmm15
	LONG $0xf5710f66; BYTE $0x03               // psllw    xmm5, 3
	LONG $0xdb0f4166; BYTE $0xea               // pand    xmm5, xmm10
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf5eb0f66                           // por    xmm6, xmm5
	QUAD $0xfffffe5c92100ff3                   // movss    xmm2, dword [rdx - 420]
	QUAD $0xfffedc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 292], 16
	QUAD $0xffff5c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 164], 32
	LONG $0x213a0f66; WORD $0xdc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 36], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe60aa100ff3                   // movss    xmm5, dword [rdx - 416]
	QUAD $0xfffee0aa213a0f66; WORD $0x10ff     // insertps    xmm5, dword [rdx - 288], 16
	QUAD $0xffff60aa213a0f66; WORD $0x20ff     // insertps    xmm5, dword [rdx - 160], 32
	LONG $0x213a0f66; WORD $0xe06a; BYTE $0x30 // insertps    xmm5, dword [rdx - 32], 48
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe64ba100ff3                   // movss    xmm7, dword [rdx - 412]
	QUAD $0xfffee4ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 284], 16
	QUAD $0xffff64ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 156], 32
	LONG $0x213a0f66; WORD $0xe47a; BYTE $0x30 // insertps    xmm7, dword [rdx - 28], 48
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0x02e9c20f                           // cmpleps    xmm5, xmm1
	LONG $0xed6b0f66                           // packssdw    xmm5, xmm5
	LONG $0xed630f66                           // packsswb    xmm5, xmm5
	LONG $0xf5710f66; BYTE $0x07               // psllw    xmm5, 7
	LONG $0xdb0f4166; BYTE $0xee               // pand    xmm5, xmm14
	LONG $0xeaeb0f66                           // por    xmm5, xmm2
	QUAD $0xfffffe6892100ff3                   // movss    xmm2, dword [rdx - 408]
	QUAD $0xfffee892213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 280], 16
	QUAD $0xffff6892213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 152], 32
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0x213a0f66; WORD $0xe852; BYTE $0x30 // insertps    xmm2, dword [rdx - 24], 48
	LONG $0xeeeb0f66                           // por    xmm5, xmm6
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xf26f0f66                           // movdqa    xmm6, xmm2
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf2f80f66                           // psubb    xmm6, xmm2
	QUAD $0xfffffe6c9a100ff3                   // movss    xmm3, dword [rdx - 404]
	QUAD $0xfffeec9a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 276], 16
	QUAD $0xffff6c9a213a0f66; WORD $0x20ff     // insertps    xmm3, dword [rdx - 148], 32
	LONG $0x213a0f66; WORD $0xec5a; BYTE $0x30 // insertps    xmm3, dword [rdx - 20], 48
	LONG $0xf7eb0f66                           // por    xmm6, xmm7
	QUAD $0xfffffe7092100ff3                   // movss    xmm2, dword [rdx - 400]
	QUAD $0xfffef092213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 272], 16
	QUAD $0xffff7092213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 144], 32
	LONG $0x213a0f66; WORD $0xf052; BYTE $0x30 // insertps    xmm2, dword [rdx - 16], 48
	LONG $0x02d9c20f                           // cmpleps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xdb0f4166; BYTE $0xdf               // pand    xmm3, xmm15
	LONG $0xf3710f66; BYTE $0x02               // psllw    xmm3, 2
	LONG $0xdb0f4166; BYTE $0xd8               // pand    xmm3, xmm8
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	QUAD $0xfffffe74b2100ff3                   // movss    xmm6, dword [rdx - 396]
	QUAD $0xfffef4b2213a0f66; WORD $0x10ff     // insertps    xmm6, dword [rdx - 268], 16
	QUAD $0xffff74b2213a0f66; WORD $0x20ff     // insertps    xmm6, dword [rdx - 140], 32
	LONG $0x213a0f66; WORD $0xf472; BYTE $0x30 // insertps    xmm6, dword [rdx - 12], 48
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x03               // psllw    xmm2, 3
	LONG $0xdb0f4166; BYTE $0xd2               // pand    xmm2, xmm10
	LONG $0x02f1c20f                           // cmpleps    xmm6, xmm1
	LONG $0xf66b0f66                           // packssdw    xmm6, xmm6
	LONG $0xf6630f66                           // packsswb    xmm6, xmm6
	LONG $0xdb0f4166; BYTE $0xf7               // pand    xmm6, xmm15
	LONG $0xf6710f66; BYTE $0x04               // psllw    xmm6, 4
	LONG $0xdb0f4166; BYTE $0xf3               // pand    xmm6, xmm11
	LONG $0xf2eb0f66                           // por    xmm6, xmm2
	QUAD $0xfffffe78ba100ff3                   // movss    xmm7, dword [rdx - 392]
	QUAD $0xfffef8ba213a0f66; WORD $0x10ff     // insertps    xmm7, dword [rdx - 264], 16
	QUAD $0xffff78ba213a0f66; WORD $0x20ff     // insertps    xmm7, dword [rdx - 136], 32
	LONG $0x213a0f66; WORD $0xf87a; BYTE $0x30 // insertps    xmm7, dword [rdx - 8], 48
	LONG $0xf3eb0f66                           // por    xmm6, xmm3
	QUAD $0xfffffe7c92100ff3                   // movss    xmm2, dword [rdx - 388]
	QUAD $0xfffefc92213a0f66; WORD $0x10ff     // insertps    xmm2, dword [rdx - 260], 16
	QUAD $0xffff7c92213a0f66; WORD $0x20ff     // insertps    xmm2, dword [rdx - 132], 32
	LONG $0x213a0f66; WORD $0xfc52; BYTE $0x30 // insertps    xmm2, dword [rdx - 4], 48
	LONG $0x02f9c20f                           // cmpleps    xmm7, xmm1
	LONG $0xff6b0f66                           // packssdw    xmm7, xmm7
	LONG $0xff630f66                           // packsswb    xmm7, xmm7
	LONG $0xdb0f4166; BYTE $0xff               // pand    xmm7, xmm15
	LONG $0xf7710f66; BYTE $0x05               // psllw    xmm7, 5
	LONG $0xdb0f4166; BYTE $0xfc               // pand    xmm7, xmm12
	LONG $0x02d1c20f                           // cmpleps    xmm2, xmm1
	LONG $0xd26b0f66                           // packssdw    xmm2, xmm2
	LONG $0xd2630f66                           // packsswb    xmm2, xmm2
	LONG $0xdb0f4166; BYTE $0xd7               // pand    xmm2, xmm15
	LONG $0xf2710f66; BYTE $0x06               // psllw    xmm2, 6
	LONG $0xdb0f4166; BYTE $0xd5               // pand    xmm2, xmm13
	LONG $0xd7eb0f66                           // por    xmm2, xmm7
	QUAD $0xfffffe809a100ff3                   // movss    xmm3, dword [rdx - 384]
	QUAD $0xffff009a213a0f66; WORD $0x10ff     // insertps    xmm3, dword [rdx - 256], 16
	LONG $0x213a0f66; WORD $0x805a; BYTE $0x20 // insertps    xmm3, dword [rdx - 128], 32
	LONG $0x213a0f66; WORD $0x301a             // insertps    xmm3, dword [rdx], 48
	LONG $0x02d9c20f                           // cmpleps    xmm3, xmm1
	LONG $0xdb6b0f66                           // packssdw    xmm3, xmm3
	LONG $0xdb630f66                           // packsswb    xmm3, xmm3
	LONG $0xf3710f66; BYTE $0x07               // psllw    xmm3, 7
	LONG $0xdb0f4166; BYTE $0xde               // pand    xmm3, xmm14
	LONG $0xdaeb0f66                           // por    xmm3, xmm2
	LONG $0xdeeb0f66                           // por    xmm3, xmm6
	LONG $0xeb620f66                           // punpckldq    xmm5, xmm3
	LONG $0xe5600f66                           // punpcklbw    xmm4, xmm5
	LONG $0x380f4166; WORD $0xe100             // pshufb    xmm4, xmm9
	LONG $0x7f0f41f3; WORD $0x8f24             // movdqu    oword [r15 + 4*rcx], xmm4
	LONG $0x04c18348                           // add    rcx, 4
	LONG $0x00c28148; WORD $0x0002; BYTE $0x00 // add    rdx, 512
	WORD $0x3949; BYTE $0xc8                   // cmp    r8, rcx
	JNE  LBB11_183
	WORD $0x394d; BYTE $0xc2                   // cmp    r10, r8
	JNE  LBB11_185
	JMP  LBB11_188
