;;; Arachnus_StandingInitialisation ;;;
08024538 (T)  push    r4,r14
0802453A (T)  ldr     r0,=EnemyOrientation      ;\
0802453C (T)  mov     r1,r0                     ;|
0802453E (T)  add     r1,2Fh                    ;} r1 = EnemyAttachedEnemySlot
08024540 (T)  ldrb    r2,[r1]                   ;/
08024542 (T)  sub     r1,1h                     ;\
08024544 (T)  ldrb    r1,[r1]                   ;|
08024546 (T)  mov     r3,r0                     ;} If EnemyRespawnTimer == 0:
08024548 (T)  cmp     r1,0FFh                   ;|
0802454A (T)  bne     80245A2h                  ;/
0802454C (T)  ldrh    r1,[r3]                   ;\
0802454E (T)  ldr     r0,=0DFFFh                ;|
08024550 (T)  and     r0,r1                     ;} EnemyOrientation !|= 2000h (rolling)
08024552 (T)  mov     r4,0h                     ;|
08024554 (T)  strh    r0,[r3]                   ;/
08024556 (T)  ldr     r1,=EnemySlot0            ;\
08024558 (T)  lsl     r0,r2,3h                  ;|
0802455A (T)  sub     r0,r0,r2                  ;|
0802455C (T)  lsl     r0,r0,3h                  ;|
0802455E (T)  add     r2,r0,r1                  ;} Enemy[EnemyAttachedSlot]Orientation !|= 80h
08024560 (T)  ldrh    r0,[r2]                   ;|
08024562 (T)  ldr     r1,=0FF7Fh                ;|
08024564 (T)  and     r1,r0                     ;|
08024566 (T)  strh    r1,[r2]                   ;/
08024568 (T)  ldr     r0,=0FF60h                ;\
0802456A (T)  strh    r0,[r2,0Ah]               ;} Enemy[EnemyAttachedSlot]TopBoundryOffset = -A0h
0802456C (T)  strh    r4,[r2,0Ch]               ; Enemy[EnemyAttachedSlot]BottomBoundryOffset = -A0h
0802456E (T)  mov     r0,40h                    ;\
08024570 (T)  and     r0,r1                     ;|
08024572 (T)  lsl     r0,r0,10h                 ;|
08024574 (T)  lsr     r0,r0,10h                 ;} If Enemy[EnemyAttachedSlot]Orientation has 40h (facing right):
08024576 (T)  cmp     r0,0h                     ;|
08024578 (T)  beq     802459Ch                  ;/
0802457A (T)  ldr     r0,=0FFB0h                ;\
0802457C (T)  strh    r0,[r2,0Eh]               ;} Enemy[EnemyAttachedSlot]LeftBoundryOffset = -50h
0802457E (T)  strh    r4,[r2,10h]               ; Enemy[EnemyAttachedSlot]RightBoundryOffset = -50h
08024580 (T)  b       80245A2h
08024582      dw      00000h
08024584      dd      0030006BCh,00000DFFFh,003000140h,00000FF7Fh
08024594      dd      00000FF60h,00000FFB0h

                                                ; Else Enemy[EnemyAttachedSlot]Orientation hasn't 40h (facing left):
0802459C (T)  strh    r0,[r2,0Eh]               ; Clear Enemy[EnemyAttachedSlot]LeftBoundryOffset
0802459E (T)  mov     r0,50h                    ;\
080245A0 (T)  strh    r0,[r2,10h]               ;} Enemy[EnemyAttachedSlot]RightBoundryOffset = 50h

080245A2 (T)  mov     r1,r3                     ;\ EnemyRespawnTimer != 0:
080245A4 (T)  add     r1,24h                    ;\
080245A6 (T)  mov     r2,0h                     ;|
080245A8 (T)  mov     r0,8h                     ;} EnemyPose = 8 (standing still)
080245AA (T)  strb    r0,[r1]                   ;/
080245AC (T)  ldr     r0,=8302C44h              ;\
080245AE (T)  str     r0,[r3,18h]               ;} EnemyGraphicPointer = 8302C44h
080245B0 (T)  strb    r2,[r3,1Ch]               ; Clear EnemyAnimationCounter
080245B2 (T)  strh    r2,[r3,16h]               ; Clear EnemyAnimation
080245B4 (T)  bl      802381Ch                  ; Execute subroutine Arachnus_SetHitboxStanding
080245B8 (T)  ldr     r0,=8302C6Ch              ; r0 parameter = 8302C6Ch
080245BA (T)  bl      8012304h                  ; Execute subroutine Enemy_SetAttachedEnemyGraphics
080245BE (T)  pop     r4
080245C0 (T)  pop     r0
080245C2 (T)  bx      r0
080245C4      dd      008302C44h,008302C6Ch