Function at 0x419a70
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, eax
mov eax, 0x1ff
push esi
mov esi, edx
push ebx
and esp, 0xffffffe0
sub esp, 0x630
mov edx, dword [ebp + 8]
mov dword [esp + 0x3e4], ecx
mov ecx, dword [ebp + 0xc]
cmp eax, edx
mov eax, 0
mov dword [esp + 0x3e8], edx
sbb eax, ecx
mov dword [esp + 0x3ec], ecx
jae 0x41a83f
vpbroadcastd ymm7, dword [edi]
mov eax, edx
mov edx, ecx
mov ebx, edx
mov ecx, eax
mov eax, esi
vmovdqu ymmword [esp + 0x1b0], ymm7
vmovdqu ymmword [esp + 0x370], ymm7
vpbroadcastd ymm7, dword [edi + 4]
vmovdqu ymmword [esp + 0x190], ymm7
vmovdqu ymmword [esp + 0x350], ymm7
vpbroadcastd ymm7, dword [edi + 8]
vmovdqu ymmword [esp + 0x170], ymm7
vmovdqu ymmword [esp + 0x330], ymm7
vpbroadcastd ymm7, dword [edi + 0xc]
vmovdqu ymmword [esp + 0x150], ymm7
vmovdqu ymmword [esp + 0x310], ymm7
vpbroadcastd ymm7, dword [edi + 0x10]
vmovdqu ymmword [esp + 0x130], ymm7
vmovdqu ymmword [esp + 0x2f0], ymm7
vpbroadcastd ymm7, dword [edi + 0x14]
vmovdqu ymmword [esp + 0x110], ymm7
vmovdqu ymmword [esp + 0x2d0], ymm7
vpbroadcastd ymm7, dword [edi + 0x18]
vmovdqu ymmword [esp + 0xf0], ymm7
vmovdqu ymmword [esp + 0x2b0], ymm7
vpbroadcastd ymm7, dword [edi + 0x1c]
vmovdqu ymmword [esp + 0xd0], ymm7
vmovdqu ymmword [esp + 0x290], ymm7
vpbroadcastd ymm7, dword [edi + 0x24]
vmovdqu ymmword [esp + 0xb0], ymm7
vmovdqu ymmword [esp + 0x270], ymm7
vpbroadcastd ymm7, dword [edi + 0x28]
vmovdqu ymmword [esp + 0x90], ymm7
vmovdqu ymmword [esp + 0x250], ymm7
vpbroadcastd ymm7, dword [edi + 0x2c]
vmovdqu ymmword [esp + 0x70], ymm7
vmovdqu ymmword [esp + 0x230], ymm7
vpbroadcastd ymm7, dword [edi + 0x30]
mov edx, dword [esp + 0x3e4]
mov dword [esp + 0x3d0], edi
vmovdqu ymmword [esp + 0x50], ymm7
vmovdqu ymmword [esp + 0x210], ymm7
vpbroadcastd ymm7, dword [edi + 0x38]
mov dword [esp + 0x3e0], esi
vmovdqu ymmword [esp + 0x30], ymm7
vmovdqu ymmword [esp + 0x1f0], ymm7
vpbroadcastd ymm7, dword [edi + 0x3c]
mov dword [esp + 0x530], ecx
vmovdqu ymmword [esp + 0x10], ymm7
vmovdqu ymmword [esp + 0x1d0], ymm7
mov dword [esp + 0x534], ebx
lea esi, [esi]
mov edi, dword [esp + 0x3d0]
vmovdqu ymm6, ymmword [esp + 0x350]
vmovdqu ymm5, ymmword [esp + 0x1f0]
vmovdqu ymmword [esp + 0x4d0], ymm6
vmovdqu ymm6, ymmword [esp + 0x2d0]
mov ecx, dword [edi + 0x20]
vmovdqu ymmword [esp + 0x5d0], ymm6
mov ebx, dword [edi + 0x34]
vmovdqu ymm6, ymmword [esp + 0x210]
vmovd xmm7, ecx
add ecx, 8
vpinsrd xmm0, xmm7, ebx, 1
vmovq xmm0, xmm0
adc ebx, 0
mov dword [edi + 0x20], ecx
vpbroadcastq ymm0, xmm0
mov dword [edi + 0x34], ebx
mov ecx, 0xa
vpaddq ymm1, ymm0, ymmword [0x5124a0]
vmovdqu ymm7, ymmword [0x5124e0]
vpaddq ymm0, ymm0, ymmword [0x5124c0]
vpunpckldq ymm2, ymm0, ymm1
vpunpckhdq ymm0, ymm0, ymm1
vpunpckldq ymm1, ymm2, ymm0
vpunpckhdq ymm0, ymm2, ymm0
vpermd ymm7, ymm7, ymm1
vmovdqa ymm2, ymm7
vmovdqu ymmword [esp + 0x3b0], ymm7
vmovdqu ymm7, ymmword [0x5124e0]
vpermd ymm7, ymm7, ymm0
vmovdqa ymm1, ymm7
vmovdqa ymm0, ymm2
vmovdqa ymm2, ymm5
vmovdqu ymmword [esp + 0x390], ymm7
vmovdqu ymm7, ymmword [esp + 0x230]
vmovdqu ymmword [esp + 0x450], ymm7
vmovdqu ymm7, ymmword [esp + 0x250]
vmovdqu ymmword [esp + 0x470], ymm7
vmovdqu ymm7, ymmword [esp + 0x1d0]
vmovdqu ymmword [esp + 0x430], ymm7
vmovdqu ymm7, ymmword [esp + 0x310]
vmovdqu ymmword [esp + 0x590], ymm7
vmovdqu ymm7, ymmword [esp + 0x290]
vmovdqu ymmword [esp + 0x4b0], ymm7
vmovdqu ymm7, ymmword [esp + 0x330]
vmovdqu ymmword [esp + 0x5b0], ymm7
vmovdqu ymm7, ymmword [esp + 0x2b0]
vmovdqu ymmword [esp + 0x4f0], ymm7
vmovdqu ymm7, ymmword [esp + 0x270]
vmovdqu ymmword [esp + 0x570], ymm6
mov esi, dword [esp + 0x530]
mov edi, dword [esp + 0x534]
mov dword [esp + 0x550], 0xa
vmovdqu ymm3, ymmword [esp + 0x370]
vmovdqu ymm6, ymmword [esp + 0x2f0]
lea esi, [esi]
lea esi, [esi]
vpaddd ymm4, ymm3, ymm6
sub ecx, 1
vpslld ymm5, ymm4, 7
vpsrld ymm4, ymm4, 0x19
vpxor ymm5, ymm5, ymm4
vmovdqu ymm4, ymmword [esp + 0x4d0]
vpaddd ymm4, ymm4, ymmword [esp + 0x5d0]
vpxor ymm5, ymm5, ymmword [esp + 0x570]
vmovdqu ymmword [esp + 0x570], ymm5
vpslld ymm5, ymm4, 7
vpsrld ymm4, ymm4, 0x19
vpxor ymm5, ymm5, ymm4
vpxor ymm4, ymm5, ymm1
vmovdqu ymm5, ymmword [esp + 0x570]
vmovdqu ymmword [esp + 0x550], ymm4
vpaddd ymm1, ymm3, ymm5
vpslld ymm4, ymm1, 9
vpsrld ymm1, ymm1, 0x17
vpxor ymm4, ymm4, ymm1
vpxor ymm1, ymm4, ymm0
vmovdqu ymm4, ymmword [esp + 0x550]
vmovdqu ymmword [esp + 0x530], ymm1
vmovdqu ymm0, ymmword [esp + 0x4d0]
vpaddd ymm0, ymm0, ymm4
vmovdqu ymm4, ymmword [esp + 0x590]
vpslld ymm1, ymm0, 9
vpsrld ymm0, ymm0, 0x17
vpxor ymm1, ymm1, ymm0
vpxor ymm0, ymm1, ymm7
vmovdqu ymm7, ymmword [esp + 0x530]
vmovdqu ymmword [esp + 0x510], ymm0
vpaddd ymm0, ymm7, ymmword [esp + 0x570]
vmovdqu ymm7, ymmword [esp + 0x4f0]
vpslld ymm1, ymm0, 0xd
vpsrld ymm0, ymm0, 0x13
vpxor ymm1, ymm6, ymm1
vmovdqu ymm6, ymmword [esp + 0x510]
vpxor ymm1, ymm1, ymm0
vmovdqu ymm0, ymmword [esp + 0x550]
vmovdqu ymmword [esp + 0x3f0], ymm1
vpaddd ymm0, ymm0, ymm6
vpslld ymm5, ymm0, 0xd
vpxor ymm5, ymm5, ymmword [esp + 0x5d0]
vpsrld ymm0, ymm0, 0x13
vpxor ymm5, ymm5, ymm0
vpaddd ymm0, ymm1, ymmword [esp + 0x530]
vpslld ymm1, ymm0, 0x12
vpsrld ymm0, ymm0, 0xe
vpxor ymm1, ymm3, ymm1
vpxor ymm3, ymm1, ymm0
vpaddd ymm0, ymm5, ymmword [esp + 0x510]
vmovdqu ymmword [esp + 0x410], ymm3
vmovdqu ymm3, ymmword [esp + 0x5b0]
vpslld ymm1, ymm0, 0x12
vpxor ymm1, ymm1, ymmword [esp + 0x4d0]
vpsrld ymm0, ymm0, 0xe
vpxor ymm0, ymm1, ymm0
vmovdqu ymmword [esp + 0x4d0], ymm0
vpaddd ymm0, ymm3, ymm7
vpslld ymm1, ymm0, 7
vpsrld ymm0, ymm0, 0x19
vpxor ymm1, ymm1, ymm0
vpxor ymm6, ymm1, ymm2
vpaddd ymm1, ymm4, ymmword [esp + 0x4b0]
vmovdqu ymmword [esp + 0x490], ymm6
vpslld ymm0, ymm1, 7
vpsrld ymm1, ymm1, 0x19
vpxor ymm0, ymm0, ymm1
vpaddd ymm1, ymm6, ymmword [esp + 0x5b0]
vpxor ymm0, ymm0, ymmword [esp + 0x430]
vpaddd ymm3, ymm0, ymmword [esp + 0x590]
vpslld ymm2, ymm1, 9
vpsrld ymm1, ymm1, 0x17
vpxor ymm2, ymm2, ymm1
vpslld ymm1, ymm3, 9
vpxor ymm2, ymm2, ymmword [esp + 0x470]
vpaddd ymm4, ymm2, ymmword [esp + 0x490]
vpsrld ymm3, ymm3, 0x17
vpxor ymm1, ymm1, ymm3
vpslld ymm3, ymm4, 0xd
vpxor ymm1, ymm1, ymmword [esp + 0x450]
vpaddd ymm6, ymm1, ymm0
vpsrld ymm4, ymm4, 0x13
vpxor ymm3, ymm3, ymm7
vpxor ymm3, ymm3, ymm4
vpslld ymm4, ymm6, 0xd
vpxor ymm4, ymm4, ymmword [esp + 0x4b0]
vpsrld ymm6, ymm6, 0x13
vpxor ymm4, ymm4, ymm6
vpaddd ymm6, ymm2, ymm3
vpslld ymm7, ymm6, 0x12
vpxor ymm7, ymm7, ymmword [esp + 0x5b0]
vpsrld ymm6, ymm6, 0xe
vpxor ymm6, ymm7, ymm6
vmovdqu ymmword [esp + 0x5b0], ymm6
vpaddd ymm6, ymm0, ymmword [esp + 0x410]
vpslld ymm7, ymm6, 7
vpsrld ymm6, ymm6, 0x19
vpxor ymm7, ymm7, ymm6
vpxor ymm5, ymm7, ymm5
vmovdqu ymmword [esp + 0x5d0], ymm5
vpaddd ymm5, ymm1, ymm4
vpslld ymm6, ymm5, 0x12
vpxor ymm6, ymm6, ymmword [esp + 0x590]
vpsrld ymm5, ymm5, 0xe
vpxor ymm7, ymm6, ymm5
vmovdqu ymm6, ymmword [esp + 0x4d0]
vmovdqu ymmword [esp + 0x590], ymm7
vmovdqu ymm7, ymmword [esp + 0x570]
vpaddd ymm5, ymm6, ymm7
vpslld ymm6, ymm5, 7
vpsrld ymm5, ymm5, 0x19
vpxor ymm6, ymm6, ymm5
vpxor ymm3, ymm6, ymm3
vmovdqu ymm6, ymmword [esp + 0x410]
vmovdqu ymmword [esp + 0x4f0], ymm3
vmovdqu ymm3, ymmword [esp + 0x5d0]
vpaddd ymm3, ymm3, ymm6
vpslld ymm5, ymm3, 9
vpsrld ymm3, ymm3, 0x17
vpxor ymm5, ymm5, ymm3
vpxor ymm3, ymm5, ymm2
vmovdqu ymm5, ymmword [esp + 0x4d0]
vmovdqu ymmword [esp + 0x470], ymm3
vmovdqu ymm2, ymmword [esp + 0x4f0]
vpaddd ymm2, ymm2, ymm5
vpslld ymm3, ymm2, 9
vpsrld ymm2, ymm2, 0x17
vpxor ymm3, ymm3, ymm2
vpxor ymm1, ymm3, ymm1
vmovdqu ymm3, ymmword [esp + 0x470]
vmovdqu ymmword [esp + 0x450], ymm1
vmovdqu ymm1, ymmword [esp + 0x5d0]
vpaddd ymm1, ymm1, ymm3
vpslld ymm2, ymm1, 0xd
vpsrld ymm1, ymm1, 0x13
vpxor ymm2, ymm2, ymm1
vpxor ymm0, ymm2, ymm0
vmovdqu ymm2, ymmword [esp + 0x450]
vmovdqu ymmword [esp + 0x430], ymm0
vpaddd ymm0, ymm2, ymmword [esp + 0x4f0]
vpslld ymm1, ymm0, 0xd
vpsrld ymm0, ymm0, 0x13
vpxor ymm1, ymm1, ymm0
vpxor ymm1, ymm1, ymm7
vmovdqu ymm0, ymmword [esp + 0x430]
vmovdqu ymmword [esp + 0x570], ymm1
vpaddd ymm0, ymm0, ymm3
vpslld ymm3, ymm0, 0x12
vpsrld ymm0, ymm0, 0xe
vpxor ymm3, ymm3, ymm0
vpaddd ymm0, ymm1, ymm2
vpxor ymm3, ymm3, ymm6
vmovdqu ymm2, ymmword [esp + 0x5b0]
vpslld ymm1, ymm0, 0x12
vpsrld ymm0, ymm0, 0xe
vpxor ymm1, ymm1, ymm0
vpxor ymm0, ymm1, ymm5
vmovdqu ymm5, ymmword [esp + 0x550]
vmovdqu ymmword [esp + 0x4d0], ymm0
vpaddd ymm0, ymm2, ymm5
vpslld ymm1, ymm0, 7
vpsrld ymm0, ymm0, 0x19
vpxor ymm1, ymm1, ymm0
vpxor ymm1, ymm1, ymm4
vmovdqu ymm0, ymmword [esp + 0x490]
vmovdqu ymmword [esp + 0x4b0], ymm1
vmovdqu ymm4, ymmword [esp + 0x590]
vpaddd ymm1, ymm1, ymmword [esp + 0x5b0]
vpaddd ymm0, ymm0, ymm4
vpslld ymm6, ymm0, 7
vpsrld ymm0, ymm0, 0x19
vpxor ymm6, ymm6, ymm0
vpslld ymm0, ymm1, 9
vpxor ymm6, ymm6, ymmword [esp + 0x3f0]
vpsrld ymm1, ymm1, 0x17
vpxor ymm0, ymm0, ymm1
vpxor ymm0, ymm0, ymmword [esp + 0x530]
vpaddd ymm1, ymm6, ymmword [esp + 0x590]
vpaddd ymm2, ymm0, ymmword [esp + 0x4b0]
vpslld ymm7, ymm1, 9
vpsrld ymm1, ymm1, 0x17
vpxor ymm7, ymm7, ymm1
vpslld ymm1, ymm2, 0xd
vpxor ymm7, ymm7, ymmword [esp + 0x510]
vpaddd ymm4, ymm7, ymm6
vpsrld ymm2, ymm2, 0x13
vpxor ymm1, ymm1, ymm2
vpslld ymm2, ymm4, 0xd
vpxor ymm1, ymm1, ymm5
vpsrld ymm4, ymm4, 0x13
vpxor ymm2, ymm2, ymm4
vpaddd ymm4, ymm1, ymm0
vpxor ymm2, ymm2, ymmword [esp + 0x490]
vpslld ymm5, ymm4, 0x12
vpsrld ymm4, ymm4, 0xe
vpxor ymm5, ymm5, ymm4
vpaddd ymm4, ymm2, ymm7
vpxor ymm5, ymm5, ymmword [esp + 0x5b0]
vmovdqu ymmword [esp + 0x5b0], ymm5
vpslld ymm5, ymm4, 0x12
vpsrld ymm4, ymm4, 0xe
vpxor ymm5, ymm5, ymm4
vpxor ymm5, ymm5, ymmword [esp + 0x590]
vmovdqu ymmword [esp + 0x590], ymm5
jne 0x419db0
vpaddd ymm3, ymm3, ymmword [esp + 0x1b0]
mov dword [esp + 0x550], ecx
add esi, 0xfffffe00
mov ebx, 0x1ff
vmovdqu ymmword [esp + 0x530], ymm6
adc edi, 0xffffffff
vmovdqu ymm6, ymmword [esp + 0x110]
vpaddd ymm4, ymm6, ymmword [esp + 0x5d0]
vmovdqu ymmword [esp + 0x510], ymm0
vmovdqu ymm6, ymmword [esp + 0x10]
add edx, 0x200
add eax, 0x200
vmovdqu ymmword [esp + 0x490], ymm1
vpunpckldq ymm5, ymm3, ymm4
vpaddd ymm1, ymm6, ymmword [esp + 0x430]
vpunpckhdq ymm3, ymm3, ymm4
vmovdqu ymm6, ymmword [esp + 0x90]
vpaddd ymm0, ymm6, ymmword [esp + 0x470]
vmovdqu ymmword [esp + 0x410], ymm2
vmovdqu ymm6, ymmword [esp + 0x190]
vpunpckldq ymm2, ymm0, ymm1
vmovdqa ymm4, ymm2
vpunpckhdq ymm0, ymm0, ymm1
vpunpcklqdq ymm2, ymm5, ymm2
vpunpckhqdq ymm5, ymm5, ymm4
vpunpcklqdq ymm4, ymm3, ymm0
vpunpckhqdq ymm3, ymm3, ymm0
vmovdqu ymmword [esp + 0x5d0], ymm4
vmovdqu ymmword [esp + 0x470], ymm3
vpaddd ymm3, ymm6, ymmword [esp + 0x4d0]
vmovdqu ymm6, ymmword [esp + 0x50]
vpaddd ymm1, ymm6, ymmword [esp + 0x570]
vmovdqu ymmword [esp + 0x570], ymm3
vmovdqu ymm6, ymmword [esp + 0x70]
vpaddd ymm4, ymm6, ymmword [esp + 0x450]
vmovdqu ymm6, ymmword [esp + 0xf0]
vpunpckldq ymm3, ymm1, ymm3
vpaddd ymm0, ymm6, ymmword [esp + 0x4f0]
vpunpckhdq ymm1, ymm1, ymmword [esp + 0x570]
vpunpckldq ymm6, ymm0, ymm4
vpunpckhdq ymm0, ymm0, ymm4
vmovdqa ymm4, ymm6
vpunpcklqdq ymm6, ymm3, ymm6
vpunpckhqdq ymm3, ymm3, ymm4
vpunpcklqdq ymm4, ymm1, ymm0
vpunpckhqdq ymm1, ymm1, ymm0
vperm2i128 ymm0, ymm2, ymm6, 0x20
vmovdqu ymmword [esp + 0x570], ymm0
vperm2i128 ymm6, ymm2, ymm6, 0x31
vmovdqu ymm2, ymmword [esp + 0x5d0]
vperm2i128 ymm0, ymm5, ymm3, 0x20
vmovdqu ymmword [esp + 0x4f0], ymm6
vperm2i128 ymm3, ymm5, ymm3, 0x31
vperm2i128 ymm5, ymm2, ymm4, 0x20
vperm2i128 ymm4, ymm2, ymm4, 0x31
vmovdqu ymm2, ymmword [esp + 0x470]
vmovdqu ymmword [esp + 0x5d0], ymm4
vperm2i128 ymm6, ymm2, ymm1, 0x31
vperm2i128 ymm4, ymm2, ymm1, 0x20
vmovdqu xmm1, xmmword [eax - 0x1c0]
vmovdqu ymmword [esp + 0x4d0], ymm6
vinserti128 ymm1, ymm1, xmmword [eax - 0x1b0], 1
vpxor ymm1, ymm0, ymm1
vmovdqu xmm2, xmmword [eax - 0x180]
vinserti128 ymm0, ymm2, xmmword [eax - 0x170], 1
vmovdqu xmm2, xmmword [eax - 0xc0]
vpxor ymm6, ymm5, ymm0
vmovdqu xmm5, xmmword [eax - 0x140]
vinserti128 ymm0, ymm5, xmmword [eax - 0x130], 1
vpxor ymm5, ymm4, ymm0
vmovdqu xmm4, xmmword [eax - 0x100]
vinserti128 ymm0, ymm4, xmmword [eax - 0xf0], 1
vpxor ymm4, ymm0, ymmword [esp + 0x4f0]
vinserti128 ymm0, ymm2, xmmword [eax - 0xb0], 1
vmovdqu xmm2, xmmword [eax - 0x80]
vpxor ymm3, ymm3, ymm0
vinserti128 ymm0, ymm2, xmmword [eax - 0x70], 1
vpxor ymm2, ymm0, ymmword [esp + 0x5d0]
vmovdqu xmm0, xmmword [eax - 0x40]
vinserti128 ymm0, ymm0, xmmword [eax - 0x30], 1
vpxor ymm0, ymm0, ymmword [esp + 0x4d0]
vmovdqu ymmword [esp + 0x5d0], ymm0
vmovdqu xmm0, xmmword [eax - 0x200]
vinserti128 ymm0, ymm0, xmmword [eax - 0x1f0], 1
vmovdqu xmmword [edx - 0x1c0], xmm1
vpxor ymm0, ymm0, ymmword [esp + 0x570]
vextracti128 xmmword [edx - 0x1b0], ymm1, 1
vmovdqu xmmword [edx - 0x200], xmm0
vextracti128 xmmword [edx - 0x1f0], ymm0, 1
vextracti128 xmmword [edx - 0x170], ymm6, 1
vextracti128 xmmword [edx - 0x130], ymm5, 1
vmovdqu xmmword [edx - 0x180], xmm6
vextracti128 xmmword [edx - 0xf0], ymm4, 1
vextracti128 xmmword [edx - 0xb0], ymm3, 1
vmovdqu xmmword [edx - 0x140], xmm5
vmovdqu xmmword [edx - 0x100], xmm4
vmovdqu xmmword [edx - 0xc0], xmm3
vmovdqu xmmword [edx - 0x80], xmm2
vextracti128 xmmword [edx - 0x70], ymm2, 1
vmovdqu ymm6, ymmword [esp + 0x5d0]
vmovdqu ymm2, ymmword [esp + 0x390]
vmovdqu xmmword [edx - 0x40], xmm6
vextracti128 xmmword [edx - 0x30], ymm6, 1
vmovdqu ymm3, ymmword [esp + 0x3b0]
vpaddd ymm6, ymm2, ymmword [esp + 0x490]
vpaddd ymm1, ymm3, ymmword [esp + 0x510]
vmovdqu ymm2, ymmword [esp + 0xd0]
vpaddd ymm4, ymm2, ymmword [esp + 0x4b0]
vmovdqu ymm2, ymmword [esp + 0x170]
vpunpckldq ymm3, ymm1, ymm6
vpaddd ymm0, ymm2, ymmword [esp + 0x5b0]
vpunpckhdq ymm1, ymm1, ymm6
vpunpckldq ymm5, ymm0, ymm4
vpunpckhdq ymm0, ymm0, ymm4
vpunpcklqdq ymm6, ymm3, ymm5
vpunpcklqdq ymm2, ymm1, ymm0
vmovdqu ymmword [esp + 0x5d0], ymm6
vpunpckhqdq ymm5, ymm3, ymm5
vpunpckhqdq ymm3, ymm1, ymm0
vmovdqu ymm0, ymmword [esp + 0x150]
vmovdqu ymmword [esp + 0x570], ymm3
vpaddd ymm6, ymm0, ymmword [esp + 0x590]
vpaddd ymm3, ymm7, ymmword [esp + 0xb0]
vmovdqu ymm7, ymmword [esp + 0x530]
vpaddd ymm4, ymm7, ymmword [esp + 0x130]
vmovdqu ymmword [esp + 0x5b0], ymm2
vmovdqu ymm7, ymmword [esp + 0x410]
vpaddd ymm0, ymm7, ymmword [esp + 0x30]
vmovdqu ymm7, ymmword [esp + 0x5d0]
vpunpckldq ymm1, ymm4, ymm3
vpunpckhdq ymm4, ymm4, ymm3
vpunpckldq ymm2, ymm0, ymm6
vpunpckhdq ymm0, ymm0, ymm6
vpunpcklqdq ymm3, ymm1, ymm2
vpunpcklqdq ymm6, ymm4, ymm0
vpunpckhqdq ymm0, ymm4, ymm0
vperm2i128 ymm4, ymm7, ymm3, 0x20
vperm2i128 ymm3, ymm7, ymm3, 0x31
vpunpckhqdq ymm1, ymm1, ymm2
vmovdqu ymm7, ymmword [esp + 0x5b0]
vperm2i128 ymm2, ymm5, ymm1, 0x20
vperm2i128 ymm1, ymm5, ymm1, 0x31
vmovdqu ymmword [esp + 0x5d0], ymm4
vperm2i128 ymm4, ymm7, ymm6, 0x20
vperm2i128 ymm6, ymm7, ymm6, 0x31
vmovdqu ymm7, ymmword [esp + 0x570]
vperm2i128 ymm5, ymm7, ymm0, 0x20
vperm2i128 ymm0, ymm7, ymm0, 0x31
vmovdqu xmm7, xmmword [eax - 0x1a0]
vinserti128 ymm7, ymm7, xmmword [eax - 0x190], 1
vpxor ymm2, ymm2, ymm7
vmovdqu xmm7, xmmword [eax - 0x160]
vinserti128 ymm7, ymm7, xmmword [eax - 0x150], 1
vpxor ymm4, ymm4, ymm7
vmovdqu xmm7, xmmword [eax - 0x120]
vinserti128 ymm7, ymm7, xmmword [eax - 0x110], 1
vpxor ymm5, ymm5, ymm7
vmovdqu xmm7, xmmword [eax - 0xe0]
vinserti128 ymm7, ymm7, xmmword [eax - 0xd0], 1
vpxor ymm3, ymm3, ymm7
mov dword [esp + 0x530], esi
vmovdqu xmm7, xmmword [eax - 0xa0]
mov dword [esp + 0x534], edi
vinserti128 ymm7, ymm7, xmmword [eax - 0x90], 1
vpxor ymm1, ymm1, ymm7
vmovdqu xmm7, xmmword [eax - 0x60]
vinserti128 ymm7, ymm7, xmmword [eax - 0x50], 1
vpxor ymm6, ymm6, ymm7
vmovdqu xmm7, xmmword [eax - 0x20]
vinserti128 ymm7, ymm7, xmmword [eax - 0x10], 1
vpxor ymm0, ymm0, ymm7
vmovdqu xmm7, xmmword [eax - 0x1e0]
vinserti128 ymm7, ymm7, xmmword [eax - 0x1d0], 1
vmovdqu xmmword [edx - 0x1a0], xmm2
vpxor ymm7, ymm7, ymmword [esp + 0x5d0]
vextracti128 xmmword [edx - 0x190], ymm2, 1
vmovdqu xmmword [edx - 0x1e0], xmm7
vextracti128 xmmword [edx - 0x1d0], ymm7, 1
vextracti128 xmmword [edx - 0x150], ymm4, 1
vmovdqu xmmword [edx - 0x160], xmm4
vextracti128 xmmword [edx - 0x50], ymm6, 1
vextracti128 xmmword [edx - 0x110], ymm5, 1
vextracti128 xmmword [edx - 0xd0], ymm3, 1
vmovdqu xmmword [edx - 0x120], xmm5
vextracti128 xmmword [edx - 0x90], ymm1, 1
vextracti128 xmmword [edx - 0x10], ymm0, 1
vmovdqu xmmword [edx - 0xe0], xmm3
vmovdqu xmmword [edx - 0xa0], xmm1
vmovdqu xmmword [edx - 0x60], xmm6
vmovdqu xmmword [edx - 0x20], xmm0
cmp ebx, esi
mov ebx, dword [esp + 0x550]
sbb ebx, edi
jb 0x419c28
mov ecx, dword [esp + 0x3e8]
mov ebx, dword [esp + 0x3ec]
mov esi, dword [esp + 0x3e0]
mov edi, dword [esp + 0x3d0]
mov eax, ecx
add eax, 0xfffffe00
mov edx, ebx
adc edx, 0xffffffff
and ecx, 0x1ff
xor ebx, ebx
shrd eax, edx, 9
mov dword [esp + 0x3e8], ecx
add eax, 1
mov dword [esp + 0x3ec], ebx
shl eax, 9
add dword [esp + 0x3e4], eax
add esi, eax
mov ecx, dword [esp + 0x3e8]
mov eax, 0xff
mov ebx, dword [esp + 0x3ec]
cmp eax, ecx
mov eax, 0
sbb eax, ebx
jae 0x41b198
vmovdqu xmm0, xmmword [edi]
vpshufd xmm2, xmmword [edi + 0x20], 0xff
vpshufd xmm5, xmmword [edi + 0x30], 0xff
vmovdqu xmmword [esp + 0x2f0], xmm2
vmovdqu xmmword [esp + 0x450], xmm2
mov eax, dword [edi + 0x20]
vpshufd xmm2, xmmword [edi + 0x20], 0x55
vpshufd xmm7, xmm0, 0x55
vpshufd xmm3, xmm0, 0
vmovdqu xmmword [esp + 0x390], xmm7
vmovdqu xmmword [esp + 0x510], xmm7
vpshufd xmm7, xmm0, 0xaa
vmovdqu xmmword [esp + 0x3d0], xmm7
vmovdqu xmmword [esp + 0x5b0], xmm7
vpshufd xmm7, xmm0, 0xff
vmovdqu xmm0, xmmword [edi + 0x10]
vmovd xmm1, eax
vmovdqu xmmword [esp + 0x370], xmm7
add eax, 4
vpshufd xmm6, xmm0, 0xaa
vpshufd xmm4, xmm0, 0x55
vmovdqu xmmword [esp + 0x590], xmm7
vmovdqu xmmword [esp + 0x350], xmm6
vmovdqu xmmword [esp + 0x5d0], xmm6
vpshufd xmm6, xmm0, 0xff
vmovdqu xmmword [esp + 0x2d0], xmm2
vmovdqu xmmword [esp + 0x330], xmm6
vmovdqu xmmword [esp + 0x570], xmm6
vpshufd xmm6, xmm0, 0
vmovdqu xmmword [esp + 0x490], xmm2
vpshufd xmm2, xmmword [edi + 0x20], 0xaa
vmovdqu xmmword [esp + 0x310], xmm6
vmovdqu xmmword [esp + 0x2b0], xmm2
vmovdqu xmmword [esp + 0x530], xmm2
vpshufd xmm2, xmmword [edi + 0x30], 0
vmovdqu xmmword [esp + 0x550], xmm4
vmovdqu xmmword [esp + 0x290], xmm2
vmovdqu xmmword [esp + 0x4d0], xmm2
vpshufd xmm2, xmmword [edi + 0x30], 0xaa
vmovdqu xmmword [esp + 0x430], xmm5
vmovdqu xmmword [esp + 0x270], xmm2
vmovdqu xmmword [esp + 0x4b0], xmm2
mov edx, dword [edi + 0x34]
vmovdqu xmm7, xmmword [esp + 0x570]
mov dword [edi + 0x20], eax
mov eax, 0xa
vmovdqu xmmword [esp + 0x4f0], xmm3
vmovdqu xmmword [esp + 0x250], xmm3
vmovdqu xmmword [esp + 0x230], xmm4
vpinsrd xmm0, xmm1, edx, 1
vpunpcklqdq xmm0, xmm0, xmm0
vpaddq xmm1, xmm0, xmmword [0x5124d0]
vpaddq xmm0, xmm0, xmmword [0x5124c0]
adc edx, 0
vmovdqu xmmword [esp + 0x210], xmm5
mov dword [edi + 0x34], edx
vpunpckldq xmm2, xmm0, xmm1
vpunpckhdq xmm0, xmm0, xmm1
vpunpckldq xmm1, xmm2, xmm0
vpunpckhdq xmm2, xmm2, xmm0
vmovdqu xmm0, xmmword [esp + 0x490]
vmovdqu xmmword [esp + 0x3f0], xmm1
vmovdqu xmmword [esp + 0x3b0], xmm2
lea esi, [esi]
vpaddd xmm3, xmm6, xmmword [esp + 0x4f0]
sub eax, 1
vpslld xmm4, xmm3, 7
vpsrld xmm3, xmm3, 0x19
vpxor xmm4, xmm4, xmm3
vmovdqu xmm3, xmmword [esp + 0x510]
vpaddd xmm3, xmm3, xmmword [esp + 0x550]
vpxor xmm5, xmm4, xmmword [esp + 0x4d0]
vmovdqu xmmword [esp + 0x4d0], xmm5
vpslld xmm4, xmm3, 7
vpsrld xmm3, xmm3, 0x19
vpxor xmm4, xmm4, xmm3
vpxor xmm4, xmm4, xmm2
vmovdqu xmm2, xmmword [esp + 0x4f0]
vpaddd xmm2, xmm2, xmm5
vmovdqu xmm5, xmmword [esp + 0x590]
vpslld xmm3, xmm2, 9
vpsrld xmm2, xmm2, 0x17
vpxor xmm3, xmm3, xmm2
vpxor xmm2, xmm3, xmm1
vmovdqa xmm3, xmm4
vmovdqu xmm1, xmmword [esp + 0x510]
vmovdqu xmmword [esp + 0x570], xmm2
vmovdqu xmmword [esp + 0x490], xmm3
vpaddd xmm1, xmm1, xmm4
vpslld xmm2, xmm1, 9
vpsrld xmm1, xmm1, 0x17
vpxor xmm2, xmm2, xmm1
vpxor xmm4, xmm2, xmm0
vmovdqu xmm2, xmmword [esp + 0x570]
vpaddd xmm0, xmm2, xmmword [esp + 0x4d0]
vpslld xmm1, xmm0, 0xd
vpsrld xmm0, xmm0, 0x13
vpxor xmm1, xmm6, xmm1
vmovdqa xmm6, xmm4
vmovdqu xmmword [esp + 0x470], xmm6
vpxor xmm1, xmm1, xmm0
vpaddd xmm0, xmm4, xmmword [esp + 0x490]
vmovdqu xmmword [esp + 0x410], xmm1
vpslld xmm3, xmm0, 0xd
vpxor xmm3, xmm3, xmmword [esp + 0x550]
vpsrld xmm0, xmm0, 0x13
vpxor xmm3, xmm3, xmm0
vmovdqu xmm0, xmmword [esp + 0x570]
vpaddd xmm0, xmm0, xmm1
vpslld xmm1, xmm0, 0x12
vpxor xmm1, xmm1, xmmword [esp + 0x4f0]
vpsrld xmm0, xmm0, 0xe
vpxor xmm4, xmm1, xmm0
vpaddd xmm0, xmm3, xmmword [esp + 0x470]
vmovdqu xmmword [esp + 0x4f0], xmm4
vmovdqu xmm4, xmmword [esp + 0x5b0]
vpslld xmm1, xmm0, 0x12
vpxor xmm1, xmm1, xmmword [esp + 0x510]
vpsrld xmm0, xmm0, 0xe
vpxor xmm0, xmm1, xmm0
vmovdqu xmmword [esp + 0x510], xmm0
vmovdqu xmm0, xmmword [esp + 0x5d0]
vpaddd xmm0, xmm0, xmm4
vpslld xmm1, xmm0, 7
vpsrld xmm0, xmm0, 0x19
vpxor xmm1, xmm1, xmm0
vpxor xmm6, xmm1, xmmword [esp + 0x4b0]
vpaddd xmm1, xmm7, xmm5
vmovdqu xmmword [esp + 0x4b0], xmm6
vpslld xmm0, xmm1, 7
vpsrld xmm1, xmm1, 0x19
vpxor xmm0, xmm0, xmm1
vmovdqu xmm1, xmmword [esp + 0x5b0]
vpxor xmm0, xmm0, xmmword [esp + 0x430]
vpaddd xmm4, xmm0, xmmword [esp + 0x590]
vpaddd xmm1, xmm1, xmm6
vpslld xmm2, xmm1, 9
vpsrld xmm1, xmm1, 0x17
vpxor xmm2, xmm2, xmm1
vpslld xmm1, xmm4, 9
vpxor xmm2, xmm2, xmmword [esp + 0x530]
vpsrld xmm4, xmm4, 0x17
vpxor xmm1, xmm1, xmm4
vpaddd xmm4, xmm2, xmmword [esp + 0x4b0]
vpxor xmm1, xmm1, xmmword [esp + 0x450]
vpaddd xmm6, xmm1, xmm0
vpslld xmm5, xmm4, 0xd
vpxor xmm5, xmm5, xmmword [esp + 0x5d0]
vpsrld xmm4, xmm4, 0x13
vpxor xmm5, xmm5, xmm4
vpslld xmm4, xmm6, 0xd
vpsrld xmm6, xmm6, 0x13
vpxor xmm4, xmm7, xmm4
vpxor xmm4, xmm4, xmm6
vpaddd xmm6, xmm2, xmm5
vpslld xmm7, xmm6, 0x12
vpxor xmm7, xmm7, xmmword [esp + 0x5b0]
vpsrld xmm6, xmm6, 0xe
vpxor xmm7, xmm7, xmm6
vpaddd xmm6, xmm0, xmmword [esp + 0x4f0]
vmovdqu xmmword [esp + 0x5b0], xmm7
vpslld xmm7, xmm6, 7
vpsrld xmm6, xmm6, 0x19
vpxor xmm7, xmm7, xmm6
vpaddd xmm6, xmm1, xmm4
vpxor xmm7, xmm7, xmm3
vmovdqu xmmword [esp + 0x550], xmm7
vmovdqu xmm7, xmmword [esp + 0x510]
vpslld xmm3, xmm6, 0x12
vpxor xmm3, xmm3, xmmword [esp + 0x590]
vpsrld xmm6, xmm6, 0xe
vpxor xmm3, xmm3, xmm6
vpaddd xmm6, xmm7, xmmword [esp + 0x4d0]
vpslld xmm7, xmm6, 7
vpsrld xmm6, xmm6, 0x19
vpxor xmm7, xmm7, xmm6
vpxor xmm5, xmm7, xmm5
vmovdqu xmm7, xmmword [esp + 0x550]
vmovdqu xmmword [esp + 0x5d0], xmm5
vpaddd xmm5, xmm7, xmmword [esp + 0x4f0]
vpslld xmm6, xmm5, 9
vpsrld xmm5, xmm5, 0x17
vpxor xmm6, xmm6, xmm5
vpxor xmm6, xmm6, xmm2
vmovdqu xmm5, xmmword [esp + 0x5d0]
vmovdqu xmmword [esp + 0x530], xmm6
vmovdqu xmm6, xmmword [esp + 0x510]
vpaddd xmm2, xmm5, xmm6
vpslld xmm5, xmm2, 9
vpsrld xmm2, xmm2, 0x17
vpxor xmm5, xmm5, xmm2
vpxor xmm1, xmm5, xmm1
vmovdqa xmm5, xmm1
vmovdqu xmmword [esp + 0x450], xmm1
vmovdqu xmm1, xmmword [esp + 0x530]
vpaddd xmm1, xmm1, xmm7
vpslld xmm2, xmm1, 0xd
vpsrld xmm1, xmm1, 0x13
vpxor xmm2, xmm2, xmm1
vpxor xmm7, xmm2, xmm0
vmovdqa xmm2, xmm5
vmovdqu xmm0, xmmword [esp + 0x5d0]
vmovdqu xmmword [esp + 0x430], xmm7
vpaddd xmm0, xmm0, xmm5
vpslld xmm1, xmm0, 0xd
vpsrld xmm0, xmm0, 0x13
vpxor xmm1, xmm1, xmm0
vmovdqu xmm0, xmmword [esp + 0x530]
vpxor xmm5, xmm1, xmmword [esp + 0x4d0]
vmovdqu xmmword [esp + 0x4d0], xmm5
vpaddd xmm0, xmm0, xmm7
vpslld xmm7, xmm0, 0x12
vpsrld xmm0, xmm0, 0xe
vpxor xmm7, xmm7, xmm0
vpxor xmm0, xmm7, xmmword [esp + 0x4f0]
vmovdqu xmmword [esp + 0x4f0], xmm0
vpaddd xmm0, xmm5, xmm2
vmovdqu xmm5, xmmword [esp + 0x490]
vpslld xmm1, xmm0, 0x12
vmovdqu xmm2, xmmword [esp + 0x5b0]
vpsrld xmm0, xmm0, 0xe
vpxor xmm1, xmm1, xmm0
vpxor xmm0, xmm1, xmm6
vmovdqu xmmword [esp + 0x510], xmm0
vpaddd xmm0, xmm2, xmm5
vpslld xmm1, xmm0, 7
vpsrld xmm0, xmm0, 0x19
vpxor xmm1, xmm1, xmm0
vpxor xmm7, xmm1, xmm4
vpaddd xmm0, xmm3, xmmword [esp + 0x4b0]
vpslld xmm6, xmm0, 7
vpsrld xmm0, xmm0, 0x19
vpxor xmm6, xmm6, xmm0
vpaddd xmm0, xmm7, xmmword [esp + 0x5b0]
vpxor xmm6, xmm6, xmmword [esp + 0x410]
vpaddd xmm2, xmm6, xmm3
vpslld xmm1, xmm0, 9
vpsrld xmm0, xmm0, 0x17
vpxor xmm1, xmm1, xmm0
vpslld xmm0, xmm2, 9
vpxor xmm1, xmm1, xmmword [esp + 0x570]
vpaddd xmm4, xmm1, xmm7
vpsrld xmm2, xmm2, 0x17
vpxor xmm0, xmm0, xmm2
vpslld xmm2, xmm4, 0xd
vpxor xmm0, xmm0, xmmword [esp + 0x470]
vpsrld xmm4, xmm4, 0x13
vpxor xmm2, xmm2, xmm4
vpaddd xmm4, xmm0, xmm6
vpxor xmm2, xmm2, xmm5
vpslld xmm5, xmm4, 0xd
vpsrld xmm4, xmm4, 0x13
vpxor xmm5, xmm5, xmm4
vpaddd xmm4, xmm2, xmm1
vpxor xmm5, xmm5, xmmword [esp + 0x4b0]
vmovdqu xmmword [esp + 0x4b0], xmm5
vpslld xmm5, xmm4, 0x12
vpsrld xmm4, xmm4, 0xe
vpxor xmm5, xmm5, xmm4
vpxor xmm4, xmm5, xmmword [esp + 0x5b0]
vmovdqu xmmword [esp + 0x5b0], xmm4
vpaddd xmm4, xmm0, xmmword [esp + 0x4b0]
vpslld xmm5, xmm4, 0x12
vpsrld xmm4, xmm4, 0xe
vpxor xmm5, xmm5, xmm4
vpxor xmm3, xmm5, xmm3
vmovdqu xmmword [esp + 0x590], xmm3
jne 0x41aa18
mov eax, dword [esp + 0x3e4]
add esi, 0x100
vmovdqu xmmword [esp + 0x570], xmm7
vmovdqu xmm3, xmmword [esp + 0x250]
vmovdqu xmmword [esp + 0x490], xmm0
vmovdqu xmm7, xmmword [esp + 0x4f0]
vmovdqu xmm4, xmmword [esp + 0x230]
vpaddd xmm4, xmm4, xmmword [esp + 0x550]
vpaddd xmm3, xmm3, xmm7
add eax, 0x100
vmovdqu xmm7, xmmword [esp + 0x2b0]
vpaddd xmm0, xmm7, xmmword [esp + 0x530]
vmovdqu xmm5, xmmword [esp + 0x210]
vpaddd xmm5, xmm5, xmmword [esp + 0x430]
vmovdqu xmmword [esp + 0x550], xmm4
vpunpckldq xmm4, xmm3, xmm4
vpunpckhdq xmm3, xmm3, xmmword [esp + 0x550]
vpunpckldq xmm7, xmm0, xmm5
vpunpckhdq xmm0, xmm0, xmm5
vpunpcklqdq xmm5, xmm4, xmm7
vpunpckhqdq xmm4, xmm4, xmm7
vpxor xmm5, xmm5, xmmword [esi - 0x100]
vpunpcklqdq xmm7, xmm3, xmm0
vmovdqu xmmword [eax - 0x100], xmm5
vpunpckhqdq xmm0, xmm3, xmm0
vpxor xmm4, xmm4, xmmword [esi - 0xc0]
vmovdqu xmmword [eax - 0xc0], xmm4
vpxor xmm3, xmm7, xmmword [esi - 0x80]
vmovdqu xmm7, xmmword [esp + 0x2f0]
vmovdqu xmmword [eax - 0x80], xmm3
vpxor xmm0, xmm0, xmmword [esi - 0x40]
vmovdqu xmm3, xmmword [esp + 0x390]
vpaddd xmm5, xmm3, xmmword [esp + 0x510]
vmovdqu xmm3, xmmword [esp + 0x290]
vmovdqu xmmword [eax - 0x40], xmm0
vpaddd xmm3, xmm3, xmmword [esp + 0x4d0]
vmovdqu xmmword [esp + 0x550], xmm5
vpunpckldq xmm4, xmm3, xmm5
vpaddd xmm5, xmm7, xmmword [esp + 0x450]
vpunpckhdq xmm3, xmm3, xmmword [esp + 0x550]
vmovdqu xmm7, xmmword [esp + 0x350]
vpaddd xmm0, xmm7, xmmword [esp + 0x5d0]
vpunpckldq xmm7, xmm0, xmm5
vpunpckhdq xmm0, xmm0, xmm5
vpunpcklqdq xmm5, xmm4, xmm7
vpunpckhqdq xmm4, xmm4, xmm7
vpxor xmm5, xmm5, xmmword [esi - 0xf0]
vpunpcklqdq xmm7, xmm3, xmm0
vmovdqu xmmword [eax - 0xf0], xmm5
vpunpckhqdq xmm0, xmm3, xmm0
vpxor xmm4, xmm4, xmmword [esi - 0xb0]
vpaddd xmm2, xmm2, xmmword [esp + 0x3b0]
vmovdqu xmmword [eax - 0xb0], xmm4
vpxor xmm3, xmm7, xmmword [esi - 0x70]
vpaddd xmm1, xmm1, xmmword [esp + 0x3f0]
vmovdqu xmmword [eax - 0x70], xmm3
vpxor xmm0, xmm0, xmmword [esi - 0x30]
vmovdqu xmm5, xmmword [esp + 0x330]
vmovdqu xmmword [eax - 0x30], xmm0
vpaddd xmm4, xmm5, xmmword [esp + 0x570]
vmovdqu xmm7, xmmword [esp + 0x3d0]
vpunpckldq xmm3, xmm1, xmm2
vpaddd xmm0, xmm7, xmmword [esp + 0x5b0]
vpunpckhdq xmm1, xmm1, xmm2
vmovdqu xmm7, xmmword [esp + 0x2d0]
vpunpckldq xmm5, xmm0, xmm4
vpunpckhdq xmm0, xmm0, xmm4
vpunpcklqdq xmm2, xmm3, xmm5
vpunpcklqdq xmm4, xmm1, xmm0
vpxor xmm2, xmm2, xmmword [esi - 0xe0]
vpunpckhqdq xmm3, xmm3, xmm5
vmovdqu xmmword [eax - 0xe0], xmm2
vpunpckhqdq xmm0, xmm1, xmm0
vpxor xmm3, xmm3, xmmword [esi - 0xa0]
vpaddd xmm1, xmm7, xmmword [esp + 0x490]
vmovdqu xmmword [eax - 0xa0], xmm3
vpxor xmm4, xmm4, xmmword [esi - 0x60]
vpaddd xmm3, xmm6, xmmword [esp + 0x310]
vmovdqu xmmword [eax - 0x60], xmm4
vpxor xmm0, xmm0, xmmword [esi - 0x20]
vmovdqu xmm7, xmmword [esp + 0x370]
vmovdqu xmmword [eax - 0x20], xmm0
vpaddd xmm4, xmm7, xmmword [esp + 0x590]
vmovdqu xmm7, xmmword [esp + 0x270]
vpunpckldq xmm2, xmm3, xmm1
vpaddd xmm0, xmm7, xmmword [esp + 0x4b0]
vpunpckhdq xmm1, xmm3, xmm1
vpunpckldq xmm5, xmm0, xmm4
vpunpckhdq xmm0, xmm0, xmm4
vpunpcklqdq xmm4, xmm2, xmm5
vpunpcklqdq xmm3, xmm1, xmm0
vpunpckhqdq xmm2, xmm2, xmm5
vpunpckhqdq xmm0, xmm1, xmm0
vpxor xmm1, xmm4, xmmword [esi - 0xd0]
vmovdqu xmmword [eax - 0xd0], xmm1
vpxor xmm1, xmm2, xmmword [esi - 0x90]
vmovdqu xmmword [eax - 0x90], xmm1
vpxor xmm1, xmm3, xmmword [esi - 0x50]
vmovdqu xmmword [eax - 0x50], xmm1
vpxor xmm0, xmm0, xmmword [esi - 0x10]
and dword [esp + 0x3e8], 0xff
vmovdqu xmmword [eax - 0x10], xmm0
mov dword [esp + 0x3ec], 0
mov dword [esp + 0x3e4], eax
mov ecx, dword [esp + 0x3e8]
mov eax, 0x3f
mov ebx, dword [esp + 0x3ec]
cmp eax, ecx
mov eax, 0
sbb eax, ebx
jae 0x41bd9c
mov eax, ecx
mov edx, ebx
mov ebx, dword [esp + 0x3e4]
mov dword [esp + 0x5b0], edi
add eax, 0xffffffc0
adc edx, 0xffffffff
shrd eax, edx, 6
add eax, 1
shl eax, 6
mov edx, eax
lea eax, [esi + eax]
mov dword [esp + 0x4f0], edx
mov dword [esp + 0x590], eax
mov eax, dword [esp + 0x5b0]
vmovdqu xmm4, xmmword [eax]
vmovdqu xmm3, xmmword [eax + 0x10]
vmovdqu xmm2, xmmword [eax + 0x20]
vmovdqa xmm0, xmm4
vmovdqu xmmword [esp + 0x530], xmm4
vmovdqu xmm1, xmmword [eax + 0x30]
vmovdqa xmm6, xmm3
mov eax, 5
vmovdqu xmmword [esp + 0x510], xmm3
vmovdqu xmmword [esp + 0x570], xmm2
vmovdqu xmmword [esp + 0x550], xmm1
lea esi, [esi]
vpaddd xmm3, xmm0, xmm6
sub eax, 1
vpslld xmm4, xmm3, 7
vpsrld xmm3, xmm3, 0x19
vpxor xmm4, xmm4, xmm3
vpxor xmm1, xmm4, xmm1
vpaddd xmm5, xmm1, xmm0
vpshufd xmm3, xmm1, 0x93
vpslld xmm4, xmm5, 9
vpsrld xmm5, xmm5, 0x17
vpxor xmm4, xmm4, xmm5
vpxor xmm4, xmm4, xmm2
vpaddd xmm5, xmm4, xmm1
vpshufd xmm2, xmm4, 0x4e
vpslld xmm1, xmm5, 0xd
vpsrld xmm5, xmm5, 0x13
vpxor xmm1, xmm6, xmm1
vpxor xmm1, xmm1, xmm5
vpaddd xmm4, xmm4, xmm1
vpshufd xmm1, xmm1, 0x39
vpslld xmm5, xmm4, 0x12
vpsrld xmm4, xmm4, 0xe
vpxor xmm5, xmm0, xmm5
vpxor xmm5, xmm5, xmm4
vpaddd xmm4, xmm3, xmm5
vpslld xmm0, xmm4, 7
vpsrld xmm4, xmm4, 0x19
vpxor xmm1, xmm1, xmm0
vpxor xmm0, xmm1, xmm4
vpaddd xmm4, xmm0, xmm5
vpshufd xmm1, xmm0, 0x93
vpslld xmm6, xmm4, 9
vpsrld xmm4, xmm4, 0x17
vpxor xmm2, xmm2, xmm6
vpxor xmm2, xmm2, xmm4
vpaddd xmm0, xmm2, xmm0
vpshufd xmm4, xmm2, 0x4e
vpsrld xmm6, xmm0, 0x13
vpslld xmm7, xmm0, 0xd
vpxor xmm0, xmm3, xmm7
vpxor xmm0, xmm0, xmm6
vpaddd xmm2, xmm2, xmm0
vpshufd xmm0, xmm0, 0x39
vpslld xmm3, xmm2, 0x12
vpsrld xmm2, xmm2, 0xe
vpxor xmm2, xmm3, xmm2
vpxor xmm2, xmm2, xmm5
vpaddd xmm3, xmm1, xmm2
vpslld xmm5, xmm3, 7
vpsrld xmm3, xmm3, 0x19
vpxor xmm0, xmm0, xmm5
vpxor xmm0, xmm0, xmm3
vpaddd xmm3, xmm0, xmm2
vpshufd xmm7, xmm0, 0x93
vpslld xmm5, xmm3, 9
vpsrld xmm3, xmm3, 0x17
vpxor xmm4, xmm4, xmm5
vpxor xmm4, xmm4, xmm3
vpaddd xmm0, xmm4, xmm0
vpshufd xmm3, xmm4, 0x4e
vpslld xmm5, xmm0, 0xd
vpsrld xmm0, xmm0, 0x13
vpxor xmm1, xmm1, xmm5
vpxor xmm1, xmm1, xmm0
vpaddd xmm4, xmm4, xmm1
vpshufd xmm1, xmm1, 0x39
vpslld xmm0, xmm4, 0x12
vpsrld xmm4, xmm4, 0xe
vpxor xmm0, xmm0, xmm4
vpxor xmm0, xmm0, xmm2
vpaddd xmm2, xmm7, xmm0
vpslld xmm4, xmm2, 7
vpsrld xmm2, xmm2, 0x19
vpxor xmm1, xmm1, xmm4
vpxor xmm1, xmm1, xmm2
vpaddd xmm2, xmm1, xmm0
vpshufd xmm6, xmm1, 0x93
vmovdqu xmmword [esp + 0x5d0], xmm6
vpslld xmm4, xmm2, 9
vpsrld xmm2, xmm2, 0x17
vpxor xmm3, xmm3, xmm4
vpxor xmm3, xmm3, xmm2
vpaddd xmm1, xmm3, xmm1
vpshufd xmm5, xmm3, 0x4e
vmovdqa xmm2, xmm5
vpslld xmm4, xmm1, 0xd
vpsrld xmm1, xmm1, 0x13
vpxor xmm7, xmm7, xmm4
vpxor xmm7, xmm7, xmm1
vpaddd xmm3, xmm3, xmm7
vpshufd xmm7, xmm7, 0x39
vmovdqa xmm1, xmm7
vpslld xmm4, xmm3, 0x12
vpsrld xmm3, xmm3, 0xe
vpxor xmm4, xmm4, xmm3
vpxor xmm0, xmm4, xmm0
jne 0x41b240
vmovdqu xmm4, xmmword [esp + 0x530]
vpaddd xmm5, xmm5, xmmword [esp + 0x570]
vpaddd xmm1, xmm7, xmmword [esp + 0x550]
vmovdqu xmm3, xmmword [esp + 0x510]
vpaddd xmm0, xmm0, xmm4
vmovd edx, xmm5
vmovd eax, xmm1
xor edx, dword [esi + 0x20]
vpaddd xmm6, xmm6, xmm3
xor eax, dword [esi + 0x10]
vmovd edi, xmm0
vmovd ecx, xmm6
xor edi, dword [esi]
xor ecx, dword [esi + 0x30]
mov dword [ebx + 0x20], edx
vpextrd edx, xmm5, 1
mov dword [ebx + 0x10], eax
vpextrd eax, xmm1, 1
mov dword [ebx], edi
vpextrd edi, xmm0, 1
mov dword [ebx + 0x30], ecx
vpextrd ecx, xmm6, 1
xor edx, dword [esi + 0x34]
xor ecx, dword [esi + 4]
xor eax, dword [esi + 0x24]
xor edi, dword [esi + 0x14]
mov dword [ebx + 0x34], edx
vpextrd edx, xmm5, 2
mov dword [ebx + 4], ecx
vpextrd ecx, xmm6, 2
mov dword [ebx + 0x24], eax
vpextrd eax, xmm1, 2
mov dword [ebx + 0x14], edi
vpextrd edi, xmm0, 2
xor ecx, dword [esi + 0x18]
xor edx, dword [esi + 8]
xor eax, dword [esi + 0x38]
xor edi, dword [esi + 0x28]
mov dword [ebx + 0x18], ecx
vpextrd ecx, xmm6, 3
mov dword [ebx + 8], edx
vpextrd edx, xmm5, 3
mov dword [ebx + 0x38], eax
vpextrd eax, xmm1, 3
mov dword [ebx + 0x28], edi
vpextrd edi, xmm0, 3
xor edi, dword [esi + 0x3c]
xor eax, dword [esi + 0xc]
xor ecx, dword [esi + 0x2c]
xor edx, dword [esi + 0x1c]
mov dword [ebx + 0x3c], edi
mov edi, dword [esp + 0x5b0]
mov dword [ebx + 0xc], eax
mov dword [ebx + 0x2c], ecx
mov dword [ebx + 0x1c], edx
mov eax, dword [edi + 0x20]
mov dword [esp + 0x5d0], eax
add eax, 1
cmp eax, 1
mov dword [edi + 0x20], eax
mov eax, dword [esp + 0x590]
adc dword [edi + 0x34], 0
add esi, 0x40
add ebx, 0x40
cmp esi, eax
jne 0x41b1ef
mov edx, dword [esp + 0x4f0]
mov dword [esp + 0x3ec], 0
add dword [esp + 0x3e4], edx
and dword [esp + 0x3e8], 0x3f
mov ebx, dword [esp + 0x3e8]
mov esi, dword [esp + 0x3ec]
mov eax, ebx
or eax, esi
je 0x41b8f0
vmovdqu xmm3, xmmword [edi + 0x10]
mov eax, 5
vmovdqu xmm4, xmmword [edi]
vmovdqu xmmword [esp + 0x5d0], xmm3
vmovdqu xmm1, xmmword [edi + 0x30]
vmovdqu xmm2, xmmword [edi + 0x20]
vmovdqa xmm0, xmm4
vmovdqu xmmword [esp + 0x530], xmm3
vmovdqu xmmword [esp + 0x570], xmm1
vmovdqa xmm3, xmm1
vmovdqu xmmword [esp + 0x5b0], xmm2
vmovdqu xmmword [esp + 0x550], xmm4
lea esi, [esi]
vmovdqu xmm7, xmmword [esp + 0x5d0]
sub eax, 1
vpaddd xmm1, xmm0, xmm7
vpslld xmm4, xmm1, 7
vpsrld xmm1, xmm1, 0x19
vpxor xmm4, xmm4, xmm1
vpxor xmm4, xmm4, xmm3
vpaddd xmm5, xmm4, xmm0
vpshufd xmm1, xmm4, 0x93
vpslld xmm3, xmm5, 9
vpsrld xmm5, xmm5, 0x17
vpxor xmm3, xmm3, xmm5
vpxor xmm3, xmm3, xmm2
vpaddd xmm4, xmm3, xmm4
vpsrld xmm5, xmm4, 0x13
vpslld xmm2, xmm4, 0xd
vpshufd xmm4, xmm3, 0x4e
vpxor xmm2, xmm2, xmm7
vpxor xmm2, xmm2, xmm5
vpaddd xmm3, xmm3, xmm2
vpshufd xmm2, xmm2, 0x39
vpsrld xmm5, xmm3, 0xe
vpslld xmm6, xmm3, 0x12
vpxor xmm3, xmm0, xmm6
vpxor xmm3, xmm3, xmm5
vpaddd xmm5, xmm1, xmm3
vpslld xmm0, xmm5, 7
vpsrld xmm5, xmm5, 0x19
vpxor xmm2, xmm2, xmm0
vpxor xmm0, xmm2, xmm5
vpaddd xmm6, xmm0, xmm3
vpshufd xmm2, xmm0, 0x93
vpslld xmm5, xmm6, 9
vpsrld xmm6, xmm6, 0x17
vpxor xmm4, xmm4, xmm5
vpxor xmm5, xmm4, xmm6
vpaddd xmm0, xmm5, xmm0
vpshufd xmm4, xmm5, 0x4e
vpslld xmm6, xmm0, 0xd
vpsrld xmm0, xmm0, 0x13
vpxor xmm1, xmm1, xmm6
vpxor xmm1, xmm1, xmm0
vpaddd xmm5, xmm5, xmm1
vpshufd xmm1, xmm1, 0x39
vpslld xmm6, xmm5, 0x12
vpsrld xmm0, xmm5, 0xe
vpxor xmm5, xmm6, xmm0
vpxor xmm5, xmm5, xmm3
vpaddd xmm3, xmm2, xmm5
vpslld xmm0, xmm3, 7
vpsrld xmm3, xmm3, 0x19
vpxor xmm1, xmm1, xmm0
vpxor xmm0, xmm1, xmm3
vpaddd xmm1, xmm0, xmm5
vpshufd xmm3, xmm0, 0x93
vpslld xmm6, xmm1, 9
vpsrld xmm1, xmm1, 0x17
vpxor xmm4, xmm4, xmm6
vpxor xmm4, xmm4, xmm1
vpaddd xmm0, xmm4, xmm0
vpshufd xmm1, xmm4, 0x4e
vpsrld xmm6, xmm0, 0x13
vpslld xmm7, xmm0, 0xd
vpxor xmm0, xmm2, xmm7
vpxor xmm0, xmm0, xmm6
vpaddd xmm4, xmm4, xmm0
vpshufd xmm0, xmm0, 0x39
vpslld xmm6, xmm4, 0x12
vpsrld xmm2, xmm4, 0xe
vpxor xmm4, xmm6, xmm2
vpxor xmm4, xmm4, xmm5
vpaddd xmm2, xmm3, xmm4
vpslld xmm5, xmm2, 7
vpsrld xmm2, xmm2, 0x19
vpxor xmm0, xmm0, xmm5
vpxor xmm0, xmm0, xmm2
vpaddd xmm2, xmm0, xmm4
vpshufd xmm5, xmm0, 0x93
vmovdqu xmmword [esp + 0x5d0], xmm5
vpslld xmm6, xmm2, 9
vpsrld xmm2, xmm2, 0x17
vpxor xmm1, xmm1, xmm6
vpxor xmm1, xmm1, xmm2
vpaddd xmm0, xmm1, xmm0
vpshufd xmm6, xmm1, 0x4e
vmovdqa xmm2, xmm6
vpslld xmm7, xmm0, 0xd
vpsrld xmm0, xmm0, 0x13
vpxor xmm3, xmm3, xmm7
vpxor xmm3, xmm3, xmm0
vpaddd xmm0, xmm1, xmm3
vpshufd xmm7, xmm3, 0x39
vmovdqa xmm3, xmm7
vpslld xmm1, xmm0, 0x12
vpsrld xmm0, xmm0, 0xe
vpxor xmm1, xmm1, xmm0
vpxor xmm0, xmm1, xmm4
jne 0x41b598
vmovdqu xmm4, xmmword [esp + 0x550]
vpaddd xmm1, xmm7, xmmword [esp + 0x570]
vpaddd xmm6, xmm6, xmmword [esp + 0x5b0]
vmovdqu xmm3, xmmword [esp + 0x530]
vpaddd xmm0, xmm0, xmm4
vpextrd esi, xmm6, 1
vpextrd ebx, xmm6, 2
vmovd dword [esp + 0x5b0], xmm6
vpaddd xmm5, xmm5, xmm3
vpextrd ecx, xmm0, 1
vmovdqa xmm2, xmm0
vmovdqa xmm3, xmm1
vpsrldq xmm4, xmm0, 8
vpsrldq xmm6, xmm6, 0xc
vpextrd dword [esp + 0x570], xmm5, 2
vpextrd dword [esp + 0x550], xmm0, 3
vmovd xmm0, dword [esp + 0x570]
vpinsrd xmm3, xmm3, ecx, 1
vpsrldq xmm7, xmm1, 8
vmovd dword [esp + 0x5d0], xmm5
mov ecx, dword [esp + 0x3e8]
vpextrd edi, xmm1, 1
vpsrldq xmm1, xmm1, 0xc
vpextrd edx, xmm5, 1
vpunpckldq xmm6, xmm0, xmm6
vpunpcklqdq xmm3, xmm3, xmm6
vmovd xmm6, ebx
mov ebx, dword [esp + 0x3ec]
vpunpckldq xmm1, xmm6, xmm1
vpinsrd xmm2, xmm2, edx, 1
vpunpcklqdq xmm2, xmm2, xmm1
vpinsrd xmm0, xmm7, dword [esp + 0x550], 1
vmovd xmm7, dword [esp + 0x5d0]
vpsrldq xmm5, xmm5, 0xc
vinserti128 ymm2, ymm2, xmm3, 1
vmovdqu ymmword [esp + 0x5f0], ymm2
add ecx, 0xffffffff
vpunpckldq xmm4, xmm4, xmm5
vpinsrd xmm1, xmm7, esi, 1
mov esi, 0xe
adc ebx, 0xffffffff
vmovd xmm7, dword [esp + 0x5b0]
cmp esi, ecx
mov esi, eax
vpunpcklqdq xmm1, xmm1, xmm0
sbb esi, ebx
vpinsrd xmm0, xmm7, edi, 1
vpunpcklqdq xmm0, xmm0, xmm4
vinserti128 ymm0, ymm0, xmm1, 1
vmovdqu ymmword [esp + 0x610], ymm0
jae 0x41b8a1
mov esi, dword [esp + 0x590]
mov edx, dword [esp + 0x3e4]
lea edi, [esi + 1]
mov esi, edx
sub esi, edi
cmp esi, 0x1e
ja 0x41b8fb
mov ebx, dword [esp + 0x3e8]
lea ecx, [esp + 0x5f0]
mov esi, dword [esp + 0x590]
mov edi, dword [esp + 0x3e4]
lea esi, [esi]
movzx edx, byte [ecx + eax]
xor dl, byte [esi + eax]
mov byte [edi + eax], dl
add eax, 1
cmp ebx, eax
jne 0x41b8c0
mov dword [esp], ecx
mov dword [esp + 4], 0x40
vzeroupper
call fcn.00408e00
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
vzeroupper
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, 0x1e
mov edi, eax
cmp esi, ecx
sbb edi, ebx
jae 0x41bda8
mov esi, dword [esp + 0x590]
mov ebx, dword [esp + 0x3e8]
vmovdqu xmm7, xmmword [esi]
vinserti128 ymm0, ymm7, xmmword [esi + 0x10], 1
vpxor ymm0, ymm0, ymm2
vmovdqu xmmword [edx], xmm0
mov esi, dword [esp + 0x3ec]
mov ecx, ebx
vextracti128 xmmword [edx + 0x10], ymm0, 1
vmovdqu xmmword [esp + 0x5d0], xmm7
xor ecx, 0x20
or ecx, esi
mov edx, esi
je 0x41bd90
mov ecx, ebx
mov ebx, esi
mov edi, edx
mov esi, ecx
mov edx, 0xe
add esi, 0xffffffe0
adc edi, 0xffffffff
add ecx, 0xffffffdf
adc ebx, 0xffffffff
cmp edx, ecx
sbb eax, ebx
mov eax, 0x20
jae 0x41b9b6
mov edx, 0x20
mov ebx, dword [esp + 0x590]
add eax, 0x10
vmovdqu xmm7, xmmword [ebx + edx]
vpxor xmm0, xmm7, xmmword [esp + edx + 0x5f0]
mov ebx, dword [esp + 0x3e4]
vmovdqu xmmword [esp + 0x5d0], xmm7
vmovdqu xmmword [ebx + edx], xmm0
mov edx, esi
xor edx, 0x10
or edx, edi
je 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
mov esi, dword [esp + 0x3e8]
mov edi, dword [esp + 0x3ec]
movzx edx, byte [ebx + eax]
mov ebx, dword [esp + 0x3e4]
xor dl, byte [esp + eax + 0x5f0]
mov byte [ebx + eax], dl
mov ebx, dword [esp + 0x5d4]
lea edx, [eax + 1]
cmp edx, esi
mov dword [esp + 0x5d0], edx
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 1]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 2]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 1], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 2]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 3]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 2], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 3]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 4]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 3], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 4]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 5]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 4], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 5]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 6]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 5], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 6]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 7]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 6], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 7]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 8]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 7], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 8]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 9]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 8], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 9]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 0xa]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 9], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 0xa]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 0xb]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 0xa], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 0xb]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 0xc]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 0xb], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 0xc]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 0xd]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 0xc], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
mov dword [esp + 0x5d4], 0
movzx ecx, byte [ebx + eax + 0xd]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
lea edx, [eax + 0xe]
cmp edx, esi
mov dword [esp + 0x5d0], edx
mov byte [ebx + eax + 0xd], cl
mov ebx, dword [esp + 0x5d4]
sbb ebx, edi
jae 0x41bd90
mov ebx, dword [esp + 0x590]
movzx ecx, byte [ebx + eax + 0xe]
mov ebx, dword [esp + 0x3e4]
xor cl, byte [esp + edx + 0x5f0]
mov byte [ebx + eax + 0xe], cl
lea ecx, [esp + 0x5f0]
jmp 0x41b8d1
mov dword [esp + 0x590], esi
jmp 0x41b52c
mov esi, dword [esp + 0x3e8]
xor edx, edx
mov edi, dword [esp + 0x3ec]
jmp 0x41b97c