Function at 0x140024100
Capabilities:
Encrypt data using xtea

Disassembly:
push rsi
push rdi
sub rsp, 0x8e8
cmp qword [0x1401c0228], 0
jne 0x14002411b
xor al, al
jmp 0x1400260d4
cmp qword [0x1401c0238], 0
je 0x14002412a
call fcn.1400260e0
lea rax, [rsp + 0x670]
lea rcx, [0x1401c0198]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1c0]
lea rcx, [rsp + 0x670]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x6c], 0
jmp 0x140024177
mov eax, dword [rsp + 0x6c]
inc eax
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x6c]
mov qword [rsp + 0x398], rax
xor edx, edx
mov eax, 0x29c
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x398]
cmp rcx, rax
jae 0x140024423
lea rax, [rsp + 0x600]
lea rcx, [rsp + 0x1c0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x6c]
shl eax, 3
cdqe
lea rcx, str.DXBC
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x120], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x120]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x64], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x120]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x118], 0x9e3779b9
imul eax, dword [rsp + 0x118], 0x40
mov dword [rsp + 0x60], eax
mov dword [rsp + 0xe8], 0
jmp 0x140024243
mov eax, dword [rsp + 0xe8]
inc eax
mov dword [rsp + 0xe8], eax
cmp dword [rsp + 0xe8], 0x40
jae 0x1400242e2
mov eax, dword [rsp + 0x64]
shl eax, 4
mov ecx, dword [rsp + 0x64]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x60]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x600]
mov edx, dword [rsp + 0x60]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x68]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x118]
mov ecx, dword [rsp + 0x60]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x68]
shl eax, 4
mov ecx, dword [rsp + 0x68]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x60]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x600]
mov edx, dword [rsp + 0x60]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x64]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x64], eax
jmp 0x140024233
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x120]
mov edx, dword [rsp + 0x64]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x120]
mov edx, dword [rsp + 0x68]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x1c0]
mov qword [rsp + 0x2b0], rax
movsxd rax, dword [rsp + 0x6c]
imul rax, rax, 0x29c
mov rcx, qword [rsp + 0x2b0]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x2b0]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x1c0]
mov dword [rsp + 0x1a4], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x1c0]
mov qword [rsp + 0x2b8], rax
mov rax, qword [rsp + 0x2b8]
mov eax, dword [rax]
mov dword [rsp + 0x19c], eax
mov eax, dword [rsp + 0x1a4]
mov ecx, dword [rsp + 0x19c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x2b8]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x1c0]
mov dword [rsp + 0x1a0], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x1c0]
mov qword [rsp + 0x2c0], rax
mov rax, qword [rsp + 0x2c0]
mov eax, dword [rax]
mov dword [rsp + 0x1ac], eax
mov eax, dword [rsp + 0x1a0]
mov ecx, dword [rsp + 0x1ac]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x2c0]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x1c0]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x2c8]
mov eax, dword [rax]
add eax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x2c8]
mov dword [rcx], eax
jmp 0x14002416d
lea rax, [rsp + 0x680]
lea rcx, [0x1401c01a8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1d0]
lea rcx, [rsp + 0x680]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x7c], 0
jmp 0x140024470
mov eax, dword [rsp + 0x7c]
inc eax
mov dword [rsp + 0x7c], eax
movsxd rax, dword [rsp + 0x7c]
mov qword [rsp + 0x3a0], rax
xor edx, edx
mov eax, 0x4d0
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x3a0]
cmp rcx, rax
jae 0x14002471c
lea rax, [rsp + 0x610]
lea rcx, [rsp + 0x1d0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x7c]
shl eax, 3
cdqe
lea rcx, str.DXBCSV_ve
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x128], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x128]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x74], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x128]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x11c], 0x9e3779b9
imul eax, dword [rsp + 0x11c], 0x40
mov dword [rsp + 0x44], eax
mov dword [rsp + 0xec], 0
jmp 0x14002453c
mov eax, dword [rsp + 0xec]
inc eax
mov dword [rsp + 0xec], eax
cmp dword [rsp + 0xec], 0x40
jae 0x1400245db
mov eax, dword [rsp + 0x74]
shl eax, 4
mov ecx, dword [rsp + 0x74]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x74]
mov ecx, dword [rsp + 0x44]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x610]
mov edx, dword [rsp + 0x44]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x78]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x11c]
mov ecx, dword [rsp + 0x44]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x78]
shl eax, 4
mov ecx, dword [rsp + 0x78]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x78]
mov ecx, dword [rsp + 0x44]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x610]
mov edx, dword [rsp + 0x44]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x74]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x74], eax
jmp 0x14002452c
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x128]
mov edx, dword [rsp + 0x74]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x128]
mov edx, dword [rsp + 0x78]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x1d0]
mov qword [rsp + 0x2d0], rax
movsxd rax, dword [rsp + 0x7c]
imul rax, rax, 0x4d0
mov rcx, qword [rsp + 0x2d0]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x2d0]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x1d0]
mov dword [rsp + 0x1b0], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x1d0]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x2d8]
mov eax, dword [rax]
mov dword [rsp + 0x1b4], eax
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0x1b4]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x2d8]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x1d0]
mov dword [rsp + 0x1b8], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x1d0]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0x220]
mov eax, dword [rax]
mov dword [rsp + 0x1bc], eax
mov eax, dword [rsp + 0x1b8]
mov ecx, dword [rsp + 0x1bc]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x220]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x1d0]
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x228]
mov eax, dword [rax]
add eax, dword [rsp + 0x7c]
mov rcx, qword [rsp + 0x228]
mov dword [rcx], eax
jmp 0x140024466
mov rax, qword [0x1401c01c8]
cmp qword [rax + 0x60], 0
je 0x140024782
mov rax, qword [0x1401c01c8]
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0x3a8]
mov qword [rsp + 0x3b0], rax
lea rax, [0x1401c0208]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x4d0
lea rdx, str.DXBCSV_ve
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x3b0]
test eax, eax
je 0x140024780
jmp 0x140025ae8
jmp 0x1400247cb
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x3b8], rax
lea rax, [0x1401c0208]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x4d0
lea rdx, str.DXBCSV_ve
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x3b8]
test eax, eax
je 0x1400247cb
jmp 0x140025ae8
lea rax, [rsp + 0x30]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x31]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x30]
mov byte [rsp + 0xa0], al
movzx eax, byte [rsp + 0x31]
mov byte [rsp + 0xa8], al
movabs rax, 0xb9c84b72d4fb7c17
mov qword [rsp + 0x3d0], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x3d8], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rsp + rax + 0x3d0]
mov qword [rsp + rcx + 0x2e0], rax
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x2e0]
mov qword [rsp + 0x468], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rax, qword [rsp + rax + 0x3d0]
mov qword [rsp + rcx + 0x2e0], rax
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2e0]
mov qword [rsp + 0x470], rax
lea rax, [rsp + 0x478]
mov r8, rax
lea rdx, [rsp + 0x468]
lea rcx, [rsp + 0x7c0]
call fcn.140001eb0
lea rax, [rsp + 0x2e0]
mov qword [rsp + 0x100], rax
mov eax, 8
imul rax, rax, 0
movabs rcx, 0xf78702269da83347
mov qword [rsp + rax + 0x590], rcx
movabs rax, 0xf78702269da83347
mov qword [rsp + 0x480], rax
mov eax, 8
imul rax, rax, 1
movabs rcx, 0x400c3a276946cce4
mov qword [rsp + rax + 0x590], rcx
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x488], rax
lea rax, [rsp + 0x490]
mov r8, rax
lea rdx, [rsp + 0x480]
lea rcx, [rsp + 0x790]
call fcn.140001eb0
movabs rax, 0xb9c84b72d4fb7c17
mov qword [rsp + 0x3e0], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x3e8], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x100]
mov rax, qword [rsp + rax + 0x3e0]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x100]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x498], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rdx, qword [rsp + 0x100]
mov rax, qword [rsp + rax + 0x3e0]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x100]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x4a0], rax
lea rax, [rsp + 0x4a8]
mov r8, rax
lea rdx, [rsp + 0x498]
lea rcx, [rsp + 0x7a0]
call fcn.140001eb0
lea rax, [rsp + 0x32]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x32]
mov byte [rsp + 0xe0], al
movdqa xmm0, xmmword [rsp + 0x590]
movdqa xmmword [rsp + 0x6a0], xmm0
mov rax, qword [rsp + 0x100]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x690], xmm0
movdqa xmm0, xmmword [rsp + 0x690]
pxor xmm0, xmmword [rsp + 0x6a0]
movdqa xmmword [rsp + 0x6b0], xmm0
mov rax, qword [rsp + 0x100]
movdqa xmm0, xmmword [rsp + 0x6b0]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x3c0], rax
mov rax, qword [rsp + 0x3c0]
mov qword [rsp + 0x530], rax
mov dword [rsp + 0x538], 0
mov dword [rsp + 0x53c], 0x10
mov dword [rsp + 0x540], 0
mov dword [rsp + 0x544], 0
mov dword [rsp + 0x548], 0
mov dword [rsp + 0x54c], 0
lea rax, [rsp + 0x33]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x34]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x33]
mov byte [rsp + 0xb0], al
movzx eax, byte [rsp + 0x34]
mov byte [rsp + 0xb8], al
movabs rax, 0xb3d54d69def07613
mov qword [rsp + 0x3f0], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x3f8], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rsp + rax + 0x3f0]
mov qword [rsp + rcx + 0x2f0], rax
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x2f0]
mov qword [rsp + 0x4b0], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rax, qword [rsp + rax + 0x3f0]
mov qword [rsp + rcx + 0x2f0], rax
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x2f0]
mov qword [rsp + 0x4b8], rax
lea rax, [rsp + 0x4c0]
mov r8, rax
lea rdx, [rsp + 0x4b0]
lea rcx, [rsp + 0x7b0]
call fcn.140001eb0
lea rax, [rsp + 0x2f0]
mov qword [rsp + 0x108], rax
mov eax, 8
imul rax, rax, 0
movabs rcx, 0xf78702269da83347
mov qword [rsp + rax + 0x5a0], rcx
movabs rax, 0xf78702269da83347
mov qword [rsp + 0x450], rax
mov eax, 8
imul rax, rax, 1
movabs rcx, 0x400c3a276946cce4
mov qword [rsp + rax + 0x5a0], rcx
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x458], rax
lea rax, [rsp + 0x460]
mov r8, rax
lea rdx, [rsp + 0x450]
lea rcx, [rsp + 0x740]
call fcn.140001eb0
movabs rax, 0xb3d54d69def07613
mov qword [rsp + 0x400], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x408], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x108]
mov rax, qword [rsp + rax + 0x400]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x108]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x4c8], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rdx, qword [rsp + 0x108]
mov rax, qword [rsp + rax + 0x400]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x108]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x4d0], rax
lea rax, [rsp + 0x4d8]
mov r8, rax
lea rdx, [rsp + 0x4c8]
lea rcx, [rsp + 0x750]
call fcn.140001eb0
lea rax, [rsp + 0x35]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x35]
mov byte [rsp + 0xc0], al
movdqa xmm0, xmmword [rsp + 0x5a0]
movdqa xmmword [rsp + 0x6d0], xmm0
mov rax, qword [rsp + 0x108]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x6c0], xmm0
movdqa xmm0, xmmword [rsp + 0x6c0]
pxor xmm0, xmmword [rsp + 0x6d0]
movdqa xmmword [rsp + 0x6e0], xmm0
mov rax, qword [rsp + 0x108]
movdqa xmm0, xmmword [rsp + 0x6e0]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x380]
mov qword [rsp + 0x550], rax
mov dword [rsp + 0x558], 0
mov dword [rsp + 0x55c], 0x10
mov dword [rsp + 0x560], 0
mov dword [rsp + 0x564], 8
mov dword [rsp + 0x568], 0
mov dword [rsp + 0x56c], 0
lea rax, [rsp + 0x36]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rax, [rsp + 0x37]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x36]
mov byte [rsp + 0xc8], al
movzx eax, byte [rsp + 0x37]
mov byte [rsp + 0xd0], al
movabs rax, 0xf7870274d2e47c04
mov qword [rsp + 0x410], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x418], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rsp + rax + 0x410]
mov qword [rsp + rcx + 0x300], rax
mov eax, 8
imul rax, rax, 0
mov rax, qword [rsp + rax + 0x300]
mov qword [rsp + 0x4e0], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rax, qword [rsp + rax + 0x410]
mov qword [rsp + rcx + 0x300], rax
mov eax, 8
imul rax, rax, 1
mov rax, qword [rsp + rax + 0x300]
mov qword [rsp + 0x4e8], rax
lea rax, [rsp + 0x4f0]
mov r8, rax
lea rdx, [rsp + 0x4e0]
lea rcx, [rsp + 0x760]
call fcn.140001eb0
lea rax, [rsp + 0x300]
mov qword [rsp + 0x110], rax
mov eax, 8
imul rax, rax, 0
movabs rcx, 0xf78702269da83347
mov qword [rsp + rax + 0x5b0], rcx
movabs rax, 0xf78702269da83347
mov qword [rsp + 0x4f8], rax
mov eax, 8
imul rax, rax, 1
movabs rcx, 0x400c3a276946cce4
mov qword [rsp + rax + 0x5b0], rcx
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x500], rax
lea rax, [rsp + 0x508]
mov r8, rax
lea rdx, [rsp + 0x4f8]
lea rcx, [rsp + 0x770]
call fcn.140001eb0
movabs rax, 0xf7870274d2e47c04
mov qword [rsp + 0x420], rax
movabs rax, 0x400c3a276946cce4
mov qword [rsp + 0x428], rax
mov eax, 8
imul rax, rax, 0
mov ecx, 8
imul rcx, rcx, 0
mov rdx, qword [rsp + 0x110]
mov rax, qword [rsp + rax + 0x420]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x510], rax
mov eax, 8
imul rax, rax, 1
mov ecx, 8
imul rcx, rcx, 1
mov rdx, qword [rsp + 0x110]
mov rax, qword [rsp + rax + 0x420]
mov qword [rdx + rcx], rax
mov eax, 8
imul rax, rax, 1
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx + rax]
mov qword [rsp + 0x518], rax
lea rax, [rsp + 0x520]
mov r8, rax
lea rdx, [rsp + 0x510]
lea rcx, [rsp + 0x780]
call fcn.140001eb0
lea rax, [rsp + 0x38]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x38]
mov byte [rsp + 0xd8], al
movdqa xmm0, xmmword [rsp + 0x5b0]
movdqa xmmword [rsp + 0x700], xmm0
mov rax, qword [rsp + 0x110]
movdqu xmm0, xmmword [rax]
movdqa xmmword [rsp + 0x6f0], xmm0
movdqa xmm0, xmmword [rsp + 0x6f0]
pxor xmm0, xmmword [rsp + 0x700]
movdqa xmmword [rsp + 0x710], xmm0
mov rax, qword [rsp + 0x110]
movdqa xmm0, xmmword [rsp + 0x710]
movdqu xmmword [rax], xmm0
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x448], rax
mov rax, qword [rsp + 0x448]
mov qword [rsp + 0x570], rax
mov dword [rsp + 0x578], 0
mov dword [rsp + 0x57c], 0x1c
mov dword [rsp + 0x580], 0
mov dword [rsp + 0x584], 0x10
mov dword [rsp + 0x588], 0
mov dword [rsp + 0x58c], 0
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0x348], rax
lea rax, [0x1401c0218]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x4d0
lea r9, str.DXBCSV_ve
mov r8d, 3
lea rdx, [rsp + 0x530]
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x348]
test eax, eax
je 0x14002517c
jmp 0x140025ae8
mov dword [rsp + 0x430], 0x40
mov dword [rsp + 0x434], 2
mov dword [rsp + 0x438], 4
mov dword [rsp + 0x43c], 0x10000
mov dword [rsp + 0x440], 0
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x350], rax
lea r9, [0x1401c0210]
xor r8d, r8d
lea rdx, [rsp + 0x430]
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x350]
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0x78]
mov qword [rsp + 0x358], rax
lea rax, [0x1401c01f8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, 0x29c
lea rdx, str.DXBC
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x358]
test eax, eax
je 0x140025232
jmp 0x140025ae8
lea rax, [rsp + 0x7d0]
mov rdi, rax
xor eax, eax
mov ecx, pe_nt_image_headers64
rep stosb byte [rdi], al
mov dword [rsp + 0x7d0], 0
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7d8], 1
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7dc], 5
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7e0], 6
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7e4], 1
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7e8], 8
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7ec], 2
mov eax, 0x20
imul rax, rax, 0
mov dword [rsp + rax + 0x7f0], 1
mov eax, 0x20
imul rax, rax, 0
mov byte [rsp + rax + 0x7f4], 0xf
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0xa0]
mov qword [rsp + 0x360], rax
lea r8, [0x1401c0200]
lea rdx, [rsp + 0x7d0]
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x360]
lea rax, [rsp + 0x620]
mov rdi, rax
xor eax, eax
mov ecx, 0x28
rep stosb byte [rdi], al
mov dword [rsp + 0x620], 3
mov dword [rsp + 0x624], 1
mov dword [rsp + 0x63c], 1
mov dword [rsp + 0x638], 1
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0xb0]
mov qword [rsp + 0x368], rax
lea r8, [0x1401c01e8]
lea rdx, [rsp + 0x620]
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x368]
lea rax, [rsp + 0x310]
mov rdi, rax
xor eax, eax
mov ecx, 0x34
rep stosb byte [rdi], al
mov dword [rsp + 0x310], 0
mov dword [rsp + 0x314], 1
mov dword [rsp + 0x318], 8
mov dword [rsp + 0x31c], 0
mov dword [rsp + 0x32c], 1
mov eax, dword [rsp + 0x32c]
mov dword [rsp + 0x328], eax
mov eax, dword [rsp + 0x328]
mov dword [rsp + 0x324], eax
mov dword [rsp + 0x330], 8
lea rax, [rsp + 0x334]
lea rcx, [rsp + 0x324]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [0x1401c0228]
mov rax, qword [rax]
mov rax, qword [rax + 0xa8]
mov qword [rsp + 0x370], rax
lea r8, [0x1401c01f0]
lea rdx, [rsp + 0x310]
mov rcx, qword [0x1401c0228]
call qword [rsp + 0x370]
call fcn.140023de0
lea rax, [rsp + 0x720]
lea rcx, [0x1401c0198]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1e0]
lea rcx, [rsp + 0x720]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x8c], 0
jmp 0x1400254ba
mov eax, dword [rsp + 0x8c]
inc eax
mov dword [rsp + 0x8c], eax
movsxd rax, dword [rsp + 0x8c]
mov qword [rsp + 0x378], rax
xor edx, edx
mov eax, 0x29c
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x378]
cmp rcx, rax
jae 0x1400257ad
lea rax, [rsp + 0x5c0]
lea rcx, [rsp + 0x1e0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x8c]
shl eax, 3
cdqe
lea rcx, str.DXBC
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x130], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x84], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x130]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x80], 0
mov dword [rsp + 0x150], 0x9e3779b9
mov dword [rsp + 0xf0], 0
jmp 0x140025591
mov eax, dword [rsp + 0xf0]
inc eax
mov dword [rsp + 0xf0], eax
cmp dword [rsp + 0xf0], 0x40
jae 0x140025660
mov eax, dword [rsp + 0x88]
shl eax, 4
mov ecx, dword [rsp + 0x88]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x80]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5c0]
mov edx, dword [rsp + 0x80]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x84]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x84], eax
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x84]
shl eax, 4
mov ecx, dword [rsp + 0x84]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x84]
mov ecx, dword [rsp + 0x80]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5c0]
mov edx, dword [rsp + 0x80]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x88]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x88], eax
jmp 0x140025581
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
mov edx, dword [rsp + 0x84]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x130]
mov edx, dword [rsp + 0x88]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x1e0]
mov qword [rsp + 0x230], rax
movsxd rax, dword [rsp + 0x8c]
imul rax, rax, 0x29c
mov rcx, qword [rsp + 0x230]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x230]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x1e0]
mov dword [rsp + 0x154], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x1e0]
mov qword [rsp + 0x238], rax
mov rax, qword [rsp + 0x238]
mov eax, dword [rax]
mov dword [rsp + 0x158], eax
mov eax, dword [rsp + 0x154]
mov ecx, dword [rsp + 0x158]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x238]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x1e0]
mov dword [rsp + 0x15c], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x1e0]
mov qword [rsp + 0x240], rax
mov rax, qword [rsp + 0x240]
mov eax, dword [rax]
mov dword [rsp + 0x160], eax
mov eax, dword [rsp + 0x15c]
mov ecx, dword [rsp + 0x160]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x240]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x1e0]
mov qword [rsp + 0x248], rax
mov rax, qword [rsp + 0x248]
mov eax, dword [rax]
add eax, dword [rsp + 0x8c]
mov rcx, qword [rsp + 0x248]
mov dword [rcx], eax
jmp 0x1400254aa
lea rax, [rsp + 0x730]
lea rcx, [0x1401c01a8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x1f0]
lea rcx, [rsp + 0x730]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x3c], 0
jmp 0x1400257fa
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
movsxd rax, dword [rsp + 0x3c]
mov qword [rsp + 0x3c8], rax
xor edx, edx
mov eax, 0x4d0
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x3c8]
cmp rcx, rax
jae 0x140025ae1
lea rax, [rsp + 0x5d0]
lea rcx, [rsp + 0x1f0]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x3c]
shl eax, 3
cdqe
lea rcx, str.DXBCSV_ve
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x138], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x138]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x94], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x138]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x164], 0x9e3779b9
mov dword [rsp + 0xf4], 0
jmp 0x1400258cb
mov eax, dword [rsp + 0xf4]
inc eax
mov dword [rsp + 0xf4], eax
cmp dword [rsp + 0xf4], 0x40
jae 0x14002599a
mov eax, dword [rsp + 0x98]
shl eax, 4
mov ecx, dword [rsp + 0x98]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x90]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5d0]
mov edx, dword [rsp + 0x90]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x94]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x94], eax
mov eax, dword [rsp + 0x164]
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x94]
shl eax, 4
mov ecx, dword [rsp + 0x94]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x94]
mov ecx, dword [rsp + 0x90]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5d0]
mov edx, dword [rsp + 0x90]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x98]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x98], eax
jmp 0x1400258bb
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x138]
mov edx, dword [rsp + 0x94]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x138]
mov edx, dword [rsp + 0x98]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x1f0]
mov qword [rsp + 0x250], rax
movsxd rax, dword [rsp + 0x3c]
imul rax, rax, 0x4d0
mov rcx, qword [rsp + 0x250]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x250]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x1f0]
mov dword [rsp + 0x168], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x1f0]
mov qword [rsp + 0x258], rax
mov rax, qword [rsp + 0x258]
mov eax, dword [rax]
mov dword [rsp + 0x16c], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x16c]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x258]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x1f0]
mov dword [rsp + 0x170], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x1f0]
mov qword [rsp + 0x260], rax
mov rax, qword [rsp + 0x260]
mov eax, dword [rax]
mov dword [rsp + 0x174], eax
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x174]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x260]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x1f0]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x268]
mov eax, dword [rax]
add eax, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x268]
mov dword [rcx], eax
jmp 0x1400257f0
mov al, 1
jmp 0x1400260d4
lea rax, [rsp + 0x650]
lea rcx, [0x1401c0198]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x200]
lea rcx, [rsp + 0x650]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x50], 0
jmp 0x140025b35
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x50]
mov qword [rsp + 0x388], rax
xor edx, edx
mov eax, 0x29c
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x388]
cmp rcx, rax
jae 0x140025ddd
lea rax, [rsp + 0x5e0]
lea rcx, [rsp + 0x200]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x50]
shl eax, 3
cdqe
lea rcx, str.DXBC
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x140], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x140]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x48], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x140]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x178], 0x9e3779b9
mov dword [rsp + 0xf8], 0
jmp 0x140025bfd
mov eax, dword [rsp + 0xf8]
inc eax
mov dword [rsp + 0xf8], eax
cmp dword [rsp + 0xf8], 0x40
jae 0x140025c9c
mov eax, dword [rsp + 0x4c]
shl eax, 4
mov ecx, dword [rsp + 0x4c]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x40]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5e0]
mov edx, dword [rsp + 0x40]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x48]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x48]
shl eax, 4
mov ecx, dword [rsp + 0x48]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x40]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5e0]
mov edx, dword [rsp + 0x40]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
jmp 0x140025bed
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x140]
mov edx, dword [rsp + 0x48]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x140]
mov edx, dword [rsp + 0x4c]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x200]
mov qword [rsp + 0x270], rax
movsxd rax, dword [rsp + 0x50]
imul rax, rax, 0x29c
mov rcx, qword [rsp + 0x270]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x270]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x200]
mov dword [rsp + 0x17c], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x200]
mov qword [rsp + 0x278], rax
mov rax, qword [rsp + 0x278]
mov eax, dword [rax]
mov dword [rsp + 0x1a8], eax
mov eax, dword [rsp + 0x17c]
mov ecx, dword [rsp + 0x1a8]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x278]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x200]
mov dword [rsp + 0x180], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x200]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x280]
mov eax, dword [rax]
mov dword [rsp + 0x184], eax
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x184]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x280]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x200]
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x288]
mov eax, dword [rax]
add eax, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x288]
mov dword [rcx], eax
jmp 0x140025b2b
lea rax, [rsp + 0x660]
lea rcx, [0x1401c01a8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x210]
lea rcx, [rsp + 0x660]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov dword [rsp + 0x70], 0
jmp 0x140025e2a
mov eax, dword [rsp + 0x70]
inc eax
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x70]
mov qword [rsp + 0x390], rax
xor edx, edx
mov eax, 0x4d0
mov ecx, 8
div rcx
mov rcx, qword [rsp + 0x390]
cmp rcx, rax
jae 0x1400260d2
lea rax, [rsp + 0x5f0]
lea rcx, [rsp + 0x210]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov eax, dword [rsp + 0x70]
shl eax, 3
cdqe
lea rcx, str.DXBCSV_ve
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x148], rax
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x148]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x58], eax
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x148]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x5c], eax
mov dword [rsp + 0x54], 0
mov dword [rsp + 0x188], 0x9e3779b9
mov dword [rsp + 0xfc], 0
jmp 0x140025ef2
mov eax, dword [rsp + 0xfc]
inc eax
mov dword [rsp + 0xfc], eax
cmp dword [rsp + 0xfc], 0x40
jae 0x140025f91
mov eax, dword [rsp + 0x5c]
shl eax, 4
mov ecx, dword [rsp + 0x5c]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x5c]
mov ecx, dword [rsp + 0x54]
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5f0]
mov edx, dword [rsp + 0x54]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x58]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x188]
mov ecx, dword [rsp + 0x54]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x58]
shl eax, 4
mov ecx, dword [rsp + 0x58]
shr ecx, 5
xor eax, ecx
add eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x54]
shr ecx, 0xb
and ecx, 3
movsxd rcx, ecx
mov ecx, dword [rsp + rcx*4 + 0x5f0]
mov edx, dword [rsp + 0x54]
add edx, ecx
mov ecx, edx
xor eax, ecx
mov ecx, dword [rsp + 0x5c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x5c], eax
jmp 0x140025ee2
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x148]
mov edx, dword [rsp + 0x58]
mov dword [rcx + rax], edx
mov eax, 4
imul rax, rax, 1
mov rcx, qword [rsp + 0x148]
mov edx, dword [rsp + 0x5c]
mov dword [rcx + rax], edx
xor eax, eax
lea rax, [rsp + rax*4 + 0x210]
mov qword [rsp + 0x290], rax
movsxd rax, dword [rsp + 0x70]
imul rax, rax, 0x4d0
mov rcx, qword [rsp + 0x290]
mov ecx, dword [rcx]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x290]
mov dword [rcx], eax
xor eax, eax
mov eax, dword [rsp + rax*4 + 0x210]
mov dword [rsp + 0x18c], eax
mov eax, 1
lea rax, [rsp + rax*4 + 0x210]
mov qword [rsp + 0x298], rax
mov rax, qword [rsp + 0x298]
mov eax, dword [rax]
mov dword [rsp + 0x190], eax
mov eax, dword [rsp + 0x18c]
mov ecx, dword [rsp + 0x190]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x298]
mov dword [rcx], eax
mov eax, 1
mov eax, dword [rsp + rax*4 + 0x210]
mov dword [rsp + 0x194], eax
mov eax, 2
lea rax, [rsp + rax*4 + 0x210]
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x2a0]
mov eax, dword [rax]
mov dword [rsp + 0x198], eax
mov eax, dword [rsp + 0x194]
mov ecx, dword [rsp + 0x198]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x2a0]
mov dword [rcx], eax
mov eax, 3
lea rax, [rsp + rax*4 + 0x210]
mov qword [rsp + 0x2a8], rax
mov rax, qword [rsp + 0x2a8]
mov eax, dword [rax]
add eax, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x2a8]
mov dword [rcx], eax
jmp 0x140025e20
xor al, al
add rsp, 0x8e8
pop rdi
pop rsi
ret