asmathic:
        push    rbp
        mov     rbp, rsp
        sub     rsp, 16
        mov     DWORD PTR [rbp-4], 0x21ba79
        mov     DWORD PTR [rbp-8], 1
        jmp     .L2
.L5:
        mov     eax, DWORD PTR [rbp-8]
        and     eax, 1
        test    eax, eax
        jne     .L3
        mov     eax, DWORD PTR [rbp-8]
        add     eax, 2
        add     DWORD PTR [rbp-4], eax
        jmp     .L4
.L3:
        mov     eax, DWORD PTR [rbp-8]
        sub     eax, 1
        sub     DWORD PTR [rbp-4], eax
.L4:
        add     DWORD PTR [rbp-8], 1
.L2:
        cmp     DWORD PTR [rbp-8], 24
        jle     .L5
        mov     edx, DWORD PTR [rbp-4]
        mov     eax, edx
        add     eax, eax
        add     eax, edx
        mov     DWORD PTR [rbp-4], eax
        mov     DWORD PTR [rbp-12], 0
        mov     DWORD PTR [rbp-12], 0x11170
        sub     DWORD PTR [rbp-12], 0x4e20
        mov     edx, DWORD PTR [rbp-12]
        mov     eax, edx
        sal     eax, 2
        add     eax, edx
        add     eax, eax
        mov     DWORD PTR [rbp-12], eax
        mov     eax, DWORD PTR [rbp-4]
        imul    eax, DWORD PTR [rbp-12]
        mov     DWORD PTR [rbp-4], eax
        add     DWORD PTR [rbp-4], 26
        sar     DWORD PTR [rbp-4], 2
        xor     DWORD PTR [rbp-4], 133337
        mov     DWORD PTR [rbp-12], 0xf14b
        mov     edx, DWORD PTR [rbp-12]
        mov     eax, edx
        sal     eax, 2
        add     eax, edx
        mov     DWORD PTR [rbp-12], eax
        mov     eax, DWORD PTR [rbp-12]
        add     DWORD PTR [rbp-4], eax
        mov     eax, DWORD PTR [rbp-4]
        mov     edi, eax
        mov     eax, 0
        call    hex
        leave
        ret