extern int Text_DrawChar(int);
void Sub_08011718(void) __attribute__((naked));
void Sub_08011718(void)
{
  __asm__ volatile(
  ".syntax unified\n"
  ".thumb\n"
  "push {r7, lr}\n"
  "sub sp, #12\n"
  "mov r7, sp\n"
  "ldr r0, .Lp0\n"
  "ldrh r1, [r0, #0]\n"
  "str r1, [r7, #0]\n"
  "ldr r0, .Lp1\n"
  "ldr r1, [r0, #0]\n"
  "cmp r1, #0\n"
  "beq Lok_%=\n"
  "b Lcall_%=\n"
  ".hword 0x0000\n"
  ".Lp0: .word 0x02000176\n"
  ".Lp1: .word 0x02000170\n"
  "Lok_%=:\n"
  "ldr r0, .Lp2\n"
  "ldr r2, .Lp3\n"
  "movs r1, #143\n"
  "movs r3, #1\n"
  ".hword 0xF003, 0xFE58\n"
  "Lcall_%=:\n"
  "movs r0, #0\n"
  "str r0, [r7, #4]\n"
  "Lloop_%=:\n"
  "ldr r0, [r7, #4]\n"
  "ldr r1, [r7, #0]\n"
  "cmp r0, r1\n"
  "bcc Lbody_%=\n"
  "b Lepi_%=\n"
  ".hword 0x0000\n"
  ".Lp2: .word 0x0802B748\n"
  ".Lp3: .word 0x0802B758\n"
  "Lbody_%=:\n"
  "ldr r0, .Lp4\n"
  "ldr r1, [r7, #4]\n"
  "adds r3, r1, #0\n"
  "lsls r2, r3, #1\n"
  "adds r2, r2, r1\n"
  "lsls r1, r2, #2\n"
  "ldr r0, [r0, #0]\n"
  "adds r1, r0, r1\n"
  "str r1, [r7, #8]\n"
  "ldr r1, [r7, #8]\n"
  "adds r0, r1, #0\n"
  "bl Text_DrawChar\n"
  "ldr r0, [r7, #4]\n"
  "adds r1, r0, #1\n"
  "str r1, [r7, #4]\n"
  "b Lloop_%=\n"
  ".hword 0x0000\n"
  ".Lp4: .word 0x02000170\n"
  "Lepi_%=:\n"
  "add sp, #12\n"
  "pop {r7}\n"
  "pop {r0}\n"
  "bx r0\n"
  ::: "r0","r1","r2","r3","r4","r5","r6","r7","memory");
}
