// File: FreeSlave[P]vhlt/common/bspfile.cpp
// Function: SwapBSPFile(bool)
static void     SwapBSPFile(const bool todisk)
{
    int             i, j, c;
    dmodel_t*       d;
    dmiptexlump_t*  mtl;

    // models       
    for (i = 0; i < g_nummodels; i++)
    {
        d = &g_dmodels[i];

        for (j = 0; j < MAX_MAP_HULLS; j++)
        {
            d->headnode[j] = LittleLong(d->headnode[j]);
        }

        d->visleafs = LittleLong(d->visleafs);
        d->firstface = LittleLong(d->firstface);
        d->numfaces = LittleLong(d->numfaces);

        for (j = 0; j < 3; j++)
        {
            d->mins[j] = LittleFloat(d->mins[j]);
            d->maxs[j] = LittleFloat(d->maxs[j]);
            d->origin[j] = LittleFloat(d->origin[j]);
        }
    }

    //
    // vertexes
    //
    for (i = 0; i < g_numvertexes; i++)
    {
        for (j = 0; j < 3; j++)
        {
            g_dvertexes[i].point[j] = LittleFloat(g_dvertexes[i].point[j]);
        }
    }

    //
    // planes
    //      
    for (i = 0; i < g_numplanes; i++)
    {
        for (j = 0; j < 3; j++)
        {
            g_dplanes[i].normal[j] = LittleFloat(g_dplanes[i].normal[j]);
        }
        g_dplanes[i].dist = LittleFloat(g_dplanes[i].dist);
        g_dplanes[i].type = (planetypes)LittleLong(g_dplanes[i].type);
    }

    //
    // texinfos
    //      
    for (i = 0; i < g_numtexinfo; i++)
    {
        for (j = 0; j < 8; j++)
        {
            g_texinfo[i].vecs[0][j] = LittleFloat(g_texinfo[i].vecs[0][j]);
        }
        g_texinfo[i].miptex = LittleLong(g_texinfo[i].miptex);
        g_texinfo[i].flags = LittleLong(g_texinfo[i].flags);
    }

    //
    // faces
    //
    for (i = 0; i < g_numfaces; i++)
    {
        g_dfaces[i].texinfo = LittleShort(g_dfaces[i].texinfo);
        g_dfaces[i].planenum = LittleShort(g_dfaces[i].planenum);
        g_dfaces[i].side = LittleShort(g_dfaces[i].side);
        g_dfaces[i].lightofs = LittleLong(g_dfaces[i].lightofs);
        g_dfaces[i].firstedge = LittleLong(g_dfaces[i].firstedge);
        g_dfaces[i].numedges = LittleShort(g_dfaces[i].numedges);
    }

    //
    // nodes
    //
    for (i = 0; i < g_numnodes; i++)
    {
        g_dnodes[i].planenum = LittleLong(g_dnodes[i].planenum);
        for (j = 0; j < 3; j++)
        {
            g_dnodes[i].mins[j] = LittleShort(g_dnodes[i].mins[j]);
            g_dnodes[i].maxs[j] = LittleShort(g_dnodes[i].maxs[j]);
        }
        g_dnodes[i].children[0] = LittleShort(g_dnodes[i].children[0]);
        g_dnodes[i].children[1] = LittleShort(g_dnodes[i].children[1]);
        g_dnodes[i].firstface = LittleShort(g_dnodes[i].firstface);
        g_dnodes[i].numfaces = LittleShort(g_dnodes[i].numfaces);
    }

    //
    // leafs
    //
    for (i = 0; i < g_numleafs; i++)
    {
        g_dleafs[i].contents = LittleLong(g_dleafs[i].contents);
        for (j = 0; j < 3; j++)
        {
            g_dleafs[i].mins[j] = LittleShort(g_dleafs[i].mins[j]);
            g_dleafs[i].maxs[j] = LittleShort(g_dleafs[i].maxs[j]);
        }

        g_dleafs[i].firstmarksurface = LittleShort(g_dleafs[i].firstmarksurface);
        g_dleafs[i].nummarksurfaces = LittleShort(g_dleafs[i].nummarksurfaces);
        g_dleafs[i].visofs = LittleLong(g_dleafs[i].visofs);
    }

    //
    // clipnodes
    //
#ifdef ZHLT_XASH2
	for (int hull = 1; hull < MAX_MAP_HULLS; hull++)
	{
		for (i = 0; i < g_numclipnodes[hull - 1]; i++)
		{
			g_dclipnodes[hull - 1][i].planenum = LittleLong(g_dclipnodes[hull - 1][i].planenum);
			g_dclipnodes[hull - 1][i].children[0] = LittleShort(g_dclipnodes[hull - 1][i].children[0]);
			g_dclipnodes[hull - 1][i].children[1] = LittleShort(g_dclipnodes[hull - 1][i].children[1]);
		}
	}
#else
    for (i = 0; i < g_numclipnodes; i++)
    {
        g_dclipnodes[i].planenum = LittleLong(g_dclipnodes[i].planenum);
        g_dclipnodes[i].children[0] = LittleShort(g_dclipnodes[i].children[0]);
        g_dclipnodes[i].children[1] = LittleShort(g_dclipnodes[i].children[1]);
    }
#endif

    //
    // miptex
    //
    if (g_texdatasize)
    {
        mtl = (dmiptexlump_t*)g_dtexdata;
        if (todisk)
        {
            c = mtl->nummiptex;
        }
        else
        {
            c = LittleLong(mtl->nummiptex);
        }
        mtl->nummiptex = LittleLong(mtl->nummiptex);
        for (i = 0; i < c; i++)
        {
            mtl->dataofs[i] = LittleLong(mtl->dataofs[i]);
        }
    }

    //
    // marksurfaces
    //
    for (i = 0; i < g_nummarksurfaces; i++)
    {
        g_dmarksurfaces[i] = LittleShort(g_dmarksurfaces[i]);
    }

    //
    // surfedges
    //
    for (i = 0; i < g_numsurfedges; i++)
    {
        g_dsurfedges[i] = LittleLong(g_dsurfedges[i]);
    }

    //
    // edges
    //
    for (i = 0; i < g_numedges; i++)
    {
        g_dedges[i].v[0] = LittleShort(g_dedges[i].v[0]);
        g_dedges[i].v[1] = LittleShort(g_dedges[i].v[1]);
    }
}

// Assembly:
subq $0x28, %rsp
movb %dil, %al
andb $0x1, %al
movb %al, 0x27(%rsp)
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x32191(%rip), %eax     # 0x374e0
jge 0x548f
movslq 0x20(%rsp), %rcx
leaq 0x3218f(%rip), %rax     # 0x374f0
shlq $0x6, %rcx
addq %rcx, %rax
movq %rax, 0x10(%rsp)
movl $0x0, 0x1c(%rsp)
cmpl $0x4, 0x1c(%rsp)
jge 0x53ac
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movl 0x24(%rax,%rcx,4), %edi
callq 0x9980
movl %eax, %edx
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movl %edx, 0x24(%rax,%rcx,4)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x5375
movq 0x10(%rsp), %rax
movl 0x34(%rax), %edi
callq 0x9980
movl %eax, %ecx
movq 0x10(%rsp), %rax
movl %ecx, 0x34(%rax)
movq 0x10(%rsp), %rax
movl 0x38(%rax), %edi
callq 0x9980
movl %eax, %ecx
movq 0x10(%rsp), %rax
movl %ecx, 0x38(%rax)
movq 0x10(%rsp), %rax
movl 0x3c(%rax), %edi
callq 0x9980
movl %eax, %ecx
movq 0x10(%rsp), %rax
movl %ecx, 0x3c(%rax)
movl $0x0, 0x1c(%rsp)
cmpl $0x3, 0x1c(%rsp)
jge 0x547d
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss (%rax,%rcx,4), %xmm0
callq 0x99d0
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, (%rax,%rcx,4)
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss 0xc(%rax,%rcx,4), %xmm0
callq 0x99d0
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, 0xc(%rax,%rcx,4)
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss 0x18(%rax,%rcx,4), %xmm0
callq 0x99d0
movq 0x10(%rsp), %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, 0x18(%rax,%rcx,4)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x53f9
jmp 0x547f
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5345
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1019fd3(%rip), %eax   # 0x101f474
jge 0x550d
movl $0x0, 0x1c(%rsp)
cmpl $0x3, 0x1c(%rsp)
jge 0x54fe
movslq 0x20(%rsp), %rcx
leaq 0x1019fc2(%rip), %rax   # 0x101f480
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss (%rax,%rcx,4), %xmm0
callq 0x99d0
movslq 0x20(%rsp), %rcx
leaq 0x1019fa0(%rip), %rax   # 0x101f480
imulq $0xc, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x54ab
jmp 0x5500
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5497
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0xb19f45(%rip), %eax    # 0xb1f464
jge 0x55f8
movl $0x0, 0x1c(%rsp)
cmpl $0x3, 0x1c(%rsp)
jge 0x5580
movslq 0x20(%rsp), %rcx
leaq 0xb19f30(%rip), %rax    # 0xb1f470
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss (%rax,%rcx,4), %xmm0
callq 0x99d0
movslq 0x20(%rsp), %rcx
leaq 0xb19f0e(%rip), %rax    # 0xb1f470
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x552d
movslq 0x20(%rsp), %rcx
leaq 0xb19ee4(%rip), %rax    # 0xb1f470
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movss 0xc(%rax), %xmm0
callq 0x99d0
movslq 0x20(%rsp), %rcx
leaq 0xb19ec7(%rip), %rax    # 0xb1f470
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movss %xmm0, 0xc(%rax)
movslq 0x20(%rsp), %rcx
leaq 0xb19eaf(%rip), %rax    # 0xb1f470
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0xb19e92(%rip), %rax    # 0xb1f470
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x10(%rax)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5515
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1199e62(%rip), %eax   # 0x119f46c
jge 0x56e1
movl $0x0, 0x1c(%rsp)
cmpl $0x8, 0x1c(%rsp)
jge 0x566b
movslq 0x20(%rsp), %rcx
leaq 0x1199e45(%rip), %rax   # 0x119f470
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss (%rax,%rcx,4), %xmm0
callq 0x99d0
movslq 0x20(%rsp), %rcx
leaq 0x1199e23(%rip), %rax   # 0x119f470
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movss %xmm0, (%rax,%rcx,4)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x5618
movslq 0x20(%rsp), %rcx
leaq 0x1199df9(%rip), %rax   # 0x119f470
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x20(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0x1199ddc(%rip), %rax   # 0x119f470
imulq $0x28, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x20(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1199dc6(%rip), %rax   # 0x119f470
imulq $0x28, %rcx, %rcx
addq %rcx, %rax
movl 0x24(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0x1199da9(%rip), %rax   # 0x119f470
imulq $0x28, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x24(%rax)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5600
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1b99d81(%rip), %eax   # 0x1b9f474
jge 0x5845
movslq 0x20(%rsp), %rcx
leaq 0x1b99d7b(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movswl 0xa(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x1b99d5c(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0xa(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1b99d45(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movswl (%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x1b99d27(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movw %cx, (%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1b99d11(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movswl 0x2(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x1b99cf2(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x2(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1b99cdb(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movl 0x10(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0x1b99cbe(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x10(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1b99ca8(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movl 0x4(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0x1b99c8b(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x1b99c75(%rip), %rax   # 0x1b9f480
imulq $0x14, %rcx, %rcx
addq %rcx, %rax
movswl 0x8(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x1b99c56(%rip), %rax   # 0x1b9f480
imulq $0x14, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x8(%rax)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x56e9
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x10d9c21(%rip), %eax   # 0x10df478
jge 0x5a1d
movslq 0x20(%rsp), %rcx
leaq 0x10d9c17(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0x10d9bfb(%rip), %rax   # 0x10df480
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl $0x0, 0x1c(%rsp)
cmpl $0x3, 0x1c(%rsp)
jge 0x5935
movslq 0x20(%rsp), %rcx
leaq 0x10d9bd3(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movswl 0x8(%rax,%rcx,2), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x10d9bae(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movw %dx, 0x8(%rax,%rcx,2)
movslq 0x20(%rsp), %rcx
leaq 0x10d9b91(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movswl 0xe(%rax,%rcx,2), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x10d9b6c(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movw %dx, 0xe(%rax,%rcx,2)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x5896
movslq 0x20(%rsp), %rcx
leaq 0x10d9b3f(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movswl 0x4(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x10d9b20(%rip), %rax   # 0x10df480
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x4(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x10d9b09(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movswl 0x6(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x10d9aea(%rip), %rax   # 0x10df480
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x6(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x10d9ad3(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movswl 0x14(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x10d9ab4(%rip), %rax   # 0x10df480
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x14(%rax)
movslq 0x20(%rsp), %rcx
leaq 0x10d9a9d(%rip), %rax   # 0x10df480
imulq $0x18, %rcx, %rcx
addq %rcx, %rax
movswl 0x16(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0x10d9a7e(%rip), %rax   # 0x10df480
imulq $0x18, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x16(%rax)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x584d
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0xa39b05(%rip), %eax    # 0xa3f534
jge 0x5bbc
movslq 0x20(%rsp), %rcx
leaq 0xa39aff(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movl (%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0xa39ae3(%rip), %rax    # 0xa3f540
imulq $0x1c, %rdx, %rdx
addq %rdx, %rax
movl %ecx, (%rax)
movl $0x0, 0x1c(%rsp)
cmpl $0x3, 0x1c(%rsp)
jge 0x5b0d
movslq 0x20(%rsp), %rcx
leaq 0xa39abb(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movswl 0x8(%rax,%rcx,2), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0xa39a96(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movw %dx, 0x8(%rax,%rcx,2)
movslq 0x20(%rsp), %rcx
leaq 0xa39a79(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movswl 0xe(%rax,%rcx,2), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0xa39a54(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movslq 0x1c(%rsp), %rcx
movw %dx, 0xe(%rax,%rcx,2)
movl 0x1c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x1c(%rsp)
jmp 0x5a6e
movslq 0x20(%rsp), %rcx
leaq 0xa39a27(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movswl 0x14(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0xa39a08(%rip), %rax    # 0xa3f540
imulq $0x1c, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x14(%rax)
movslq 0x20(%rsp), %rcx
leaq 0xa399f1(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movswl 0x16(%rax), %edi
callq 0x9900
movw %ax, %cx
movslq 0x20(%rsp), %rdx
leaq 0xa399d2(%rip), %rax    # 0xa3f540
imulq $0x1c, %rdx, %rdx
addq %rdx, %rax
movw %cx, 0x16(%rax)
movslq 0x20(%rsp), %rcx
leaq 0xa399bb(%rip), %rax    # 0xa3f540
imulq $0x1c, %rcx, %rcx
addq %rcx, %rax
movl 0x4(%rax), %edi
callq 0x9980
movl %eax, %ecx
movslq 0x20(%rsp), %rdx
leaq 0xa3999e(%rip), %rax    # 0xa3f540
imulq $0x1c, %rdx, %rdx
addq %rdx, %rax
movl %ecx, 0x4(%rax)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5a25
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1cd98a2(%rip), %eax   # 0x1cdf470
jge 0x5c5d
movslq 0x20(%rsp), %rcx
leaq 0x1cd98a0(%rip), %rax   # 0x1cdf480
movl (%rax,%rcx,8), %edi
callq 0x9980
movl %eax, %edx
movslq 0x20(%rsp), %rcx
leaq 0x1cd988a(%rip), %rax   # 0x1cdf480
movl %edx, (%rax,%rcx,8)
movslq 0x20(%rsp), %rcx
leaq 0x1cd987b(%rip), %rax   # 0x1cdf480
movswl 0x4(%rax,%rcx,8), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x1cd9862(%rip), %rax   # 0x1cdf480
movw %dx, 0x4(%rax,%rcx,8)
movslq 0x20(%rsp), %rcx
leaq 0x1cd9851(%rip), %rax   # 0x1cdf480
movswl 0x6(%rax,%rcx,8), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x1cd9838(%rip), %rax   # 0x1cdf480
movw %dx, 0x6(%rax,%rcx,8)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5bc4
cmpl $0x0, 0x8398b0(%rip)    # 0x83f514
je 0x5cf3
movq 0x8398a7(%rip), %rax    # 0x83f518
movq %rax, 0x8(%rsp)
testb $0x1, 0x27(%rsp)
je 0x5c8a
movq 0x8(%rsp), %rax
movl (%rax), %eax
movl %eax, 0x18(%rsp)
jmp 0x5c9a
movq 0x8(%rsp), %rax
movl (%rax), %edi
callq 0x9980
movl %eax, 0x18(%rsp)
movq 0x8(%rsp), %rax
movl (%rax), %edi
callq 0x9980
movl %eax, %ecx
movq 0x8(%rsp), %rax
movl %ecx, (%rax)
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x18(%rsp), %eax
jge 0x5cf1
movq 0x8(%rsp), %rax
movslq 0x20(%rsp), %rcx
movl 0x4(%rax,%rcx,4), %edi
callq 0x9980
movl %eax, %edx
movq 0x8(%rsp), %rax
movslq 0x20(%rsp), %rcx
movl %edx, 0x4(%rax,%rcx,4)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5cb7
jmp 0x5cf3
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1e1377f(%rip), %eax   # 0x1e19484
jge 0x5d3c
movslq 0x20(%rsp), %rcx
leaq 0x1e1377d(%rip), %rax   # 0x1e19490
movswl (%rax,%rcx,2), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x1e13765(%rip), %rax   # 0x1e19490
movw %dx, (%rax,%rcx,2)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5cfb
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1e33746(%rip), %eax   # 0x1e39494
jge 0x5d82
movslq 0x20(%rsp), %rcx
leaq 0x1e33744(%rip), %rax   # 0x1e394a0
movl (%rax,%rcx,4), %edi
callq 0x9980
movl %eax, %edx
movslq 0x20(%rsp), %rcx
leaq 0x1e3372e(%rip), %rax   # 0x1e394a0
movl %edx, (%rax,%rcx,4)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5d44
movl $0x0, 0x20(%rsp)
movl 0x20(%rsp), %eax
cmpl 0x1d196e8(%rip), %eax   # 0x1d1f47c
jge 0x5df5
movslq 0x20(%rsp), %rcx
leaq 0x1d196de(%rip), %rax   # 0x1d1f480
movswl (%rax,%rcx,4), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x1d196c6(%rip), %rax   # 0x1d1f480
movw %dx, (%rax,%rcx,4)
movslq 0x20(%rsp), %rcx
leaq 0x1d196b6(%rip), %rax   # 0x1d1f480
movswl 0x2(%rax,%rcx,4), %edi
callq 0x9900
movw %ax, %dx
movslq 0x20(%rsp), %rcx
leaq 0x1d1969d(%rip), %rax   # 0x1d1f480
movw %dx, 0x2(%rax,%rcx,4)
movl 0x20(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x20(%rsp)
jmp 0x5d8a
addq $0x28, %rsp
retq
nopw (%rax,%rax)