Skip to content

Instantly share code, notes, and snippets.

@vlj
Created August 24, 2015 20:30
Show Gist options
  • Save vlj/705c453623405874282a to your computer and use it in GitHub Desktop.
Save vlj/705c453623405874282a to your computer and use it in GitHub Desktop.
Analysing 0x1cc498
Analysis: Block is compilable into a function
Compile: 0x001CC498: NumHits=1000, IsCompiled=N
Recompiling block :
001cc498: 00 00 00 00 li r0,0 #0
001cc49c: 00 00 00 00 b 0x1cc4cc
001cc4a0: 00 00 00 00 li r0,1 #1
001cc4a4: 00 00 00 00 b 0x1cc4cc
001cc4a8: 00 00 00 00 li r0,2 #2
001cc4ac: 00 00 00 00 b 0x1cc4cc
001cc4b0: 00 00 00 00 li r0,3 #3
001cc4b4: 00 00 00 00 b 0x1cc4cc
001cc4b8: 00 00 00 00 li r0,4 #4
001cc4bc: 00 00 00 00 b 0x1cc4cc
001cc4c0: 00 00 00 00 li r0,5 #5
001cc4c4: 00 00 00 00 b 0x1cc4cc
001cc4c8: 00 00 00 00 li r0,6 #6
001cc4cc: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cc4d0: 00 00 00 00 lwz r3,0(r9) #0
001cc4d4: 00 00 00 00 li r4,0 #0
001cc4d8: 00 00 00 00 mr r5,r7
001cc4dc: 00 00 00 00 mr r6,r7
001cc4e0: 00 00 00 00 mr r9,r0
001cc4e4: 00 00 00 00 li r10,0 #0
001cc4e8: 00 00 00 00 bl 0x1f4428
001cc4ec: 00 00 00 00 nop
001cc4f0: 00 00 00 00 ld r10,536(r31) #218
001cc4f4: 00 00 00 00 rldicl r0,r10,28,63
001cc4f8: 00 00 00 00 ld r11,112(r1) #70
001cc4fc: 00 00 00 00 rldicl r9,r11,28,63
001cc500: 00 00 00 00 cmpd cr7,r0,r9
001cc504: 00 00 00 00 bne cr7,0x1cc518
001cc508: 00 00 00 00 rldicl r0,r10,29,63
001cc50c: 00 00 00 00 rldicl r9,r11,29,63
001cc510: 00 00 00 00 cmpd cr7,r0,r9
001cc514: 00 00 00 00 beq cr7,0x1cc554
001cc518: 00 00 00 00 ld r0,112(r1) #70
001cc51c: 00 00 00 00 rldicl r6,r0,28,63
001cc520: 00 00 00 00 rldicr r7,r0,28,35
001cc524: 00 00 00 00 rldicr r7,r7,36,28
001cc528: 00 00 00 00 subfic r0,0(r7) #0
001cc52c: 00 00 00 00 adde r7,r0,r7
001cc530: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cc534: 00 00 00 00 lwz r3,0(r9) #0
001cc538: 00 00 00 00 li r4,0 #0
001cc53c: 00 00 00 00 li r5,0 #0
001cc540: 00 00 00 00 addi r6,1(r6) #1
001cc544: 00 00 00 00 subfic r7,2(r7) #2
001cc548: 00 00 00 00 li r8,1 #1
001cc54c: 00 00 00 00 bl 0x1f4218
001cc550: 00 00 00 00 nop
001cc554: 00 00 00 00 ld r0,112(r1) #70
001cc558: 00 00 00 00 std r0,536(r31) #218
001cc55c: 00 00 00 00 lbz r0,42(r28) #2a
001cc560: 00 00 00 00 extsb r9,r0
001cc564: 00 00 00 00 addi r0,-2(r9) #fffffffe
001cc568: 00 00 00 00 rlwinm r0,r0,0,24,31
001cc56c: 00 00 00 00 cmplwi cr7,r0,1 #1
001cc570: 00 00 00 00 bgt cr7,0x1cc7ac
001cc574: 00 00 00 00 mr r25,r9
001cc578: 00 00 00 00 addis r5,6(r27) #6
001cc57c: 00 00 00 00 addi r5,6784(r5) #1a80
001cc580: 00 00 00 00 mr r3,r31
001cc584: 00 00 00 00 li r4,0 #0
001cc588: 00 00 00 00 extsw r5,r5
001cc58c: 00 00 00 00 bl 0x1cb394
001cc590: 00 00 00 00 lwz r9,-13988(r2) #ffffc95c
001cc594: 00 00 00 00 lwz r0,0(r9) #0
001cc598: 00 00 00 00 lwz r11,4(r9) #4
001cc59c: 00 00 00 00 lwz r10,8(r9) #8
001cc5a0: 00 00 00 00 lwz r9,12(r9) #c
001cc5a4: 00 00 00 00 stw r0,120(r1) #78
001cc5a8: 00 00 00 00 stw r11,124(r1) #7c
001cc5ac: 00 00 00 00 stw r10,128(r1) #80
001cc5b0: 00 00 00 00 stw r9,132(r1) #84
001cc5b4: 00 00 00 00 lhz r0,40(r30) #28
001cc5b8: 00 00 00 00 extsh r0,r0
001cc5bc: 00 00 00 00 clrldi r11,r0,53
001cc5c0: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc5c4: 00 00 00 00 sradi r9,r0,53
001cc5c8: 00 00 00 00 addi r9,1(r9) #1
001cc5cc: 00 00 00 00 beq cr7,0x1cc5e0
001cc5d0: 00 00 00 00 cmpldi cr7,r9,2 #2
001cc5d4: 00 00 00 00 blt cr7,0x1cc5e0
001cc5d8: 00 00 00 00 xor r0,r0,r11
001cc5dc: 00 00 00 00 ori r0,2048(r0) #800
001cc5e0: 00 00 00 00 std r0,160(r1) #a0
001cc5e4: 00 00 00 00 lfd f13,160(r1) #a0
001cc5e8: 00 00 00 00 fcfid f13,f13
001cc5ec: 00 00 00 00 frsp f0,f13
001cc5f0: 00 00 00 00 stfs f0,120(r1) #78
001cc5f4: 00 00 00 00 lhz r0,42(r30) #2a
001cc5f8: 00 00 00 00 extsh r0,r0
001cc5fc: 00 00 00 00 clrldi r11,r0,53
001cc600: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc604: 00 00 00 00 sradi r9,r0,53
001cc608: 00 00 00 00 addi r9,1(r9) #1
001cc60c: 00 00 00 00 beq cr7,0x1cc620
001cc610: 00 00 00 00 cmpldi cr7,r9,2 #2
001cc614: 00 00 00 00 blt cr7,0x1cc620
001cc618: 00 00 00 00 xor r0,r0,r11
001cc61c: 00 00 00 00 ori r0,2048(r0) #800
001cc620: 00 00 00 00 std r0,160(r1) #a0
001cc624: 00 00 00 00 lfd f13,160(r1) #a0
001cc628: 00 00 00 00 fcfid f13,f13
001cc62c: 00 00 00 00 frsp f0,f13
001cc630: 00 00 00 00 stfs f0,124(r1) #7c
001cc634: 00 00 00 00 lbz r0,40(r28) #28
001cc638: 00 00 00 00 extsb r0,r0
001cc63c: 00 00 00 00 clrldi r11,r0,53
001cc640: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc644: 00 00 00 00 sradi r9,r0,53
001cc648: 00 00 00 00 addi r9,1(r9) #1
001cc64c: 00 00 00 00 beq cr7,0x1cc660
001cc650: 00 00 00 00 cmpldi cr7,r9,2 #2
001cc654: 00 00 00 00 blt cr7,0x1cc660
001cc658: 00 00 00 00 xor r0,r0,r11
001cc65c: 00 00 00 00 ori r0,2048(r0) #800
001cc660: 00 00 00 00 std r0,160(r1) #a0
001cc664: 00 00 00 00 lfd f13,160(r1) #a0
001cc668: 00 00 00 00 fcfid f13,f13
001cc66c: 00 00 00 00 frsp f0,f13
001cc670: 00 00 00 00 lfs f13,-13984(r2) #ffffc960
001cc674: 00 00 00 00 fmuls f0,f0,f13
001cc678: 00 00 00 00 stfs f0,128(r1) #80
001cc67c: 00 00 00 00 lwz r27,-14088(r2) #ffffc8f8
001cc680: 00 00 00 00 lwz r3,0(r27) #0
001cc684: 00 00 00 00 li r4,0 #0
001cc688: 00 00 00 00 bl 0x1f7da8
001cc68c: 00 00 00 00 nop
001cc690: 00 00 00 00 rlwinm r11,r25,2,0,29
001cc694: 00 00 00 00 addi r0,288(r11) #120
001cc698: 00 00 00 00 extsw r0,r0
001cc69c: 00 00 00 00 add r26,r31,r0
001cc6a0: 00 00 00 00 rlwinm r9,r25,5,0,26
001cc6a4: 00 00 00 00 addi r9,304(r9) #130
001cc6a8: 00 00 00 00 extsw r9,r9
001cc6ac: 00 00 00 00 add r9,r31,r9
001cc6b0: 00 00 00 00 addi r11,496(r11) #1f0
001cc6b4: 00 00 00 00 extsw r11,r11
001cc6b8: 00 00 00 00 add r29,r31,r11
001cc6bc: 00 00 00 00 lwz r3,0(r27) #0
001cc6c0: 00 00 00 00 lwz r4,8(r26) #8
001cc6c4: 00 00 00 00 lwz r5,8(r9) #8
001cc6c8: 00 00 00 00 addi r6,120(r1) #78
001cc6cc: 00 00 00 00 lwz r7,8(r29) #8
001cc6d0: 00 00 00 00 bl 0x1fcb70
001cc6d4: 00 00 00 00 nop
001cc6d8: 00 00 00 00 lwz r3,0(r27) #0
001cc6dc: 00 00 00 00 lwz r4,8(r29) #8
001cc6e0: 00 00 00 00 bl 0x1f9770
001cc6e4: 00 00 00 00 nop
001cc6e8: 00 00 00 00 lwz r28,20(r28) #14
001cc6ec: 00 00 00 00 stw r30,524(r31) #20c
001cc6f0: 00 00 00 00 lwz r0,520(r31) #208
001cc6f4: 00 00 00 00 cmpw cr7,r0,r25
001cc6f8: 00 00 00 00 beq cr7,0x1cc714
001cc6fc: 00 00 00 00 stw r25,520(r31) #208
001cc700: 00 00 00 00 lwz r3,0(r27) #0
001cc704: 00 00 00 00 lwz r4,8(r26) #8
001cc708: 00 00 00 00 lwz r5,8(r29) #8
001cc70c: 00 00 00 00 bl 0x1f9ae0
001cc710: 00 00 00 00 nop
001cc714: 00 00 00 00 lwz r29,-14088(r2) #ffffc8f8
001cc718: 00 00 00 00 lwz r3,0(r29) #0
001cc71c: 00 00 00 00 li r4,0 #0
001cc720: 00 00 00 00 li r5,1 #1
001cc724: 00 00 00 00 li r6,0 #0
001cc728: 00 00 00 00 li r7,3072 #c00
001cc72c: 00 00 00 00 li r8,0 #0
001cc730: 00 00 00 00 bl 0x1f4538
001cc734: 00 00 00 00 nop
001cc738: 00 00 00 00 lwz r3,0(r29) #0
001cc73c: 00 00 00 00 li r4,1 #1
001cc740: 00 00 00 00 li r5,1 #1
001cc744: 00 00 00 00 li r6,0 #0
001cc748: 00 00 00 00 li r7,3072 #c00
001cc74c: 00 00 00 00 li r8,0 #0
001cc750: 00 00 00 00 bl 0x1f4538
001cc754: 00 00 00 00 nop
001cc758: 00 00 00 00 lwz r3,0(r29) #0
001cc75c: 00 00 00 00 li r4,0 #0
001cc760: 00 00 00 00 mr r5,r30
001cc764: 00 00 00 00 bl 0x1f4790
001cc768: 00 00 00 00 nop
001cc76c: 00 00 00 00 lwz r3,0(r29) #0
001cc770: 00 00 00 00 li r4,1 #1
001cc774: 00 00 00 00 mr r5,r28
001cc778: 00 00 00 00 bl 0x1f4790
001cc77c: 00 00 00 00 nop
001cc780: 00 00 00 00 lwz r3,0(r29) #0
001cc784: 00 00 00 00 li r4,1 #1
001cc788: 00 00 00 00 bl 0x1f40d8
001cc78c: 00 00 00 00 nop
001cc790: 00 00 00 00 lwz r3,0(r29) #0
001cc794: 00 00 00 00 clrldi r4,r23,56
001cc798: 00 00 00 00 li r5,0 #0
001cc79c: 00 00 00 00 clrldi r6,r24,32
001cc7a0: 00 00 00 00 bl 0x1f4918
001cc7a4: 00 00 00 00 nop
001cc7a8: 00 00 00 00 b 0x1cca78
001cc7ac: 00 00 00 00 cmpdi cr7,r30,0 #0
001cc7b0: 00 00 00 00 bne cr7,0x1cc7b8
001cc7b4: 00 00 00 00 lwz r30,544(r31) #220
001cc7b8: 00 00 00 00 lwz r0,524(r31) #20c
001cc7bc: 00 00 00 00 cmpw cr7,r0,r30
001cc7c0: 00 00 00 00 beq cr7,0x1cc84c
001cc7c4: 00 00 00 00 stw r30,524(r31) #20c
001cc7c8: 00 00 00 00 lwz r0,520(r31) #208
001cc7cc: 00 00 00 00 cmpwi cr7,r0,0 #0
001cc7d0: 00 00 00 00 beq cr7,0x1cc7f4
001cc7d4: 00 00 00 00 li r0,0 #0
001cc7d8: 00 00 00 00 stw r0,520(r31) #208
001cc7dc: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cc7e0: 00 00 00 00 lwz r3,0(r9) #0
001cc7e4: 00 00 00 00 lwz r4,296(r31) #128
001cc7e8: 00 00 00 00 lwz r5,504(r31) #1f8
001cc7ec: 00 00 00 00 bl 0x1f9ae0
001cc7f0: 00 00 00 00 nop
001cc7f4: 00 00 00 00 lwz r29,-14088(r2) #ffffc8f8
001cc7f8: 00 00 00 00 lwz r3,0(r29) #0
001cc7fc: 00 00 00 00 li r4,0 #0
001cc800: 00 00 00 00 li r5,1 #1
001cc804: 00 00 00 00 li r6,0 #0
001cc808: 00 00 00 00 li r7,3072 #c00
001cc80c: 00 00 00 00 li r8,0 #0
001cc810: 00 00 00 00 bl 0x1f4538
001cc814: 00 00 00 00 nop
001cc818: 00 00 00 00 lwz r3,0(r29) #0
001cc81c: 00 00 00 00 li r4,0 #0
001cc820: 00 00 00 00 mr r5,r30
001cc824: 00 00 00 00 bl 0x1f4790
001cc828: 00 00 00 00 nop
001cc82c: 00 00 00 00 lwz r3,0(r29) #0
001cc830: 00 00 00 00 li r4,1 #1
001cc834: 00 00 00 00 li r5,0 #0
001cc838: 00 00 00 00 li r6,0 #0
001cc83c: 00 00 00 00 li r7,3072 #c00
001cc840: 00 00 00 00 li r8,0 #0
001cc844: 00 00 00 00 bl 0x1f4538
001cc848: 00 00 00 00 nop
001cc84c: 00 00 00 00 cmpdi cr7,r26,0 #0
001cc850: 00 00 00 00 beq cr7,0x1cca78
001cc854: 00 00 00 00 lbz r0,41(r28) #29
001cc858: 00 00 00 00 extsb r0,r0
001cc85c: 00 00 00 00 cmpwi cr0,r0,0 #0
001cc860: 00 00 00 00 beq cr0,0x1cc870
001cc864: 00 00 00 00 cmpwi cr7,r0,1 #1
001cc868: 00 00 00 00 bne cr7,0x1cca5c
001cc86c: 00 00 00 00 b 0x1cc88c
001cc870: 00 00 00 00 addis r5,6(r27) #6
001cc874: 00 00 00 00 addi r5,6784(r5) #1a80
001cc878: 00 00 00 00 mr r3,r31
001cc87c: 00 00 00 00 li r4,0 #0
001cc880: 00 00 00 00 extsw r5,r5
001cc884: 00 00 00 00 bl 0x1cb394
001cc888: 00 00 00 00 b 0x1cca5c
001cc88c: 00 00 00 00 mr r3,r31
001cc890: 00 00 00 00 li r4,1 #1
001cc894: 00 00 00 00 mr r5,r27
001cc898: 00 00 00 00 bl 0x1cb394
001cc89c: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cc8a0: 00 00 00 00 lwz r3,0(r9) #0
001cc8a4: 00 00 00 00 lwz r4,264(r31) #108
001cc8a8: 00 00 00 00 lwz r5,48(r28) #30
001cc8ac: 00 00 00 00 bl 0x1fa980
001cc8b0: 00 00 00 00 nop
001cc8b4: 00 00 00 00 li r0,0 #0
001cc8b8: 00 00 00 00 stw r0,120(r1) #78
001cc8bc: 00 00 00 00 stw r0,124(r1) #7c
001cc8c0: 00 00 00 00 stw r0,128(r1) #80
001cc8c4: 00 00 00 00 stw r0,132(r1) #84
001cc8c8: 00 00 00 00 lbz r9,56(r28) #38
001cc8cc: 00 00 00 00 clrldi r11,r9,53
001cc8d0: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc8d4: 00 00 00 00 beq cr7,0x1cc8ec
001cc8d8: 00 00 00 00 li r0,1 #1
001cc8dc: 00 00 00 00 cmpldi cr7,r0,2 #2
001cc8e0: 00 00 00 00 blt cr7,0x1cc8ec
001cc8e4: 00 00 00 00 xor r9,r9,r11
001cc8e8: 00 00 00 00 ori r9,2048(r9) #800
001cc8ec: 00 00 00 00 std r9,160(r1) #a0
001cc8f0: 00 00 00 00 lfd f13,160(r1) #a0
001cc8f4: 00 00 00 00 fcfid f13,f13
001cc8f8: 00 00 00 00 frsp f0,f13
001cc8fc: 00 00 00 00 lfs f13,-13980(r2) #ffffc964
001cc900: 00 00 00 00 fmuls f0,f0,f13
001cc904: 00 00 00 00 stfs f0,120(r1) #78
001cc908: 00 00 00 00 lbz r9,57(r28) #39
001cc90c: 00 00 00 00 clrldi r11,r9,53
001cc910: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc914: 00 00 00 00 beq cr7,0x1cc92c
001cc918: 00 00 00 00 li r0,1 #1
001cc91c: 00 00 00 00 cmpldi cr7,r0,2 #2
001cc920: 00 00 00 00 blt cr7,0x1cc92c
001cc924: 00 00 00 00 xor r9,r9,r11
001cc928: 00 00 00 00 ori r9,2048(r9) #800
001cc92c: 00 00 00 00 std r9,160(r1) #a0
001cc930: 00 00 00 00 lfd f13,160(r1) #a0
001cc934: 00 00 00 00 fcfid f13,f13
001cc938: 00 00 00 00 frsp f0,f13
001cc93c: 00 00 00 00 lfs f13,-13980(r2) #ffffc964
001cc940: 00 00 00 00 fmuls f0,f0,f13
001cc944: 00 00 00 00 stfs f0,124(r1) #7c
001cc948: 00 00 00 00 lbz r9,58(r28) #3a
001cc94c: 00 00 00 00 clrldi r11,r9,53
001cc950: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc954: 00 00 00 00 beq cr7,0x1cc96c
001cc958: 00 00 00 00 li r0,1 #1
001cc95c: 00 00 00 00 cmpldi cr7,r0,2 #2
001cc960: 00 00 00 00 blt cr7,0x1cc96c
001cc964: 00 00 00 00 xor r9,r9,r11
001cc968: 00 00 00 00 ori r9,2048(r9) #800
001cc96c: 00 00 00 00 std r9,160(r1) #a0
001cc970: 00 00 00 00 lfd f13,160(r1) #a0
001cc974: 00 00 00 00 fcfid f13,f13
001cc978: 00 00 00 00 frsp f0,f13
001cc97c: 00 00 00 00 lfs f13,-13980(r2) #ffffc964
001cc980: 00 00 00 00 fmuls f0,f0,f13
001cc984: 00 00 00 00 stfs f0,128(r1) #80
001cc988: 00 00 00 00 lbz r9,59(r28) #3b
001cc98c: 00 00 00 00 clrldi r11,r9,53
001cc990: 00 00 00 00 cmpdi cr7,r11,0 #0
001cc994: 00 00 00 00 beq cr7,0x1cc9ac
001cc998: 00 00 00 00 li r0,1 #1
001cc99c: 00 00 00 00 cmpldi cr7,r0,2 #2
001cc9a0: 00 00 00 00 blt cr7,0x1cc9ac
001cc9a4: 00 00 00 00 xor r9,r9,r11
001cc9a8: 00 00 00 00 ori r9,2048(r9) #800
001cc9ac: 00 00 00 00 std r9,160(r1) #a0
001cc9b0: 00 00 00 00 lfd f13,160(r1) #a0
001cc9b4: 00 00 00 00 fcfid f13,f13
001cc9b8: 00 00 00 00 frsp f0,f13
001cc9bc: 00 00 00 00 lfs f13,-13980(r2) #ffffc964
001cc9c0: 00 00 00 00 fmuls f0,f0,f13
001cc9c4: 00 00 00 00 stfs f0,132(r1) #84
001cc9c8: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cc9cc: 00 00 00 00 lwz r3,0(r9) #0
001cc9d0: 00 00 00 00 lwz r4,268(r31) #10c
001cc9d4: 00 00 00 00 addi r5,120(r1) #78
001cc9d8: 00 00 00 00 bl 0x1fa980
001cc9dc: 00 00 00 00 nop
001cc9e0: 00 00 00 00 lwz r9,-13976(r2) #ffffc968
001cc9e4: 00 00 00 00 lwz r0,8(r9) #8
001cc9e8: 00 00 00 00 lwz r9,12(r9) #c
001cc9ec: 00 00 00 00 stw r0,144(r1) #90
001cc9f0: 00 00 00 00 stw r9,148(r1) #94
001cc9f4: 00 00 00 00 lfs f0,60(r28) #3c
001cc9f8: 00 00 00 00 stfs f0,136(r1) #88
001cc9fc: 00 00 00 00 lfs f0,64(r28) #40
001cca00: 00 00 00 00 stfs f0,140(r1) #8c
001cca04: 00 00 00 00 lwz r0,12(r28) #c
001cca08: 00 00 00 00 extsw r0,r0
001cca0c: 00 00 00 00 clrldi r11,r0,53
001cca10: 00 00 00 00 cmpdi cr7,r11,0 #0
001cca14: 00 00 00 00 sradi r9,r0,53
001cca18: 00 00 00 00 addi r9,1(r9) #1
001cca1c: 00 00 00 00 beq cr7,0x1cca30
001cca20: 00 00 00 00 cmpldi cr7,r9,2 #2
001cca24: 00 00 00 00 blt cr7,0x1cca30
001cca28: 00 00 00 00 xor r0,r0,r11
001cca2c: 00 00 00 00 ori r0,2048(r0) #800
001cca30: 00 00 00 00 std r0,160(r1) #a0
001cca34: 00 00 00 00 lfd f13,160(r1) #a0
001cca38: 00 00 00 00 fcfid f13,f13
001cca3c: 00 00 00 00 frsp f0,f13
001cca40: 00 00 00 00 stfs f0,144(r1) #90
001cca44: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cca48: 00 00 00 00 lwz r3,0(r9) #0
001cca4c: 00 00 00 00 lwz r4,272(r31) #110
001cca50: 00 00 00 00 addi r5,136(r1) #88
001cca54: 00 00 00 00 bl 0x1fa980
001cca58: 00 00 00 00 nop
001cca5c: 00 00 00 00 lwz r9,-14088(r2) #ffffc8f8
001cca60: 00 00 00 00 lwz r3,0(r9) #0
001cca64: 00 00 00 00 clrldi r4,r23,56
001cca68: 00 00 00 00 li r5,0 #0
001cca6c: 00 00 00 00 clrldi r6,r24,32
001cca70: 00 00 00 00 bl 0x1f4918
001cca74: 00 00 00 00 nop
001cca78: 00 00 00 00 ld r0,272(r1) #110
001cca7c: 00 00 00 00 mtlr r0
001cca80: 00 00 00 00 ld r23,184(r1) #b8
001cca84: 00 00 00 00 ld r24,192(r1) #c0
001cca88: 00 00 00 00 ld r25,200(r1) #c8
001cca8c: 00 00 00 00 ld r26,208(r1) #d0
001cca90: 00 00 00 00 ld r27,216(r1) #d8
001cca94: 00 00 00 00 ld r28,224(r1) #e0
001cca98: 00 00 00 00 ld r29,232(r1) #e8
001cca9c: 00 00 00 00 ld r30,240(r1) #f0
001ccaa0: 00 00 00 00 ld r31,248(r1) #f8
001ccaa4: 00 00 00 00 addi r1,256(r1) #100
001ccaa8: 00 00 00 00 blr
LLVM bytecode:
; ModuleID = 'Module'
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-windows-elf"
declare x86_64_win64cc i32 @execute_unknown_function(i8*, i64)
declare x86_64_win64cc i32 @execute_unknown_block(i8*, i64)
define x86_64_win64cc i32 @fn_0x001CC498(i8* %ppu_state, i64 %context) {
entry:
br label %instr_0x001CC498
instr_0x001CC498: ; preds = %entry
%0 = getelementptr i8* %ppu_state, i32 768
%1 = bitcast i8* %0 to i64*
store i64 0, i64* %1, align 8
br label %instr_0x001CC49C
instr_0x001CC49C: ; preds = %instr_0x001CC498
br label %instr_0x001CC4CC
instr_0x001CC4A0: ; No predecessors!
%2 = getelementptr i8* %ppu_state, i32 768
%3 = bitcast i8* %2 to i64*
store i64 1, i64* %3, align 8
br label %instr_0x001CC4A4
instr_0x001CC4A4: ; preds = %instr_0x001CC4A0
br label %instr_0x001CC4CC
instr_0x001CC4A8: ; No predecessors!
%4 = getelementptr i8* %ppu_state, i32 768
%5 = bitcast i8* %4 to i64*
store i64 2, i64* %5, align 8
br label %instr_0x001CC4AC
instr_0x001CC4AC: ; preds = %instr_0x001CC4A8
br label %instr_0x001CC4CC
instr_0x001CC4B0: ; No predecessors!
%6 = getelementptr i8* %ppu_state, i32 768
%7 = bitcast i8* %6 to i64*
store i64 3, i64* %7, align 8
br label %instr_0x001CC4B4
instr_0x001CC4B4: ; preds = %instr_0x001CC4B0
br label %instr_0x001CC4CC
instr_0x001CC4B8: ; No predecessors!
%8 = getelementptr i8* %ppu_state, i32 768
%9 = bitcast i8* %8 to i64*
store i64 4, i64* %9, align 8
br label %instr_0x001CC4BC
instr_0x001CC4BC: ; preds = %instr_0x001CC4B8
br label %instr_0x001CC4CC
instr_0x001CC4C0: ; No predecessors!
%10 = getelementptr i8* %ppu_state, i32 768
%11 = bitcast i8* %10 to i64*
store i64 5, i64* %11, align 8
br label %instr_0x001CC4C4
instr_0x001CC4C4: ; preds = %instr_0x001CC4C0
br label %instr_0x001CC4CC
instr_0x001CC4C8: ; No predecessors!
%12 = getelementptr i8* %ppu_state, i32 768
%13 = bitcast i8* %12 to i64*
store i64 6, i64* %13, align 8
br label %instr_0x001CC4CC
instr_0x001CC4CC: ; preds = %instr_0x001CC4C8, %instr_0x001CC4C4, %instr_0x001CC4BC, %instr_0x001CC4B4, %instr_0x001CC4AC, %instr_0x001CC4A4, %instr_0x001CC49C
%14 = getelementptr i8* %ppu_state, i32 784
%15 = bitcast i8* %14 to i64*
%16 = load i64* %15, align 8
%17 = add i64 %16, -14088
%18 = and i64 %17, 4294967295
%19 = add i64 %18, 2147418112
%20 = inttoptr i64 %19 to i32*
%21 = load i32* %20
%22 = call i32 @llvm.bswap.i32(i32 %21)
%23 = zext i32 %22 to i64
%24 = getelementptr i8* %ppu_state, i32 840
%25 = bitcast i8* %24 to i64*
store i64 %23, i64* %25, align 8
br label %instr_0x001CC4D0
instr_0x001CC4D0: ; preds = %instr_0x001CC4CC
%26 = getelementptr i8* %ppu_state, i32 840
%27 = bitcast i8* %26 to i64*
%28 = load i64* %27, align 8
%29 = add i64 %28, 0
%30 = and i64 %29, 4294967295
%31 = add i64 %30, 2147418112
%32 = inttoptr i64 %31 to i32*
%33 = load i32* %32
%34 = call i32 @llvm.bswap.i32(i32 %33)
%35 = zext i32 %34 to i64
%36 = getelementptr i8* %ppu_state, i32 792
%37 = bitcast i8* %36 to i64*
store i64 %35, i64* %37, align 8
br label %instr_0x001CC4D4
instr_0x001CC4D4: ; preds = %instr_0x001CC4D0
%38 = getelementptr i8* %ppu_state, i32 800
%39 = bitcast i8* %38 to i64*
store i64 0, i64* %39, align 8
br label %instr_0x001CC4D8
instr_0x001CC4D8: ; preds = %instr_0x001CC4D4
%40 = getelementptr i8* %ppu_state, i32 824
%41 = bitcast i8* %40 to i64*
%42 = load i64* %41, align 8
%43 = getelementptr i8* %ppu_state, i32 824
%44 = bitcast i8* %43 to i64*
%45 = load i64* %44, align 8
%46 = or i64 %42, %45
%47 = getelementptr i8* %ppu_state, i32 808
%48 = bitcast i8* %47 to i64*
store i64 %46, i64* %48, align 8
br label %instr_0x001CC4DC
instr_0x001CC4DC: ; preds = %instr_0x001CC4D8
%49 = getelementptr i8* %ppu_state, i32 824
%50 = bitcast i8* %49 to i64*
%51 = load i64* %50, align 8
%52 = getelementptr i8* %ppu_state, i32 824
%53 = bitcast i8* %52 to i64*
%54 = load i64* %53, align 8
%55 = or i64 %51, %54
%56 = getelementptr i8* %ppu_state, i32 816
%57 = bitcast i8* %56 to i64*
store i64 %55, i64* %57, align 8
br label %instr_0x001CC4E0
instr_0x001CC4E0: ; preds = %instr_0x001CC4DC
%58 = getelementptr i8* %ppu_state, i32 768
%59 = bitcast i8* %58 to i64*
%60 = load i64* %59, align 8
%61 = getelementptr i8* %ppu_state, i32 768
%62 = bitcast i8* %61 to i64*
%63 = load i64* %62, align 8
%64 = or i64 %60, %63
%65 = getelementptr i8* %ppu_state, i32 840
%66 = bitcast i8* %65 to i64*
store i64 %64, i64* %66, align 8
br label %instr_0x001CC4E4
instr_0x001CC4E4: ; preds = %instr_0x001CC4E0
%67 = getelementptr i8* %ppu_state, i32 848
%68 = bitcast i8* %67 to i64*
store i64 0, i64* %68, align 8
br label %instr_0x001CC4E8
instr_0x001CC4E8: ; preds = %instr_0x001CC4E4
%69 = getelementptr i8* %ppu_state, i32 1568
%70 = bitcast i8* %69 to i64*
store i64 1885420, i64* %70, align 8
%71 = getelementptr i8* %ppu_state, i32 1664
%72 = bitcast i8* %71 to i32*
store i32 2049064, i32* %72, align 4
%73 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC4EC
instr_0x001CC4EC: ; preds = %instr_0x001CC4E8
%74 = getelementptr i8* %ppu_state, i32 768
%75 = bitcast i8* %74 to i64*
%76 = load i64* %75, align 8
%77 = getelementptr i8* %ppu_state, i32 768
%78 = bitcast i8* %77 to i64*
store i64 %76, i64* %78, align 8
br label %instr_0x001CC4F0
instr_0x001CC4F0: ; preds = %instr_0x001CC4EC
%79 = getelementptr i8* %ppu_state, i32 1016
%80 = bitcast i8* %79 to i64*
%81 = load i64* %80, align 8
%82 = add i64 %81, 536
%83 = and i64 %82, 4294967295
%84 = add i64 %83, 2147418112
%85 = inttoptr i64 %84 to i64*
%86 = load i64* %85
%87 = call i64 @llvm.bswap.i64(i64 %86)
%88 = getelementptr i8* %ppu_state, i32 848
%89 = bitcast i8* %88 to i64*
store i64 %87, i64* %89, align 8
br label %instr_0x001CC4F4
instr_0x001CC4F4: ; preds = %instr_0x001CC4F0
%90 = getelementptr i8* %ppu_state, i32 848
%91 = bitcast i8* %90 to i64*
%92 = load i64* %91, align 8
%93 = lshr i64 %92, 36
%94 = shl i64 %92, 28
%95 = or i64 %94, %93
%96 = and i64 %95, 1
%97 = getelementptr i8* %ppu_state, i32 768
%98 = bitcast i8* %97 to i64*
store i64 %96, i64* %98, align 8
br label %instr_0x001CC4F8
instr_0x001CC4F8: ; preds = %instr_0x001CC4F4
%99 = getelementptr i8* %ppu_state, i32 776
%100 = bitcast i8* %99 to i64*
%101 = load i64* %100, align 8
%102 = add i64 %101, 112
%103 = and i64 %102, 4294967295
%104 = add i64 %103, 2147418112
%105 = inttoptr i64 %104 to i64*
%106 = load i64* %105
%107 = call i64 @llvm.bswap.i64(i64 %106)
%108 = getelementptr i8* %ppu_state, i32 856
%109 = bitcast i8* %108 to i64*
store i64 %107, i64* %109, align 8
br label %instr_0x001CC4FC
instr_0x001CC4FC: ; preds = %instr_0x001CC4F8
%110 = getelementptr i8* %ppu_state, i32 856
%111 = bitcast i8* %110 to i64*
%112 = load i64* %111, align 8
%113 = lshr i64 %112, 36
%114 = shl i64 %112, 28
%115 = or i64 %114, %113
%116 = and i64 %115, 1
%117 = getelementptr i8* %ppu_state, i32 840
%118 = bitcast i8* %117 to i64*
store i64 %116, i64* %118, align 8
br label %instr_0x001CC500
instr_0x001CC500: ; preds = %instr_0x001CC4FC
%119 = getelementptr i8* %ppu_state, i32 768
%120 = bitcast i8* %119 to i64*
%121 = load i64* %120, align 8
%122 = getelementptr i8* %ppu_state, i32 840
%123 = bitcast i8* %122 to i64*
%124 = load i64* %123, align 8
%125 = icmp slt i64 %121, %124
%126 = icmp sgt i64 %121, %124
%127 = icmp eq i64 %121, %124
%128 = getelementptr i8* %ppu_state, i32 1540
%129 = bitcast i8* %128 to i32*
%130 = load i32* %129, align 4
%131 = getelementptr i8* %ppu_state, i32 1544
%132 = bitcast i8* %131 to i64*
%133 = load i64* %132, align 8
%134 = lshr i64 %133, 31
%135 = and i64 %134, 1
%136 = and i32 %130, -16
%137 = zext i1 %125 to i32
%138 = shl i32 %137, 3
%139 = or i32 %136, %138
%140 = zext i1 %126 to i32
%141 = shl i32 %140, 2
%142 = or i32 %139, %141
%143 = zext i1 %127 to i32
%144 = shl i32 %143, 1
%145 = or i32 %142, %144
%146 = trunc i64 %135 to i32
%147 = or i32 %145, %146
%148 = getelementptr i8* %ppu_state, i32 1540
%149 = bitcast i8* %148 to i32*
store i32 %147, i32* %149, align 4
br label %instr_0x001CC504
instr_0x001CC504: ; preds = %instr_0x001CC500
%150 = getelementptr i8* %ppu_state, i32 1576
%151 = bitcast i8* %150 to i64*
%152 = load i64* %151, align 8
%153 = getelementptr i8* %ppu_state, i32 1540
%154 = bitcast i8* %153 to i32*
%155 = load i32* %154, align 4
%156 = lshr i32 %155, 1
%157 = and i32 %156, 1
%158 = trunc i32 %157 to i1
%159 = xor i1 %158, true
br i1 %159, label %instr_0x001CC518, label %instr_0x001CC508
instr_0x001CC508: ; preds = %instr_0x001CC504
%160 = getelementptr i8* %ppu_state, i32 848
%161 = bitcast i8* %160 to i64*
%162 = load i64* %161, align 8
%163 = lshr i64 %162, 35
%164 = shl i64 %162, 29
%165 = or i64 %164, %163
%166 = and i64 %165, 1
%167 = getelementptr i8* %ppu_state, i32 768
%168 = bitcast i8* %167 to i64*
store i64 %166, i64* %168, align 8
br label %instr_0x001CC50C
instr_0x001CC50C: ; preds = %instr_0x001CC508
%169 = getelementptr i8* %ppu_state, i32 856
%170 = bitcast i8* %169 to i64*
%171 = load i64* %170, align 8
%172 = lshr i64 %171, 35
%173 = shl i64 %171, 29
%174 = or i64 %173, %172
%175 = and i64 %174, 1
%176 = getelementptr i8* %ppu_state, i32 840
%177 = bitcast i8* %176 to i64*
store i64 %175, i64* %177, align 8
br label %instr_0x001CC510
instr_0x001CC510: ; preds = %instr_0x001CC50C
%178 = getelementptr i8* %ppu_state, i32 768
%179 = bitcast i8* %178 to i64*
%180 = load i64* %179, align 8
%181 = getelementptr i8* %ppu_state, i32 840
%182 = bitcast i8* %181 to i64*
%183 = load i64* %182, align 8
%184 = icmp slt i64 %180, %183
%185 = icmp sgt i64 %180, %183
%186 = icmp eq i64 %180, %183
%187 = getelementptr i8* %ppu_state, i32 1540
%188 = bitcast i8* %187 to i32*
%189 = load i32* %188, align 4
%190 = getelementptr i8* %ppu_state, i32 1544
%191 = bitcast i8* %190 to i64*
%192 = load i64* %191, align 8
%193 = lshr i64 %192, 31
%194 = and i64 %193, 1
%195 = and i32 %189, -16
%196 = zext i1 %184 to i32
%197 = shl i32 %196, 3
%198 = or i32 %195, %197
%199 = zext i1 %185 to i32
%200 = shl i32 %199, 2
%201 = or i32 %198, %200
%202 = zext i1 %186 to i32
%203 = shl i32 %202, 1
%204 = or i32 %201, %203
%205 = trunc i64 %194 to i32
%206 = or i32 %204, %205
%207 = getelementptr i8* %ppu_state, i32 1540
%208 = bitcast i8* %207 to i32*
store i32 %206, i32* %208, align 4
br label %instr_0x001CC514
instr_0x001CC514: ; preds = %instr_0x001CC510
%209 = getelementptr i8* %ppu_state, i32 1576
%210 = bitcast i8* %209 to i64*
%211 = load i64* %210, align 8
%212 = getelementptr i8* %ppu_state, i32 1540
%213 = bitcast i8* %212 to i32*
%214 = load i32* %213, align 4
%215 = lshr i32 %214, 1
%216 = and i32 %215, 1
%217 = trunc i32 %216 to i1
br i1 %217, label %instr_0x001CC554, label %instr_0x001CC518
instr_0x001CC518: ; preds = %instr_0x001CC514, %instr_0x001CC504
%218 = getelementptr i8* %ppu_state, i32 776
%219 = bitcast i8* %218 to i64*
%220 = load i64* %219, align 8
%221 = add i64 %220, 112
%222 = and i64 %221, 4294967295
%223 = add i64 %222, 2147418112
%224 = inttoptr i64 %223 to i64*
%225 = load i64* %224
%226 = call i64 @llvm.bswap.i64(i64 %225)
%227 = getelementptr i8* %ppu_state, i32 768
%228 = bitcast i8* %227 to i64*
store i64 %226, i64* %228, align 8
br label %instr_0x001CC51C
instr_0x001CC51C: ; preds = %instr_0x001CC518
%229 = getelementptr i8* %ppu_state, i32 768
%230 = bitcast i8* %229 to i64*
%231 = load i64* %230, align 8
%232 = lshr i64 %231, 36
%233 = shl i64 %231, 28
%234 = or i64 %233, %232
%235 = and i64 %234, 1
%236 = getelementptr i8* %ppu_state, i32 816
%237 = bitcast i8* %236 to i64*
store i64 %235, i64* %237, align 8
br label %instr_0x001CC520
instr_0x001CC520: ; preds = %instr_0x001CC51C
%238 = getelementptr i8* %ppu_state, i32 768
%239 = bitcast i8* %238 to i64*
%240 = load i64* %239, align 8
%241 = lshr i64 %240, 36
%242 = shl i64 %240, 28
%243 = or i64 %242, %241
%244 = and i64 %243, -268435456
%245 = getelementptr i8* %ppu_state, i32 824
%246 = bitcast i8* %245 to i64*
store i64 %244, i64* %246, align 8
br label %instr_0x001CC524
instr_0x001CC524: ; preds = %instr_0x001CC520
%247 = getelementptr i8* %ppu_state, i32 824
%248 = bitcast i8* %247 to i64*
%249 = load i64* %248, align 8
%250 = lshr i64 %249, 28
%251 = shl i64 %249, 36
%252 = or i64 %251, %250
%253 = and i64 %252, -34359738368
%254 = getelementptr i8* %ppu_state, i32 824
%255 = bitcast i8* %254 to i64*
store i64 %253, i64* %255, align 8
br label %instr_0x001CC528
instr_0x001CC528: ; preds = %instr_0x001CC524
%256 = getelementptr i8* %ppu_state, i32 824
%257 = bitcast i8* %256 to i64*
%258 = load i64* %257, align 8
%259 = sub i64 0, %258
%260 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %259, i64 0)
%261 = extractvalue { i64, i1 } %260, 0
%262 = extractvalue { i64, i1 } %260, 1
%263 = getelementptr i8* %ppu_state, i32 768
%264 = bitcast i8* %263 to i64*
store i64 %261, i64* %264, align 8
%265 = getelementptr i8* %ppu_state, i32 1544
%266 = bitcast i8* %265 to i64*
%267 = load i64* %266, align 8
%268 = and i64 %267, -536870913
%269 = zext i1 %262 to i64
%270 = shl i64 %269, 29
%271 = or i64 %268, %270
%272 = getelementptr i8* %ppu_state, i32 1544
%273 = bitcast i8* %272 to i64*
store i64 %271, i64* %273, align 8
br label %instr_0x001CC52C
instr_0x001CC52C: ; preds = %instr_0x001CC528
%274 = getelementptr i8* %ppu_state, i32 1544
%275 = bitcast i8* %274 to i64*
%276 = load i64* %275, align 8
%277 = lshr i64 %276, 29
%278 = and i64 %277, 1
%279 = getelementptr i8* %ppu_state, i32 768
%280 = bitcast i8* %279 to i64*
%281 = load i64* %280, align 8
%282 = getelementptr i8* %ppu_state, i32 824
%283 = bitcast i8* %282 to i64*
%284 = load i64* %283, align 8
%285 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %281, i64 %278)
%286 = extractvalue { i64, i1 } %285, 0
%287 = extractvalue { i64, i1 } %285, 1
%288 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %286, i64 %284)
%289 = extractvalue { i64, i1 } %288, 0
%290 = extractvalue { i64, i1 } %288, 1
%291 = or i1 %287, %290
%292 = getelementptr i8* %ppu_state, i32 824
%293 = bitcast i8* %292 to i64*
store i64 %289, i64* %293, align 8
%294 = getelementptr i8* %ppu_state, i32 1544
%295 = bitcast i8* %294 to i64*
%296 = load i64* %295, align 8
%297 = and i64 %296, -536870913
%298 = zext i1 %291 to i64
%299 = shl i64 %298, 29
%300 = or i64 %297, %299
%301 = getelementptr i8* %ppu_state, i32 1544
%302 = bitcast i8* %301 to i64*
store i64 %300, i64* %302, align 8
br label %instr_0x001CC530
instr_0x001CC530: ; preds = %instr_0x001CC52C
%303 = getelementptr i8* %ppu_state, i32 784
%304 = bitcast i8* %303 to i64*
%305 = load i64* %304, align 8
%306 = add i64 %305, -14088
%307 = and i64 %306, 4294967295
%308 = add i64 %307, 2147418112
%309 = inttoptr i64 %308 to i32*
%310 = load i32* %309
%311 = call i32 @llvm.bswap.i32(i32 %310)
%312 = zext i32 %311 to i64
%313 = getelementptr i8* %ppu_state, i32 840
%314 = bitcast i8* %313 to i64*
store i64 %312, i64* %314, align 8
br label %instr_0x001CC534
instr_0x001CC534: ; preds = %instr_0x001CC530
%315 = getelementptr i8* %ppu_state, i32 840
%316 = bitcast i8* %315 to i64*
%317 = load i64* %316, align 8
%318 = add i64 %317, 0
%319 = and i64 %318, 4294967295
%320 = add i64 %319, 2147418112
%321 = inttoptr i64 %320 to i32*
%322 = load i32* %321
%323 = call i32 @llvm.bswap.i32(i32 %322)
%324 = zext i32 %323 to i64
%325 = getelementptr i8* %ppu_state, i32 792
%326 = bitcast i8* %325 to i64*
store i64 %324, i64* %326, align 8
br label %instr_0x001CC538
instr_0x001CC538: ; preds = %instr_0x001CC534
%327 = getelementptr i8* %ppu_state, i32 800
%328 = bitcast i8* %327 to i64*
store i64 0, i64* %328, align 8
br label %instr_0x001CC53C
instr_0x001CC53C: ; preds = %instr_0x001CC538
%329 = getelementptr i8* %ppu_state, i32 808
%330 = bitcast i8* %329 to i64*
store i64 0, i64* %330, align 8
br label %instr_0x001CC540
instr_0x001CC540: ; preds = %instr_0x001CC53C
%331 = getelementptr i8* %ppu_state, i32 816
%332 = bitcast i8* %331 to i64*
%333 = load i64* %332, align 8
%334 = add i64 %333, 1
%335 = getelementptr i8* %ppu_state, i32 816
%336 = bitcast i8* %335 to i64*
store i64 %334, i64* %336, align 8
br label %instr_0x001CC544
instr_0x001CC544: ; preds = %instr_0x001CC540
%337 = getelementptr i8* %ppu_state, i32 824
%338 = bitcast i8* %337 to i64*
%339 = load i64* %338, align 8
%340 = sub i64 0, %339
%341 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %340, i64 2)
%342 = extractvalue { i64, i1 } %341, 0
%343 = extractvalue { i64, i1 } %341, 1
%344 = getelementptr i8* %ppu_state, i32 824
%345 = bitcast i8* %344 to i64*
store i64 %342, i64* %345, align 8
%346 = getelementptr i8* %ppu_state, i32 1544
%347 = bitcast i8* %346 to i64*
%348 = load i64* %347, align 8
%349 = and i64 %348, -536870913
%350 = zext i1 %343 to i64
%351 = shl i64 %350, 29
%352 = or i64 %349, %351
%353 = getelementptr i8* %ppu_state, i32 1544
%354 = bitcast i8* %353 to i64*
store i64 %352, i64* %354, align 8
br label %instr_0x001CC548
instr_0x001CC548: ; preds = %instr_0x001CC544
%355 = getelementptr i8* %ppu_state, i32 832
%356 = bitcast i8* %355 to i64*
store i64 1, i64* %356, align 8
br label %instr_0x001CC54C
instr_0x001CC54C: ; preds = %instr_0x001CC548
%357 = getelementptr i8* %ppu_state, i32 1568
%358 = bitcast i8* %357 to i64*
store i64 1885520, i64* %358, align 8
%359 = getelementptr i8* %ppu_state, i32 1664
%360 = bitcast i8* %359 to i32*
store i32 2048536, i32* %360, align 4
%361 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC550
instr_0x001CC550: ; preds = %instr_0x001CC54C
%362 = getelementptr i8* %ppu_state, i32 768
%363 = bitcast i8* %362 to i64*
%364 = load i64* %363, align 8
%365 = getelementptr i8* %ppu_state, i32 768
%366 = bitcast i8* %365 to i64*
store i64 %364, i64* %366, align 8
br label %instr_0x001CC554
instr_0x001CC554: ; preds = %instr_0x001CC550, %instr_0x001CC514
%367 = getelementptr i8* %ppu_state, i32 776
%368 = bitcast i8* %367 to i64*
%369 = load i64* %368, align 8
%370 = add i64 %369, 112
%371 = and i64 %370, 4294967295
%372 = add i64 %371, 2147418112
%373 = inttoptr i64 %372 to i64*
%374 = load i64* %373
%375 = call i64 @llvm.bswap.i64(i64 %374)
%376 = getelementptr i8* %ppu_state, i32 768
%377 = bitcast i8* %376 to i64*
store i64 %375, i64* %377, align 8
br label %instr_0x001CC558
instr_0x001CC558: ; preds = %instr_0x001CC554
%378 = getelementptr i8* %ppu_state, i32 1016
%379 = bitcast i8* %378 to i64*
%380 = load i64* %379, align 8
%381 = add i64 %380, 536
%382 = getelementptr i8* %ppu_state, i32 768
%383 = bitcast i8* %382 to i64*
%384 = load i64* %383, align 8
%385 = call i64 @llvm.bswap.i64(i64 %384)
%386 = and i64 %381, 4294967295
%387 = add i64 %386, 2147418112
%388 = inttoptr i64 %387 to i64*
store i64 %385, i64* %388
br label %instr_0x001CC55C
instr_0x001CC55C: ; preds = %instr_0x001CC558
%389 = getelementptr i8* %ppu_state, i32 992
%390 = bitcast i8* %389 to i64*
%391 = load i64* %390, align 8
%392 = add i64 %391, 42
%393 = and i64 %392, 4294967295
%394 = add i64 %393, 2147418112
%395 = inttoptr i64 %394 to i8*
%396 = load i8* %395
%397 = zext i8 %396 to i64
%398 = getelementptr i8* %ppu_state, i32 768
%399 = bitcast i8* %398 to i64*
store i64 %397, i64* %399, align 8
br label %instr_0x001CC560
instr_0x001CC560: ; preds = %instr_0x001CC55C
%400 = getelementptr i8* %ppu_state, i32 768
%401 = load i8* %400, align 8
%402 = sext i8 %401 to i64
%403 = getelementptr i8* %ppu_state, i32 840
%404 = bitcast i8* %403 to i64*
store i64 %402, i64* %404, align 8
br label %instr_0x001CC564
instr_0x001CC564: ; preds = %instr_0x001CC560
%405 = getelementptr i8* %ppu_state, i32 840
%406 = bitcast i8* %405 to i64*
%407 = load i64* %406, align 8
%408 = add i64 %407, -2
%409 = getelementptr i8* %ppu_state, i32 768
%410 = bitcast i8* %409 to i64*
store i64 %408, i64* %410, align 8
br label %instr_0x001CC568
instr_0x001CC568: ; preds = %instr_0x001CC564
%411 = getelementptr i8* %ppu_state, i32 768
%412 = bitcast i8* %411 to i32*
%413 = load i32* %412, align 8
%414 = zext i32 %413 to i64
%415 = shl i64 %414, 32
%416 = or i64 %414, %415
%417 = and i64 %416, 255
%418 = getelementptr i8* %ppu_state, i32 768
%419 = bitcast i8* %418 to i64*
store i64 %417, i64* %419, align 8
br label %instr_0x001CC56C
instr_0x001CC56C: ; preds = %instr_0x001CC568
%420 = getelementptr i8* %ppu_state, i32 768
%421 = bitcast i8* %420 to i32*
%422 = load i32* %421, align 8
%423 = zext i32 %422 to i64
%424 = icmp ult i64 %423, 1
%425 = icmp ugt i64 %423, 1
%426 = icmp eq i64 %423, 1
%427 = getelementptr i8* %ppu_state, i32 1540
%428 = bitcast i8* %427 to i32*
%429 = load i32* %428, align 4
%430 = getelementptr i8* %ppu_state, i32 1544
%431 = bitcast i8* %430 to i64*
%432 = load i64* %431, align 8
%433 = lshr i64 %432, 31
%434 = and i64 %433, 1
%435 = and i32 %429, -16
%436 = zext i1 %424 to i32
%437 = shl i32 %436, 3
%438 = or i32 %435, %437
%439 = zext i1 %425 to i32
%440 = shl i32 %439, 2
%441 = or i32 %438, %440
%442 = zext i1 %426 to i32
%443 = shl i32 %442, 1
%444 = or i32 %441, %443
%445 = trunc i64 %434 to i32
%446 = or i32 %444, %445
%447 = getelementptr i8* %ppu_state, i32 1540
%448 = bitcast i8* %447 to i32*
store i32 %446, i32* %448, align 4
br label %instr_0x001CC570
instr_0x001CC570: ; preds = %instr_0x001CC56C
%449 = getelementptr i8* %ppu_state, i32 1576
%450 = bitcast i8* %449 to i64*
%451 = load i64* %450, align 8
%452 = getelementptr i8* %ppu_state, i32 1540
%453 = bitcast i8* %452 to i32*
%454 = load i32* %453, align 4
%455 = lshr i32 %454, 2
%456 = and i32 %455, 1
%457 = trunc i32 %456 to i1
br i1 %457, label %instr_0x001CC7AC, label %instr_0x001CC574
instr_0x001CC574: ; preds = %instr_0x001CC570
%458 = getelementptr i8* %ppu_state, i32 840
%459 = bitcast i8* %458 to i64*
%460 = load i64* %459, align 8
%461 = getelementptr i8* %ppu_state, i32 840
%462 = bitcast i8* %461 to i64*
%463 = load i64* %462, align 8
%464 = or i64 %460, %463
%465 = getelementptr i8* %ppu_state, i32 968
%466 = bitcast i8* %465 to i64*
store i64 %464, i64* %466, align 8
br label %instr_0x001CC578
instr_0x001CC578: ; preds = %instr_0x001CC574
%467 = getelementptr i8* %ppu_state, i32 984
%468 = bitcast i8* %467 to i64*
%469 = load i64* %468, align 8
%470 = add i64 %469, 393216
%471 = getelementptr i8* %ppu_state, i32 808
%472 = bitcast i8* %471 to i64*
store i64 %470, i64* %472, align 8
br label %instr_0x001CC57C
instr_0x001CC57C: ; preds = %instr_0x001CC578
%473 = getelementptr i8* %ppu_state, i32 808
%474 = bitcast i8* %473 to i64*
%475 = load i64* %474, align 8
%476 = add i64 %475, 6784
%477 = getelementptr i8* %ppu_state, i32 808
%478 = bitcast i8* %477 to i64*
store i64 %476, i64* %478, align 8
br label %instr_0x001CC580
instr_0x001CC580: ; preds = %instr_0x001CC57C
%479 = getelementptr i8* %ppu_state, i32 1016
%480 = bitcast i8* %479 to i64*
%481 = load i64* %480, align 8
%482 = getelementptr i8* %ppu_state, i32 1016
%483 = bitcast i8* %482 to i64*
%484 = load i64* %483, align 8
%485 = or i64 %481, %484
%486 = getelementptr i8* %ppu_state, i32 792
%487 = bitcast i8* %486 to i64*
store i64 %485, i64* %487, align 8
br label %instr_0x001CC584
instr_0x001CC584: ; preds = %instr_0x001CC580
%488 = getelementptr i8* %ppu_state, i32 800
%489 = bitcast i8* %488 to i64*
store i64 0, i64* %489, align 8
br label %instr_0x001CC588
instr_0x001CC588: ; preds = %instr_0x001CC584
%490 = getelementptr i8* %ppu_state, i32 808
%491 = bitcast i8* %490 to i32*
%492 = load i32* %491, align 8
%493 = sext i32 %492 to i64
%494 = getelementptr i8* %ppu_state, i32 808
%495 = bitcast i8* %494 to i64*
store i64 %493, i64* %495, align 8
br label %instr_0x001CC58C
instr_0x001CC58C: ; preds = %instr_0x001CC588
%496 = getelementptr i8* %ppu_state, i32 1568
%497 = bitcast i8* %496 to i64*
store i64 1885584, i64* %497, align 8
%498 = getelementptr i8* %ppu_state, i32 1664
%499 = bitcast i8* %498 to i32*
store i32 1880980, i32* %499, align 4
%500 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC590
instr_0x001CC590: ; preds = %instr_0x001CC58C
%501 = getelementptr i8* %ppu_state, i32 784
%502 = bitcast i8* %501 to i64*
%503 = load i64* %502, align 8
%504 = add i64 %503, -13988
%505 = and i64 %504, 4294967295
%506 = add i64 %505, 2147418112
%507 = inttoptr i64 %506 to i32*
%508 = load i32* %507
%509 = call i32 @llvm.bswap.i32(i32 %508)
%510 = zext i32 %509 to i64
%511 = getelementptr i8* %ppu_state, i32 840
%512 = bitcast i8* %511 to i64*
store i64 %510, i64* %512, align 8
br label %instr_0x001CC594
instr_0x001CC594: ; preds = %instr_0x001CC590
%513 = getelementptr i8* %ppu_state, i32 840
%514 = bitcast i8* %513 to i64*
%515 = load i64* %514, align 8
%516 = add i64 %515, 0
%517 = and i64 %516, 4294967295
%518 = add i64 %517, 2147418112
%519 = inttoptr i64 %518 to i32*
%520 = load i32* %519
%521 = call i32 @llvm.bswap.i32(i32 %520)
%522 = zext i32 %521 to i64
%523 = getelementptr i8* %ppu_state, i32 768
%524 = bitcast i8* %523 to i64*
store i64 %522, i64* %524, align 8
br label %instr_0x001CC598
instr_0x001CC598: ; preds = %instr_0x001CC594
%525 = getelementptr i8* %ppu_state, i32 840
%526 = bitcast i8* %525 to i64*
%527 = load i64* %526, align 8
%528 = add i64 %527, 4
%529 = and i64 %528, 4294967295
%530 = add i64 %529, 2147418112
%531 = inttoptr i64 %530 to i32*
%532 = load i32* %531
%533 = call i32 @llvm.bswap.i32(i32 %532)
%534 = zext i32 %533 to i64
%535 = getelementptr i8* %ppu_state, i32 856
%536 = bitcast i8* %535 to i64*
store i64 %534, i64* %536, align 8
br label %instr_0x001CC59C
instr_0x001CC59C: ; preds = %instr_0x001CC598
%537 = getelementptr i8* %ppu_state, i32 840
%538 = bitcast i8* %537 to i64*
%539 = load i64* %538, align 8
%540 = add i64 %539, 8
%541 = and i64 %540, 4294967295
%542 = add i64 %541, 2147418112
%543 = inttoptr i64 %542 to i32*
%544 = load i32* %543
%545 = call i32 @llvm.bswap.i32(i32 %544)
%546 = zext i32 %545 to i64
%547 = getelementptr i8* %ppu_state, i32 848
%548 = bitcast i8* %547 to i64*
store i64 %546, i64* %548, align 8
br label %instr_0x001CC5A0
instr_0x001CC5A0: ; preds = %instr_0x001CC59C
%549 = getelementptr i8* %ppu_state, i32 840
%550 = bitcast i8* %549 to i64*
%551 = load i64* %550, align 8
%552 = add i64 %551, 12
%553 = and i64 %552, 4294967295
%554 = add i64 %553, 2147418112
%555 = inttoptr i64 %554 to i32*
%556 = load i32* %555
%557 = call i32 @llvm.bswap.i32(i32 %556)
%558 = zext i32 %557 to i64
%559 = getelementptr i8* %ppu_state, i32 840
%560 = bitcast i8* %559 to i64*
store i64 %558, i64* %560, align 8
br label %instr_0x001CC5A4
instr_0x001CC5A4: ; preds = %instr_0x001CC5A0
%561 = getelementptr i8* %ppu_state, i32 776
%562 = bitcast i8* %561 to i64*
%563 = load i64* %562, align 8
%564 = add i64 %563, 120
%565 = getelementptr i8* %ppu_state, i32 768
%566 = bitcast i8* %565 to i32*
%567 = load i32* %566, align 8
%568 = call i32 @llvm.bswap.i32(i32 %567)
%569 = and i64 %564, 4294967295
%570 = add i64 %569, 2147418112
%571 = inttoptr i64 %570 to i32*
store i32 %568, i32* %571
br label %instr_0x001CC5A8
instr_0x001CC5A8: ; preds = %instr_0x001CC5A4
%572 = getelementptr i8* %ppu_state, i32 776
%573 = bitcast i8* %572 to i64*
%574 = load i64* %573, align 8
%575 = add i64 %574, 124
%576 = getelementptr i8* %ppu_state, i32 856
%577 = bitcast i8* %576 to i32*
%578 = load i32* %577, align 8
%579 = call i32 @llvm.bswap.i32(i32 %578)
%580 = and i64 %575, 4294967295
%581 = add i64 %580, 2147418112
%582 = inttoptr i64 %581 to i32*
store i32 %579, i32* %582
br label %instr_0x001CC5AC
instr_0x001CC5AC: ; preds = %instr_0x001CC5A8
%583 = getelementptr i8* %ppu_state, i32 776
%584 = bitcast i8* %583 to i64*
%585 = load i64* %584, align 8
%586 = add i64 %585, 128
%587 = getelementptr i8* %ppu_state, i32 848
%588 = bitcast i8* %587 to i32*
%589 = load i32* %588, align 8
%590 = call i32 @llvm.bswap.i32(i32 %589)
%591 = and i64 %586, 4294967295
%592 = add i64 %591, 2147418112
%593 = inttoptr i64 %592 to i32*
store i32 %590, i32* %593
br label %instr_0x001CC5B0
instr_0x001CC5B0: ; preds = %instr_0x001CC5AC
%594 = getelementptr i8* %ppu_state, i32 776
%595 = bitcast i8* %594 to i64*
%596 = load i64* %595, align 8
%597 = add i64 %596, 132
%598 = getelementptr i8* %ppu_state, i32 840
%599 = bitcast i8* %598 to i32*
%600 = load i32* %599, align 8
%601 = call i32 @llvm.bswap.i32(i32 %600)
%602 = and i64 %597, 4294967295
%603 = add i64 %602, 2147418112
%604 = inttoptr i64 %603 to i32*
store i32 %601, i32* %604
br label %instr_0x001CC5B4
instr_0x001CC5B4: ; preds = %instr_0x001CC5B0
%605 = getelementptr i8* %ppu_state, i32 1008
%606 = bitcast i8* %605 to i64*
%607 = load i64* %606, align 8
%608 = add i64 %607, 40
%609 = and i64 %608, 4294967295
%610 = add i64 %609, 2147418112
%611 = inttoptr i64 %610 to i16*
%612 = load i16* %611
%613 = call i16 @llvm.bswap.i16(i16 %612)
%614 = zext i16 %613 to i64
%615 = getelementptr i8* %ppu_state, i32 768
%616 = bitcast i8* %615 to i64*
store i64 %614, i64* %616, align 8
br label %instr_0x001CC5B8
instr_0x001CC5B8: ; preds = %instr_0x001CC5B4
%617 = getelementptr i8* %ppu_state, i32 768
%618 = bitcast i8* %617 to i16*
%619 = load i16* %618, align 8
%620 = sext i16 %619 to i64
%621 = getelementptr i8* %ppu_state, i32 768
%622 = bitcast i8* %621 to i64*
store i64 %620, i64* %622, align 8
br label %instr_0x001CC5BC
instr_0x001CC5BC: ; preds = %instr_0x001CC5B8
%623 = getelementptr i8* %ppu_state, i32 768
%624 = bitcast i8* %623 to i64*
%625 = load i64* %624, align 8
%626 = and i64 %625, 2047
%627 = getelementptr i8* %ppu_state, i32 856
%628 = bitcast i8* %627 to i64*
store i64 %626, i64* %628, align 8
br label %instr_0x001CC5C0
instr_0x001CC5C0: ; preds = %instr_0x001CC5BC
%629 = getelementptr i8* %ppu_state, i32 856
%630 = bitcast i8* %629 to i64*
%631 = load i64* %630, align 8
%632 = icmp slt i64 %631, 0
%633 = icmp sgt i64 %631, 0
%634 = icmp eq i64 %631, 0
%635 = getelementptr i8* %ppu_state, i32 1540
%636 = bitcast i8* %635 to i32*
%637 = load i32* %636, align 4
%638 = getelementptr i8* %ppu_state, i32 1544
%639 = bitcast i8* %638 to i64*
%640 = load i64* %639, align 8
%641 = lshr i64 %640, 31
%642 = and i64 %641, 1
%643 = and i32 %637, -16
%644 = zext i1 %632 to i32
%645 = shl i32 %644, 3
%646 = or i32 %643, %645
%647 = zext i1 %633 to i32
%648 = shl i32 %647, 2
%649 = or i32 %646, %648
%650 = zext i1 %634 to i32
%651 = shl i32 %650, 1
%652 = or i32 %649, %651
%653 = trunc i64 %642 to i32
%654 = or i32 %652, %653
%655 = getelementptr i8* %ppu_state, i32 1540
%656 = bitcast i8* %655 to i32*
store i32 %654, i32* %656, align 4
br label %instr_0x001CC5C4
instr_0x001CC5C4: ; preds = %instr_0x001CC5C0
%657 = getelementptr i8* %ppu_state, i32 768
%658 = bitcast i8* %657 to i64*
%659 = load i64* %658, align 8
%660 = zext i64 %659 to i128
%661 = shl i128 %660, 64
%662 = ashr i128 %661, 53
%663 = ashr i128 %662, 64
%664 = trunc i128 %663 to i64
%665 = getelementptr i8* %ppu_state, i32 840
%666 = bitcast i8* %665 to i64*
store i64 %664, i64* %666, align 8
%667 = trunc i128 %662 to i64
%668 = icmp slt i64 %664, 0
%669 = icmp ne i64 %667, 0
%670 = and i1 %668, %669
%671 = getelementptr i8* %ppu_state, i32 1544
%672 = bitcast i8* %671 to i64*
%673 = load i64* %672, align 8
%674 = and i64 %673, -536870913
%675 = zext i1 %670 to i64
%676 = shl i64 %675, 29
%677 = or i64 %674, %676
%678 = getelementptr i8* %ppu_state, i32 1544
%679 = bitcast i8* %678 to i64*
store i64 %677, i64* %679, align 8
br label %instr_0x001CC5C8
instr_0x001CC5C8: ; preds = %instr_0x001CC5C4
%680 = getelementptr i8* %ppu_state, i32 840
%681 = bitcast i8* %680 to i64*
%682 = load i64* %681, align 8
%683 = add i64 %682, 1
%684 = getelementptr i8* %ppu_state, i32 840
%685 = bitcast i8* %684 to i64*
store i64 %683, i64* %685, align 8
br label %instr_0x001CC5CC
instr_0x001CC5CC: ; preds = %instr_0x001CC5C8
%686 = getelementptr i8* %ppu_state, i32 1576
%687 = bitcast i8* %686 to i64*
%688 = load i64* %687, align 8
%689 = getelementptr i8* %ppu_state, i32 1540
%690 = bitcast i8* %689 to i32*
%691 = load i32* %690, align 4
%692 = lshr i32 %691, 1
%693 = and i32 %692, 1
%694 = trunc i32 %693 to i1
br i1 %694, label %instr_0x001CC5E0, label %instr_0x001CC5D0
instr_0x001CC5D0: ; preds = %instr_0x001CC5CC
%695 = getelementptr i8* %ppu_state, i32 840
%696 = bitcast i8* %695 to i64*
%697 = load i64* %696, align 8
%698 = icmp ult i64 %697, 2
%699 = icmp ugt i64 %697, 2
%700 = icmp eq i64 %697, 2
%701 = getelementptr i8* %ppu_state, i32 1540
%702 = bitcast i8* %701 to i32*
%703 = load i32* %702, align 4
%704 = getelementptr i8* %ppu_state, i32 1544
%705 = bitcast i8* %704 to i64*
%706 = load i64* %705, align 8
%707 = lshr i64 %706, 31
%708 = and i64 %707, 1
%709 = and i32 %703, -16
%710 = zext i1 %698 to i32
%711 = shl i32 %710, 3
%712 = or i32 %709, %711
%713 = zext i1 %699 to i32
%714 = shl i32 %713, 2
%715 = or i32 %712, %714
%716 = zext i1 %700 to i32
%717 = shl i32 %716, 1
%718 = or i32 %715, %717
%719 = trunc i64 %708 to i32
%720 = or i32 %718, %719
%721 = getelementptr i8* %ppu_state, i32 1540
%722 = bitcast i8* %721 to i32*
store i32 %720, i32* %722, align 4
br label %instr_0x001CC5D4
instr_0x001CC5D4: ; preds = %instr_0x001CC5D0
%723 = getelementptr i8* %ppu_state, i32 1576
%724 = bitcast i8* %723 to i64*
%725 = load i64* %724, align 8
%726 = getelementptr i8* %ppu_state, i32 1540
%727 = bitcast i8* %726 to i32*
%728 = load i32* %727, align 4
%729 = lshr i32 %728, 3
%730 = and i32 %729, 1
%731 = trunc i32 %730 to i1
br i1 %731, label %instr_0x001CC5E0, label %instr_0x001CC5D8
instr_0x001CC5D8: ; preds = %instr_0x001CC5D4
%732 = getelementptr i8* %ppu_state, i32 768
%733 = bitcast i8* %732 to i64*
%734 = load i64* %733, align 8
%735 = getelementptr i8* %ppu_state, i32 856
%736 = bitcast i8* %735 to i64*
%737 = load i64* %736, align 8
%738 = xor i64 %734, %737
%739 = getelementptr i8* %ppu_state, i32 768
%740 = bitcast i8* %739 to i64*
store i64 %738, i64* %740, align 8
br label %instr_0x001CC5DC
instr_0x001CC5DC: ; preds = %instr_0x001CC5D8
%741 = getelementptr i8* %ppu_state, i32 768
%742 = bitcast i8* %741 to i64*
%743 = load i64* %742, align 8
%744 = or i64 %743, 2048
%745 = getelementptr i8* %ppu_state, i32 768
%746 = bitcast i8* %745 to i64*
store i64 %744, i64* %746, align 8
br label %instr_0x001CC5E0
instr_0x001CC5E0: ; preds = %instr_0x001CC5DC, %instr_0x001CC5D4, %instr_0x001CC5CC
%747 = getelementptr i8* %ppu_state, i32 776
%748 = bitcast i8* %747 to i64*
%749 = load i64* %748, align 8
%750 = add i64 %749, 160
%751 = getelementptr i8* %ppu_state, i32 768
%752 = bitcast i8* %751 to i64*
%753 = load i64* %752, align 8
%754 = call i64 @llvm.bswap.i64(i64 %753)
%755 = and i64 %750, 4294967295
%756 = add i64 %755, 2147418112
%757 = inttoptr i64 %756 to i64*
store i64 %754, i64* %757
br label %instr_0x001CC5E4
instr_0x001CC5E4: ; preds = %instr_0x001CC5E0
%758 = getelementptr i8* %ppu_state, i32 776
%759 = bitcast i8* %758 to i64*
%760 = load i64* %759, align 8
%761 = add i64 %760, 160
%762 = and i64 %761, 4294967295
%763 = add i64 %762, 2147418112
%764 = inttoptr i64 %763 to i64*
%765 = load i64* %764
%766 = call i64 @llvm.bswap.i64(i64 %765)
%767 = getelementptr i8* %ppu_state, i32 456
%768 = bitcast i8* %767 to double*
%769 = bitcast i64 %766 to double
store double %769, double* %768, align 8
br label %instr_0x001CC5E8
instr_0x001CC5E8: ; preds = %instr_0x001CC5E4
%770 = getelementptr i8* %ppu_state, i32 456
%771 = bitcast i8* %770 to i64*
%772 = load i64* %771, align 8
%773 = sitofp i64 %772 to double
%774 = getelementptr i8* %ppu_state, i32 456
%775 = bitcast i8* %774 to double*
store double %773, double* %775, align 8
br label %instr_0x001CC5EC
instr_0x001CC5EC: ; preds = %instr_0x001CC5E8
%776 = getelementptr i8* %ppu_state, i32 456
%777 = bitcast i8* %776 to double*
%778 = load double* %777, align 8
%779 = fptrunc double %778 to float
%780 = fpext float %779 to double
%781 = getelementptr i8* %ppu_state, i32 248
%782 = bitcast i8* %781 to double*
store double %780, double* %782, align 8
br label %instr_0x001CC5F0
instr_0x001CC5F0: ; preds = %instr_0x001CC5EC
%783 = getelementptr i8* %ppu_state, i32 776
%784 = bitcast i8* %783 to i64*
%785 = load i64* %784, align 8
%786 = add i64 %785, 120
%787 = getelementptr i8* %ppu_state, i32 248
%788 = bitcast i8* %787 to double*
%789 = load double* %788, align 8
%790 = fptrunc double %789 to float
%791 = bitcast float %790 to i32
%792 = call i32 @llvm.bswap.i32(i32 %791)
%793 = and i64 %786, 4294967295
%794 = add i64 %793, 2147418112
%795 = inttoptr i64 %794 to i32*
store i32 %792, i32* %795
br label %instr_0x001CC5F4
instr_0x001CC5F4: ; preds = %instr_0x001CC5F0
%796 = getelementptr i8* %ppu_state, i32 1008
%797 = bitcast i8* %796 to i64*
%798 = load i64* %797, align 8
%799 = add i64 %798, 42
%800 = and i64 %799, 4294967295
%801 = add i64 %800, 2147418112
%802 = inttoptr i64 %801 to i16*
%803 = load i16* %802
%804 = call i16 @llvm.bswap.i16(i16 %803)
%805 = zext i16 %804 to i64
%806 = getelementptr i8* %ppu_state, i32 768
%807 = bitcast i8* %806 to i64*
store i64 %805, i64* %807, align 8
br label %instr_0x001CC5F8
instr_0x001CC5F8: ; preds = %instr_0x001CC5F4
%808 = getelementptr i8* %ppu_state, i32 768
%809 = bitcast i8* %808 to i16*
%810 = load i16* %809, align 8
%811 = sext i16 %810 to i64
%812 = getelementptr i8* %ppu_state, i32 768
%813 = bitcast i8* %812 to i64*
store i64 %811, i64* %813, align 8
br label %instr_0x001CC5FC
instr_0x001CC5FC: ; preds = %instr_0x001CC5F8
%814 = getelementptr i8* %ppu_state, i32 768
%815 = bitcast i8* %814 to i64*
%816 = load i64* %815, align 8
%817 = and i64 %816, 2047
%818 = getelementptr i8* %ppu_state, i32 856
%819 = bitcast i8* %818 to i64*
store i64 %817, i64* %819, align 8
br label %instr_0x001CC600
instr_0x001CC600: ; preds = %instr_0x001CC5FC
%820 = getelementptr i8* %ppu_state, i32 856
%821 = bitcast i8* %820 to i64*
%822 = load i64* %821, align 8
%823 = icmp slt i64 %822, 0
%824 = icmp sgt i64 %822, 0
%825 = icmp eq i64 %822, 0
%826 = getelementptr i8* %ppu_state, i32 1540
%827 = bitcast i8* %826 to i32*
%828 = load i32* %827, align 4
%829 = getelementptr i8* %ppu_state, i32 1544
%830 = bitcast i8* %829 to i64*
%831 = load i64* %830, align 8
%832 = lshr i64 %831, 31
%833 = and i64 %832, 1
%834 = and i32 %828, -16
%835 = zext i1 %823 to i32
%836 = shl i32 %835, 3
%837 = or i32 %834, %836
%838 = zext i1 %824 to i32
%839 = shl i32 %838, 2
%840 = or i32 %837, %839
%841 = zext i1 %825 to i32
%842 = shl i32 %841, 1
%843 = or i32 %840, %842
%844 = trunc i64 %833 to i32
%845 = or i32 %843, %844
%846 = getelementptr i8* %ppu_state, i32 1540
%847 = bitcast i8* %846 to i32*
store i32 %845, i32* %847, align 4
br label %instr_0x001CC604
instr_0x001CC604: ; preds = %instr_0x001CC600
%848 = getelementptr i8* %ppu_state, i32 768
%849 = bitcast i8* %848 to i64*
%850 = load i64* %849, align 8
%851 = zext i64 %850 to i128
%852 = shl i128 %851, 64
%853 = ashr i128 %852, 53
%854 = ashr i128 %853, 64
%855 = trunc i128 %854 to i64
%856 = getelementptr i8* %ppu_state, i32 840
%857 = bitcast i8* %856 to i64*
store i64 %855, i64* %857, align 8
%858 = trunc i128 %853 to i64
%859 = icmp slt i64 %855, 0
%860 = icmp ne i64 %858, 0
%861 = and i1 %859, %860
%862 = getelementptr i8* %ppu_state, i32 1544
%863 = bitcast i8* %862 to i64*
%864 = load i64* %863, align 8
%865 = and i64 %864, -536870913
%866 = zext i1 %861 to i64
%867 = shl i64 %866, 29
%868 = or i64 %865, %867
%869 = getelementptr i8* %ppu_state, i32 1544
%870 = bitcast i8* %869 to i64*
store i64 %868, i64* %870, align 8
br label %instr_0x001CC608
instr_0x001CC608: ; preds = %instr_0x001CC604
%871 = getelementptr i8* %ppu_state, i32 840
%872 = bitcast i8* %871 to i64*
%873 = load i64* %872, align 8
%874 = add i64 %873, 1
%875 = getelementptr i8* %ppu_state, i32 840
%876 = bitcast i8* %875 to i64*
store i64 %874, i64* %876, align 8
br label %instr_0x001CC60C
instr_0x001CC60C: ; preds = %instr_0x001CC608
%877 = getelementptr i8* %ppu_state, i32 1576
%878 = bitcast i8* %877 to i64*
%879 = load i64* %878, align 8
%880 = getelementptr i8* %ppu_state, i32 1540
%881 = bitcast i8* %880 to i32*
%882 = load i32* %881, align 4
%883 = lshr i32 %882, 1
%884 = and i32 %883, 1
%885 = trunc i32 %884 to i1
br i1 %885, label %instr_0x001CC620, label %instr_0x001CC610
instr_0x001CC610: ; preds = %instr_0x001CC60C
%886 = getelementptr i8* %ppu_state, i32 840
%887 = bitcast i8* %886 to i64*
%888 = load i64* %887, align 8
%889 = icmp ult i64 %888, 2
%890 = icmp ugt i64 %888, 2
%891 = icmp eq i64 %888, 2
%892 = getelementptr i8* %ppu_state, i32 1540
%893 = bitcast i8* %892 to i32*
%894 = load i32* %893, align 4
%895 = getelementptr i8* %ppu_state, i32 1544
%896 = bitcast i8* %895 to i64*
%897 = load i64* %896, align 8
%898 = lshr i64 %897, 31
%899 = and i64 %898, 1
%900 = and i32 %894, -16
%901 = zext i1 %889 to i32
%902 = shl i32 %901, 3
%903 = or i32 %900, %902
%904 = zext i1 %890 to i32
%905 = shl i32 %904, 2
%906 = or i32 %903, %905
%907 = zext i1 %891 to i32
%908 = shl i32 %907, 1
%909 = or i32 %906, %908
%910 = trunc i64 %899 to i32
%911 = or i32 %909, %910
%912 = getelementptr i8* %ppu_state, i32 1540
%913 = bitcast i8* %912 to i32*
store i32 %911, i32* %913, align 4
br label %instr_0x001CC614
instr_0x001CC614: ; preds = %instr_0x001CC610
%914 = getelementptr i8* %ppu_state, i32 1576
%915 = bitcast i8* %914 to i64*
%916 = load i64* %915, align 8
%917 = getelementptr i8* %ppu_state, i32 1540
%918 = bitcast i8* %917 to i32*
%919 = load i32* %918, align 4
%920 = lshr i32 %919, 3
%921 = and i32 %920, 1
%922 = trunc i32 %921 to i1
br i1 %922, label %instr_0x001CC620, label %instr_0x001CC618
instr_0x001CC618: ; preds = %instr_0x001CC614
%923 = getelementptr i8* %ppu_state, i32 768
%924 = bitcast i8* %923 to i64*
%925 = load i64* %924, align 8
%926 = getelementptr i8* %ppu_state, i32 856
%927 = bitcast i8* %926 to i64*
%928 = load i64* %927, align 8
%929 = xor i64 %925, %928
%930 = getelementptr i8* %ppu_state, i32 768
%931 = bitcast i8* %930 to i64*
store i64 %929, i64* %931, align 8
br label %instr_0x001CC61C
instr_0x001CC61C: ; preds = %instr_0x001CC618
%932 = getelementptr i8* %ppu_state, i32 768
%933 = bitcast i8* %932 to i64*
%934 = load i64* %933, align 8
%935 = or i64 %934, 2048
%936 = getelementptr i8* %ppu_state, i32 768
%937 = bitcast i8* %936 to i64*
store i64 %935, i64* %937, align 8
br label %instr_0x001CC620
instr_0x001CC620: ; preds = %instr_0x001CC61C, %instr_0x001CC614, %instr_0x001CC60C
%938 = getelementptr i8* %ppu_state, i32 776
%939 = bitcast i8* %938 to i64*
%940 = load i64* %939, align 8
%941 = add i64 %940, 160
%942 = getelementptr i8* %ppu_state, i32 768
%943 = bitcast i8* %942 to i64*
%944 = load i64* %943, align 8
%945 = call i64 @llvm.bswap.i64(i64 %944)
%946 = and i64 %941, 4294967295
%947 = add i64 %946, 2147418112
%948 = inttoptr i64 %947 to i64*
store i64 %945, i64* %948
br label %instr_0x001CC624
instr_0x001CC624: ; preds = %instr_0x001CC620
%949 = getelementptr i8* %ppu_state, i32 776
%950 = bitcast i8* %949 to i64*
%951 = load i64* %950, align 8
%952 = add i64 %951, 160
%953 = and i64 %952, 4294967295
%954 = add i64 %953, 2147418112
%955 = inttoptr i64 %954 to i64*
%956 = load i64* %955
%957 = call i64 @llvm.bswap.i64(i64 %956)
%958 = getelementptr i8* %ppu_state, i32 456
%959 = bitcast i8* %958 to double*
%960 = bitcast i64 %957 to double
store double %960, double* %959, align 8
br label %instr_0x001CC628
instr_0x001CC628: ; preds = %instr_0x001CC624
%961 = getelementptr i8* %ppu_state, i32 456
%962 = bitcast i8* %961 to i64*
%963 = load i64* %962, align 8
%964 = sitofp i64 %963 to double
%965 = getelementptr i8* %ppu_state, i32 456
%966 = bitcast i8* %965 to double*
store double %964, double* %966, align 8
br label %instr_0x001CC62C
instr_0x001CC62C: ; preds = %instr_0x001CC628
%967 = getelementptr i8* %ppu_state, i32 456
%968 = bitcast i8* %967 to double*
%969 = load double* %968, align 8
%970 = fptrunc double %969 to float
%971 = fpext float %970 to double
%972 = getelementptr i8* %ppu_state, i32 248
%973 = bitcast i8* %972 to double*
store double %971, double* %973, align 8
br label %instr_0x001CC630
instr_0x001CC630: ; preds = %instr_0x001CC62C
%974 = getelementptr i8* %ppu_state, i32 776
%975 = bitcast i8* %974 to i64*
%976 = load i64* %975, align 8
%977 = add i64 %976, 124
%978 = getelementptr i8* %ppu_state, i32 248
%979 = bitcast i8* %978 to double*
%980 = load double* %979, align 8
%981 = fptrunc double %980 to float
%982 = bitcast float %981 to i32
%983 = call i32 @llvm.bswap.i32(i32 %982)
%984 = and i64 %977, 4294967295
%985 = add i64 %984, 2147418112
%986 = inttoptr i64 %985 to i32*
store i32 %983, i32* %986
br label %instr_0x001CC634
instr_0x001CC634: ; preds = %instr_0x001CC630
%987 = getelementptr i8* %ppu_state, i32 992
%988 = bitcast i8* %987 to i64*
%989 = load i64* %988, align 8
%990 = add i64 %989, 40
%991 = and i64 %990, 4294967295
%992 = add i64 %991, 2147418112
%993 = inttoptr i64 %992 to i8*
%994 = load i8* %993
%995 = zext i8 %994 to i64
%996 = getelementptr i8* %ppu_state, i32 768
%997 = bitcast i8* %996 to i64*
store i64 %995, i64* %997, align 8
br label %instr_0x001CC638
instr_0x001CC638: ; preds = %instr_0x001CC634
%998 = getelementptr i8* %ppu_state, i32 768
%999 = load i8* %998, align 8
%1000 = sext i8 %999 to i64
%1001 = getelementptr i8* %ppu_state, i32 768
%1002 = bitcast i8* %1001 to i64*
store i64 %1000, i64* %1002, align 8
br label %instr_0x001CC63C
instr_0x001CC63C: ; preds = %instr_0x001CC638
%1003 = getelementptr i8* %ppu_state, i32 768
%1004 = bitcast i8* %1003 to i64*
%1005 = load i64* %1004, align 8
%1006 = and i64 %1005, 2047
%1007 = getelementptr i8* %ppu_state, i32 856
%1008 = bitcast i8* %1007 to i64*
store i64 %1006, i64* %1008, align 8
br label %instr_0x001CC640
instr_0x001CC640: ; preds = %instr_0x001CC63C
%1009 = getelementptr i8* %ppu_state, i32 856
%1010 = bitcast i8* %1009 to i64*
%1011 = load i64* %1010, align 8
%1012 = icmp slt i64 %1011, 0
%1013 = icmp sgt i64 %1011, 0
%1014 = icmp eq i64 %1011, 0
%1015 = getelementptr i8* %ppu_state, i32 1540
%1016 = bitcast i8* %1015 to i32*
%1017 = load i32* %1016, align 4
%1018 = getelementptr i8* %ppu_state, i32 1544
%1019 = bitcast i8* %1018 to i64*
%1020 = load i64* %1019, align 8
%1021 = lshr i64 %1020, 31
%1022 = and i64 %1021, 1
%1023 = and i32 %1017, -16
%1024 = zext i1 %1012 to i32
%1025 = shl i32 %1024, 3
%1026 = or i32 %1023, %1025
%1027 = zext i1 %1013 to i32
%1028 = shl i32 %1027, 2
%1029 = or i32 %1026, %1028
%1030 = zext i1 %1014 to i32
%1031 = shl i32 %1030, 1
%1032 = or i32 %1029, %1031
%1033 = trunc i64 %1022 to i32
%1034 = or i32 %1032, %1033
%1035 = getelementptr i8* %ppu_state, i32 1540
%1036 = bitcast i8* %1035 to i32*
store i32 %1034, i32* %1036, align 4
br label %instr_0x001CC644
instr_0x001CC644: ; preds = %instr_0x001CC640
%1037 = getelementptr i8* %ppu_state, i32 768
%1038 = bitcast i8* %1037 to i64*
%1039 = load i64* %1038, align 8
%1040 = zext i64 %1039 to i128
%1041 = shl i128 %1040, 64
%1042 = ashr i128 %1041, 53
%1043 = ashr i128 %1042, 64
%1044 = trunc i128 %1043 to i64
%1045 = getelementptr i8* %ppu_state, i32 840
%1046 = bitcast i8* %1045 to i64*
store i64 %1044, i64* %1046, align 8
%1047 = trunc i128 %1042 to i64
%1048 = icmp slt i64 %1044, 0
%1049 = icmp ne i64 %1047, 0
%1050 = and i1 %1048, %1049
%1051 = getelementptr i8* %ppu_state, i32 1544
%1052 = bitcast i8* %1051 to i64*
%1053 = load i64* %1052, align 8
%1054 = and i64 %1053, -536870913
%1055 = zext i1 %1050 to i64
%1056 = shl i64 %1055, 29
%1057 = or i64 %1054, %1056
%1058 = getelementptr i8* %ppu_state, i32 1544
%1059 = bitcast i8* %1058 to i64*
store i64 %1057, i64* %1059, align 8
br label %instr_0x001CC648
instr_0x001CC648: ; preds = %instr_0x001CC644
%1060 = getelementptr i8* %ppu_state, i32 840
%1061 = bitcast i8* %1060 to i64*
%1062 = load i64* %1061, align 8
%1063 = add i64 %1062, 1
%1064 = getelementptr i8* %ppu_state, i32 840
%1065 = bitcast i8* %1064 to i64*
store i64 %1063, i64* %1065, align 8
br label %instr_0x001CC64C
instr_0x001CC64C: ; preds = %instr_0x001CC648
%1066 = getelementptr i8* %ppu_state, i32 1576
%1067 = bitcast i8* %1066 to i64*
%1068 = load i64* %1067, align 8
%1069 = getelementptr i8* %ppu_state, i32 1540
%1070 = bitcast i8* %1069 to i32*
%1071 = load i32* %1070, align 4
%1072 = lshr i32 %1071, 1
%1073 = and i32 %1072, 1
%1074 = trunc i32 %1073 to i1
br i1 %1074, label %instr_0x001CC660, label %instr_0x001CC650
instr_0x001CC650: ; preds = %instr_0x001CC64C
%1075 = getelementptr i8* %ppu_state, i32 840
%1076 = bitcast i8* %1075 to i64*
%1077 = load i64* %1076, align 8
%1078 = icmp ult i64 %1077, 2
%1079 = icmp ugt i64 %1077, 2
%1080 = icmp eq i64 %1077, 2
%1081 = getelementptr i8* %ppu_state, i32 1540
%1082 = bitcast i8* %1081 to i32*
%1083 = load i32* %1082, align 4
%1084 = getelementptr i8* %ppu_state, i32 1544
%1085 = bitcast i8* %1084 to i64*
%1086 = load i64* %1085, align 8
%1087 = lshr i64 %1086, 31
%1088 = and i64 %1087, 1
%1089 = and i32 %1083, -16
%1090 = zext i1 %1078 to i32
%1091 = shl i32 %1090, 3
%1092 = or i32 %1089, %1091
%1093 = zext i1 %1079 to i32
%1094 = shl i32 %1093, 2
%1095 = or i32 %1092, %1094
%1096 = zext i1 %1080 to i32
%1097 = shl i32 %1096, 1
%1098 = or i32 %1095, %1097
%1099 = trunc i64 %1088 to i32
%1100 = or i32 %1098, %1099
%1101 = getelementptr i8* %ppu_state, i32 1540
%1102 = bitcast i8* %1101 to i32*
store i32 %1100, i32* %1102, align 4
br label %instr_0x001CC654
instr_0x001CC654: ; preds = %instr_0x001CC650
%1103 = getelementptr i8* %ppu_state, i32 1576
%1104 = bitcast i8* %1103 to i64*
%1105 = load i64* %1104, align 8
%1106 = getelementptr i8* %ppu_state, i32 1540
%1107 = bitcast i8* %1106 to i32*
%1108 = load i32* %1107, align 4
%1109 = lshr i32 %1108, 3
%1110 = and i32 %1109, 1
%1111 = trunc i32 %1110 to i1
br i1 %1111, label %instr_0x001CC660, label %instr_0x001CC658
instr_0x001CC658: ; preds = %instr_0x001CC654
%1112 = getelementptr i8* %ppu_state, i32 768
%1113 = bitcast i8* %1112 to i64*
%1114 = load i64* %1113, align 8
%1115 = getelementptr i8* %ppu_state, i32 856
%1116 = bitcast i8* %1115 to i64*
%1117 = load i64* %1116, align 8
%1118 = xor i64 %1114, %1117
%1119 = getelementptr i8* %ppu_state, i32 768
%1120 = bitcast i8* %1119 to i64*
store i64 %1118, i64* %1120, align 8
br label %instr_0x001CC65C
instr_0x001CC65C: ; preds = %instr_0x001CC658
%1121 = getelementptr i8* %ppu_state, i32 768
%1122 = bitcast i8* %1121 to i64*
%1123 = load i64* %1122, align 8
%1124 = or i64 %1123, 2048
%1125 = getelementptr i8* %ppu_state, i32 768
%1126 = bitcast i8* %1125 to i64*
store i64 %1124, i64* %1126, align 8
br label %instr_0x001CC660
instr_0x001CC660: ; preds = %instr_0x001CC65C, %instr_0x001CC654, %instr_0x001CC64C
%1127 = getelementptr i8* %ppu_state, i32 776
%1128 = bitcast i8* %1127 to i64*
%1129 = load i64* %1128, align 8
%1130 = add i64 %1129, 160
%1131 = getelementptr i8* %ppu_state, i32 768
%1132 = bitcast i8* %1131 to i64*
%1133 = load i64* %1132, align 8
%1134 = call i64 @llvm.bswap.i64(i64 %1133)
%1135 = and i64 %1130, 4294967295
%1136 = add i64 %1135, 2147418112
%1137 = inttoptr i64 %1136 to i64*
store i64 %1134, i64* %1137
br label %instr_0x001CC664
instr_0x001CC664: ; preds = %instr_0x001CC660
%1138 = getelementptr i8* %ppu_state, i32 776
%1139 = bitcast i8* %1138 to i64*
%1140 = load i64* %1139, align 8
%1141 = add i64 %1140, 160
%1142 = and i64 %1141, 4294967295
%1143 = add i64 %1142, 2147418112
%1144 = inttoptr i64 %1143 to i64*
%1145 = load i64* %1144
%1146 = call i64 @llvm.bswap.i64(i64 %1145)
%1147 = getelementptr i8* %ppu_state, i32 456
%1148 = bitcast i8* %1147 to double*
%1149 = bitcast i64 %1146 to double
store double %1149, double* %1148, align 8
br label %instr_0x001CC668
instr_0x001CC668: ; preds = %instr_0x001CC664
%1150 = getelementptr i8* %ppu_state, i32 456
%1151 = bitcast i8* %1150 to i64*
%1152 = load i64* %1151, align 8
%1153 = sitofp i64 %1152 to double
%1154 = getelementptr i8* %ppu_state, i32 456
%1155 = bitcast i8* %1154 to double*
store double %1153, double* %1155, align 8
br label %instr_0x001CC66C
instr_0x001CC66C: ; preds = %instr_0x001CC668
%1156 = getelementptr i8* %ppu_state, i32 456
%1157 = bitcast i8* %1156 to double*
%1158 = load double* %1157, align 8
%1159 = fptrunc double %1158 to float
%1160 = fpext float %1159 to double
%1161 = getelementptr i8* %ppu_state, i32 248
%1162 = bitcast i8* %1161 to double*
store double %1160, double* %1162, align 8
br label %instr_0x001CC670
instr_0x001CC670: ; preds = %instr_0x001CC66C
%1163 = getelementptr i8* %ppu_state, i32 784
%1164 = bitcast i8* %1163 to i64*
%1165 = load i64* %1164, align 8
%1166 = add i64 %1165, -13984
%1167 = and i64 %1166, 4294967295
%1168 = add i64 %1167, 2147418112
%1169 = inttoptr i64 %1168 to i32*
%1170 = load i32* %1169
%1171 = call i32 @llvm.bswap.i32(i32 %1170)
%1172 = getelementptr i8* %ppu_state, i32 456
%1173 = bitcast i8* %1172 to double*
%1174 = bitcast i32 %1171 to float
%1175 = fpext float %1174 to double
store double %1175, double* %1173, align 8
br label %instr_0x001CC674
instr_0x001CC674: ; preds = %instr_0x001CC670
%1176 = getelementptr i8* %ppu_state, i32 248
%1177 = bitcast i8* %1176 to double*
%1178 = load double* %1177, align 8
%1179 = getelementptr i8* %ppu_state, i32 456
%1180 = bitcast i8* %1179 to double*
%1181 = load double* %1180, align 8
%1182 = fmul double %1178, %1181
%1183 = fptrunc double %1182 to float
%1184 = getelementptr i8* %ppu_state, i32 248
%1185 = bitcast i8* %1184 to double*
%1186 = fpext float %1183 to double
store double %1186, double* %1185, align 8
br label %instr_0x001CC678
instr_0x001CC678: ; preds = %instr_0x001CC674
%1187 = getelementptr i8* %ppu_state, i32 776
%1188 = bitcast i8* %1187 to i64*
%1189 = load i64* %1188, align 8
%1190 = add i64 %1189, 128
%1191 = getelementptr i8* %ppu_state, i32 248
%1192 = bitcast i8* %1191 to double*
%1193 = load double* %1192, align 8
%1194 = fptrunc double %1193 to float
%1195 = bitcast float %1194 to i32
%1196 = call i32 @llvm.bswap.i32(i32 %1195)
%1197 = and i64 %1190, 4294967295
%1198 = add i64 %1197, 2147418112
%1199 = inttoptr i64 %1198 to i32*
store i32 %1196, i32* %1199
br label %instr_0x001CC67C
instr_0x001CC67C: ; preds = %instr_0x001CC678
%1200 = getelementptr i8* %ppu_state, i32 784
%1201 = bitcast i8* %1200 to i64*
%1202 = load i64* %1201, align 8
%1203 = add i64 %1202, -14088
%1204 = and i64 %1203, 4294967295
%1205 = add i64 %1204, 2147418112
%1206 = inttoptr i64 %1205 to i32*
%1207 = load i32* %1206
%1208 = call i32 @llvm.bswap.i32(i32 %1207)
%1209 = zext i32 %1208 to i64
%1210 = getelementptr i8* %ppu_state, i32 984
%1211 = bitcast i8* %1210 to i64*
store i64 %1209, i64* %1211, align 8
br label %instr_0x001CC680
instr_0x001CC680: ; preds = %instr_0x001CC67C
%1212 = getelementptr i8* %ppu_state, i32 984
%1213 = bitcast i8* %1212 to i64*
%1214 = load i64* %1213, align 8
%1215 = add i64 %1214, 0
%1216 = and i64 %1215, 4294967295
%1217 = add i64 %1216, 2147418112
%1218 = inttoptr i64 %1217 to i32*
%1219 = load i32* %1218
%1220 = call i32 @llvm.bswap.i32(i32 %1219)
%1221 = zext i32 %1220 to i64
%1222 = getelementptr i8* %ppu_state, i32 792
%1223 = bitcast i8* %1222 to i64*
store i64 %1221, i64* %1223, align 8
br label %instr_0x001CC684
instr_0x001CC684: ; preds = %instr_0x001CC680
%1224 = getelementptr i8* %ppu_state, i32 800
%1225 = bitcast i8* %1224 to i64*
store i64 0, i64* %1225, align 8
br label %instr_0x001CC688
instr_0x001CC688: ; preds = %instr_0x001CC684
%1226 = getelementptr i8* %ppu_state, i32 1568
%1227 = bitcast i8* %1226 to i64*
store i64 1885836, i64* %1227, align 8
%1228 = getelementptr i8* %ppu_state, i32 1664
%1229 = bitcast i8* %1228 to i32*
store i32 2063784, i32* %1229, align 4
%1230 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC68C
instr_0x001CC68C: ; preds = %instr_0x001CC688
%1231 = getelementptr i8* %ppu_state, i32 768
%1232 = bitcast i8* %1231 to i64*
%1233 = load i64* %1232, align 8
%1234 = getelementptr i8* %ppu_state, i32 768
%1235 = bitcast i8* %1234 to i64*
store i64 %1233, i64* %1235, align 8
br label %instr_0x001CC690
instr_0x001CC690: ; preds = %instr_0x001CC68C
%1236 = getelementptr i8* %ppu_state, i32 968
%1237 = bitcast i8* %1236 to i32*
%1238 = load i32* %1237, align 8
%1239 = zext i32 %1238 to i64
%1240 = shl i64 %1239, 32
%1241 = or i64 %1239, %1240
%1242 = lshr i64 %1241, 62
%1243 = shl i64 %1241, 2
%1244 = or i64 %1243, %1242
%1245 = and i64 %1244, 4294967292
%1246 = getelementptr i8* %ppu_state, i32 856
%1247 = bitcast i8* %1246 to i64*
store i64 %1245, i64* %1247, align 8
br label %instr_0x001CC694
instr_0x001CC694: ; preds = %instr_0x001CC690
%1248 = getelementptr i8* %ppu_state, i32 856
%1249 = bitcast i8* %1248 to i64*
%1250 = load i64* %1249, align 8
%1251 = add i64 %1250, 288
%1252 = getelementptr i8* %ppu_state, i32 768
%1253 = bitcast i8* %1252 to i64*
store i64 %1251, i64* %1253, align 8
br label %instr_0x001CC698
instr_0x001CC698: ; preds = %instr_0x001CC694
%1254 = getelementptr i8* %ppu_state, i32 768
%1255 = bitcast i8* %1254 to i32*
%1256 = load i32* %1255, align 8
%1257 = sext i32 %1256 to i64
%1258 = getelementptr i8* %ppu_state, i32 768
%1259 = bitcast i8* %1258 to i64*
store i64 %1257, i64* %1259, align 8
br label %instr_0x001CC69C
instr_0x001CC69C: ; preds = %instr_0x001CC698
%1260 = getelementptr i8* %ppu_state, i32 1016
%1261 = bitcast i8* %1260 to i64*
%1262 = load i64* %1261, align 8
%1263 = getelementptr i8* %ppu_state, i32 768
%1264 = bitcast i8* %1263 to i64*
%1265 = load i64* %1264, align 8
%1266 = add i64 %1262, %1265
%1267 = getelementptr i8* %ppu_state, i32 976
%1268 = bitcast i8* %1267 to i64*
store i64 %1266, i64* %1268, align 8
br label %instr_0x001CC6A0
instr_0x001CC6A0: ; preds = %instr_0x001CC69C
%1269 = getelementptr i8* %ppu_state, i32 968
%1270 = bitcast i8* %1269 to i32*
%1271 = load i32* %1270, align 8
%1272 = zext i32 %1271 to i64
%1273 = shl i64 %1272, 32
%1274 = or i64 %1272, %1273
%1275 = lshr i64 %1274, 59
%1276 = shl i64 %1274, 5
%1277 = or i64 %1276, %1275
%1278 = and i64 %1277, 4294967264
%1279 = getelementptr i8* %ppu_state, i32 840
%1280 = bitcast i8* %1279 to i64*
store i64 %1278, i64* %1280, align 8
br label %instr_0x001CC6A4
instr_0x001CC6A4: ; preds = %instr_0x001CC6A0
%1281 = getelementptr i8* %ppu_state, i32 840
%1282 = bitcast i8* %1281 to i64*
%1283 = load i64* %1282, align 8
%1284 = add i64 %1283, 304
%1285 = getelementptr i8* %ppu_state, i32 840
%1286 = bitcast i8* %1285 to i64*
store i64 %1284, i64* %1286, align 8
br label %instr_0x001CC6A8
instr_0x001CC6A8: ; preds = %instr_0x001CC6A4
%1287 = getelementptr i8* %ppu_state, i32 840
%1288 = bitcast i8* %1287 to i32*
%1289 = load i32* %1288, align 8
%1290 = sext i32 %1289 to i64
%1291 = getelementptr i8* %ppu_state, i32 840
%1292 = bitcast i8* %1291 to i64*
store i64 %1290, i64* %1292, align 8
br label %instr_0x001CC6AC
instr_0x001CC6AC: ; preds = %instr_0x001CC6A8
%1293 = getelementptr i8* %ppu_state, i32 1016
%1294 = bitcast i8* %1293 to i64*
%1295 = load i64* %1294, align 8
%1296 = getelementptr i8* %ppu_state, i32 840
%1297 = bitcast i8* %1296 to i64*
%1298 = load i64* %1297, align 8
%1299 = add i64 %1295, %1298
%1300 = getelementptr i8* %ppu_state, i32 840
%1301 = bitcast i8* %1300 to i64*
store i64 %1299, i64* %1301, align 8
br label %instr_0x001CC6B0
instr_0x001CC6B0: ; preds = %instr_0x001CC6AC
%1302 = getelementptr i8* %ppu_state, i32 856
%1303 = bitcast i8* %1302 to i64*
%1304 = load i64* %1303, align 8
%1305 = add i64 %1304, 496
%1306 = getelementptr i8* %ppu_state, i32 856
%1307 = bitcast i8* %1306 to i64*
store i64 %1305, i64* %1307, align 8
br label %instr_0x001CC6B4
instr_0x001CC6B4: ; preds = %instr_0x001CC6B0
%1308 = getelementptr i8* %ppu_state, i32 856
%1309 = bitcast i8* %1308 to i32*
%1310 = load i32* %1309, align 8
%1311 = sext i32 %1310 to i64
%1312 = getelementptr i8* %ppu_state, i32 856
%1313 = bitcast i8* %1312 to i64*
store i64 %1311, i64* %1313, align 8
br label %instr_0x001CC6B8
instr_0x001CC6B8: ; preds = %instr_0x001CC6B4
%1314 = getelementptr i8* %ppu_state, i32 1016
%1315 = bitcast i8* %1314 to i64*
%1316 = load i64* %1315, align 8
%1317 = getelementptr i8* %ppu_state, i32 856
%1318 = bitcast i8* %1317 to i64*
%1319 = load i64* %1318, align 8
%1320 = add i64 %1316, %1319
%1321 = getelementptr i8* %ppu_state, i32 1000
%1322 = bitcast i8* %1321 to i64*
store i64 %1320, i64* %1322, align 8
br label %instr_0x001CC6BC
instr_0x001CC6BC: ; preds = %instr_0x001CC6B8
%1323 = getelementptr i8* %ppu_state, i32 984
%1324 = bitcast i8* %1323 to i64*
%1325 = load i64* %1324, align 8
%1326 = add i64 %1325, 0
%1327 = and i64 %1326, 4294967295
%1328 = add i64 %1327, 2147418112
%1329 = inttoptr i64 %1328 to i32*
%1330 = load i32* %1329
%1331 = call i32 @llvm.bswap.i32(i32 %1330)
%1332 = zext i32 %1331 to i64
%1333 = getelementptr i8* %ppu_state, i32 792
%1334 = bitcast i8* %1333 to i64*
store i64 %1332, i64* %1334, align 8
br label %instr_0x001CC6C0
instr_0x001CC6C0: ; preds = %instr_0x001CC6BC
%1335 = getelementptr i8* %ppu_state, i32 976
%1336 = bitcast i8* %1335 to i64*
%1337 = load i64* %1336, align 8
%1338 = add i64 %1337, 8
%1339 = and i64 %1338, 4294967295
%1340 = add i64 %1339, 2147418112
%1341 = inttoptr i64 %1340 to i32*
%1342 = load i32* %1341
%1343 = call i32 @llvm.bswap.i32(i32 %1342)
%1344 = zext i32 %1343 to i64
%1345 = getelementptr i8* %ppu_state, i32 800
%1346 = bitcast i8* %1345 to i64*
store i64 %1344, i64* %1346, align 8
br label %instr_0x001CC6C4
instr_0x001CC6C4: ; preds = %instr_0x001CC6C0
%1347 = getelementptr i8* %ppu_state, i32 840
%1348 = bitcast i8* %1347 to i64*
%1349 = load i64* %1348, align 8
%1350 = add i64 %1349, 8
%1351 = and i64 %1350, 4294967295
%1352 = add i64 %1351, 2147418112
%1353 = inttoptr i64 %1352 to i32*
%1354 = load i32* %1353
%1355 = call i32 @llvm.bswap.i32(i32 %1354)
%1356 = zext i32 %1355 to i64
%1357 = getelementptr i8* %ppu_state, i32 808
%1358 = bitcast i8* %1357 to i64*
store i64 %1356, i64* %1358, align 8
br label %instr_0x001CC6C8
instr_0x001CC6C8: ; preds = %instr_0x001CC6C4
%1359 = getelementptr i8* %ppu_state, i32 776
%1360 = bitcast i8* %1359 to i64*
%1361 = load i64* %1360, align 8
%1362 = add i64 %1361, 120
%1363 = getelementptr i8* %ppu_state, i32 816
%1364 = bitcast i8* %1363 to i64*
store i64 %1362, i64* %1364, align 8
br label %instr_0x001CC6CC
instr_0x001CC6CC: ; preds = %instr_0x001CC6C8
%1365 = getelementptr i8* %ppu_state, i32 1000
%1366 = bitcast i8* %1365 to i64*
%1367 = load i64* %1366, align 8
%1368 = add i64 %1367, 8
%1369 = and i64 %1368, 4294967295
%1370 = add i64 %1369, 2147418112
%1371 = inttoptr i64 %1370 to i32*
%1372 = load i32* %1371
%1373 = call i32 @llvm.bswap.i32(i32 %1372)
%1374 = zext i32 %1373 to i64
%1375 = getelementptr i8* %ppu_state, i32 824
%1376 = bitcast i8* %1375 to i64*
store i64 %1374, i64* %1376, align 8
br label %instr_0x001CC6D0
instr_0x001CC6D0: ; preds = %instr_0x001CC6CC
%1377 = getelementptr i8* %ppu_state, i32 1568
%1378 = bitcast i8* %1377 to i64*
store i64 1885908, i64* %1378, align 8
%1379 = getelementptr i8* %ppu_state, i32 1664
%1380 = bitcast i8* %1379 to i32*
store i32 2083696, i32* %1380, align 4
%1381 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC6D4
instr_0x001CC6D4: ; preds = %instr_0x001CC6D0
%1382 = getelementptr i8* %ppu_state, i32 768
%1383 = bitcast i8* %1382 to i64*
%1384 = load i64* %1383, align 8
%1385 = getelementptr i8* %ppu_state, i32 768
%1386 = bitcast i8* %1385 to i64*
store i64 %1384, i64* %1386, align 8
br label %instr_0x001CC6D8
instr_0x001CC6D8: ; preds = %instr_0x001CC6D4
%1387 = getelementptr i8* %ppu_state, i32 984
%1388 = bitcast i8* %1387 to i64*
%1389 = load i64* %1388, align 8
%1390 = add i64 %1389, 0
%1391 = and i64 %1390, 4294967295
%1392 = add i64 %1391, 2147418112
%1393 = inttoptr i64 %1392 to i32*
%1394 = load i32* %1393
%1395 = call i32 @llvm.bswap.i32(i32 %1394)
%1396 = zext i32 %1395 to i64
%1397 = getelementptr i8* %ppu_state, i32 792
%1398 = bitcast i8* %1397 to i64*
store i64 %1396, i64* %1398, align 8
br label %instr_0x001CC6DC
instr_0x001CC6DC: ; preds = %instr_0x001CC6D8
%1399 = getelementptr i8* %ppu_state, i32 1000
%1400 = bitcast i8* %1399 to i64*
%1401 = load i64* %1400, align 8
%1402 = add i64 %1401, 8
%1403 = and i64 %1402, 4294967295
%1404 = add i64 %1403, 2147418112
%1405 = inttoptr i64 %1404 to i32*
%1406 = load i32* %1405
%1407 = call i32 @llvm.bswap.i32(i32 %1406)
%1408 = zext i32 %1407 to i64
%1409 = getelementptr i8* %ppu_state, i32 800
%1410 = bitcast i8* %1409 to i64*
store i64 %1408, i64* %1410, align 8
br label %instr_0x001CC6E0
instr_0x001CC6E0: ; preds = %instr_0x001CC6DC
%1411 = getelementptr i8* %ppu_state, i32 1568
%1412 = bitcast i8* %1411 to i64*
store i64 1885924, i64* %1412, align 8
%1413 = getelementptr i8* %ppu_state, i32 1664
%1414 = bitcast i8* %1413 to i32*
store i32 2070384, i32* %1414, align 4
%1415 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC6E4
instr_0x001CC6E4: ; preds = %instr_0x001CC6E0
%1416 = getelementptr i8* %ppu_state, i32 768
%1417 = bitcast i8* %1416 to i64*
%1418 = load i64* %1417, align 8
%1419 = getelementptr i8* %ppu_state, i32 768
%1420 = bitcast i8* %1419 to i64*
store i64 %1418, i64* %1420, align 8
br label %instr_0x001CC6E8
instr_0x001CC6E8: ; preds = %instr_0x001CC6E4
%1421 = getelementptr i8* %ppu_state, i32 992
%1422 = bitcast i8* %1421 to i64*
%1423 = load i64* %1422, align 8
%1424 = add i64 %1423, 20
%1425 = and i64 %1424, 4294967295
%1426 = add i64 %1425, 2147418112
%1427 = inttoptr i64 %1426 to i32*
%1428 = load i32* %1427
%1429 = call i32 @llvm.bswap.i32(i32 %1428)
%1430 = zext i32 %1429 to i64
%1431 = getelementptr i8* %ppu_state, i32 992
%1432 = bitcast i8* %1431 to i64*
store i64 %1430, i64* %1432, align 8
br label %instr_0x001CC6EC
instr_0x001CC6EC: ; preds = %instr_0x001CC6E8
%1433 = getelementptr i8* %ppu_state, i32 1016
%1434 = bitcast i8* %1433 to i64*
%1435 = load i64* %1434, align 8
%1436 = add i64 %1435, 524
%1437 = getelementptr i8* %ppu_state, i32 1008
%1438 = bitcast i8* %1437 to i32*
%1439 = load i32* %1438, align 8
%1440 = call i32 @llvm.bswap.i32(i32 %1439)
%1441 = and i64 %1436, 4294967295
%1442 = add i64 %1441, 2147418112
%1443 = inttoptr i64 %1442 to i32*
store i32 %1440, i32* %1443
br label %instr_0x001CC6F0
instr_0x001CC6F0: ; preds = %instr_0x001CC6EC
%1444 = getelementptr i8* %ppu_state, i32 1016
%1445 = bitcast i8* %1444 to i64*
%1446 = load i64* %1445, align 8
%1447 = add i64 %1446, 520
%1448 = and i64 %1447, 4294967295
%1449 = add i64 %1448, 2147418112
%1450 = inttoptr i64 %1449 to i32*
%1451 = load i32* %1450
%1452 = call i32 @llvm.bswap.i32(i32 %1451)
%1453 = zext i32 %1452 to i64
%1454 = getelementptr i8* %ppu_state, i32 768
%1455 = bitcast i8* %1454 to i64*
store i64 %1453, i64* %1455, align 8
br label %instr_0x001CC6F4
instr_0x001CC6F4: ; preds = %instr_0x001CC6F0
%1456 = getelementptr i8* %ppu_state, i32 768
%1457 = bitcast i8* %1456 to i32*
%1458 = load i32* %1457, align 8
%1459 = sext i32 %1458 to i64
%1460 = getelementptr i8* %ppu_state, i32 968
%1461 = bitcast i8* %1460 to i32*
%1462 = load i32* %1461, align 8
%1463 = sext i32 %1462 to i64
%1464 = icmp slt i64 %1459, %1463
%1465 = icmp sgt i64 %1459, %1463
%1466 = icmp eq i64 %1459, %1463
%1467 = getelementptr i8* %ppu_state, i32 1540
%1468 = bitcast i8* %1467 to i32*
%1469 = load i32* %1468, align 4
%1470 = getelementptr i8* %ppu_state, i32 1544
%1471 = bitcast i8* %1470 to i64*
%1472 = load i64* %1471, align 8
%1473 = lshr i64 %1472, 31
%1474 = and i64 %1473, 1
%1475 = and i32 %1469, -16
%1476 = zext i1 %1464 to i32
%1477 = shl i32 %1476, 3
%1478 = or i32 %1475, %1477
%1479 = zext i1 %1465 to i32
%1480 = shl i32 %1479, 2
%1481 = or i32 %1478, %1480
%1482 = zext i1 %1466 to i32
%1483 = shl i32 %1482, 1
%1484 = or i32 %1481, %1483
%1485 = trunc i64 %1474 to i32
%1486 = or i32 %1484, %1485
%1487 = getelementptr i8* %ppu_state, i32 1540
%1488 = bitcast i8* %1487 to i32*
store i32 %1486, i32* %1488, align 4
br label %instr_0x001CC6F8
instr_0x001CC6F8: ; preds = %instr_0x001CC6F4
%1489 = getelementptr i8* %ppu_state, i32 1576
%1490 = bitcast i8* %1489 to i64*
%1491 = load i64* %1490, align 8
%1492 = getelementptr i8* %ppu_state, i32 1540
%1493 = bitcast i8* %1492 to i32*
%1494 = load i32* %1493, align 4
%1495 = lshr i32 %1494, 1
%1496 = and i32 %1495, 1
%1497 = trunc i32 %1496 to i1
br i1 %1497, label %instr_0x001CC714, label %instr_0x001CC6FC
instr_0x001CC6FC: ; preds = %instr_0x001CC6F8
%1498 = getelementptr i8* %ppu_state, i32 1016
%1499 = bitcast i8* %1498 to i64*
%1500 = load i64* %1499, align 8
%1501 = add i64 %1500, 520
%1502 = getelementptr i8* %ppu_state, i32 968
%1503 = bitcast i8* %1502 to i32*
%1504 = load i32* %1503, align 8
%1505 = call i32 @llvm.bswap.i32(i32 %1504)
%1506 = and i64 %1501, 4294967295
%1507 = add i64 %1506, 2147418112
%1508 = inttoptr i64 %1507 to i32*
store i32 %1505, i32* %1508
br label %instr_0x001CC700
instr_0x001CC700: ; preds = %instr_0x001CC6FC
%1509 = getelementptr i8* %ppu_state, i32 984
%1510 = bitcast i8* %1509 to i64*
%1511 = load i64* %1510, align 8
%1512 = add i64 %1511, 0
%1513 = and i64 %1512, 4294967295
%1514 = add i64 %1513, 2147418112
%1515 = inttoptr i64 %1514 to i32*
%1516 = load i32* %1515
%1517 = call i32 @llvm.bswap.i32(i32 %1516)
%1518 = zext i32 %1517 to i64
%1519 = getelementptr i8* %ppu_state, i32 792
%1520 = bitcast i8* %1519 to i64*
store i64 %1518, i64* %1520, align 8
br label %instr_0x001CC704
instr_0x001CC704: ; preds = %instr_0x001CC700
%1521 = getelementptr i8* %ppu_state, i32 976
%1522 = bitcast i8* %1521 to i64*
%1523 = load i64* %1522, align 8
%1524 = add i64 %1523, 8
%1525 = and i64 %1524, 4294967295
%1526 = add i64 %1525, 2147418112
%1527 = inttoptr i64 %1526 to i32*
%1528 = load i32* %1527
%1529 = call i32 @llvm.bswap.i32(i32 %1528)
%1530 = zext i32 %1529 to i64
%1531 = getelementptr i8* %ppu_state, i32 800
%1532 = bitcast i8* %1531 to i64*
store i64 %1530, i64* %1532, align 8
br label %instr_0x001CC708
instr_0x001CC708: ; preds = %instr_0x001CC704
%1533 = getelementptr i8* %ppu_state, i32 1000
%1534 = bitcast i8* %1533 to i64*
%1535 = load i64* %1534, align 8
%1536 = add i64 %1535, 8
%1537 = and i64 %1536, 4294967295
%1538 = add i64 %1537, 2147418112
%1539 = inttoptr i64 %1538 to i32*
%1540 = load i32* %1539
%1541 = call i32 @llvm.bswap.i32(i32 %1540)
%1542 = zext i32 %1541 to i64
%1543 = getelementptr i8* %ppu_state, i32 808
%1544 = bitcast i8* %1543 to i64*
store i64 %1542, i64* %1544, align 8
br label %instr_0x001CC70C
instr_0x001CC70C: ; preds = %instr_0x001CC708
%1545 = getelementptr i8* %ppu_state, i32 1568
%1546 = bitcast i8* %1545 to i64*
store i64 1885968, i64* %1546, align 8
%1547 = getelementptr i8* %ppu_state, i32 1664
%1548 = bitcast i8* %1547 to i32*
store i32 2071264, i32* %1548, align 4
%1549 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC710
instr_0x001CC710: ; preds = %instr_0x001CC70C
%1550 = getelementptr i8* %ppu_state, i32 768
%1551 = bitcast i8* %1550 to i64*
%1552 = load i64* %1551, align 8
%1553 = getelementptr i8* %ppu_state, i32 768
%1554 = bitcast i8* %1553 to i64*
store i64 %1552, i64* %1554, align 8
br label %instr_0x001CC714
instr_0x001CC714: ; preds = %instr_0x001CC710, %instr_0x001CC6F8
%1555 = getelementptr i8* %ppu_state, i32 784
%1556 = bitcast i8* %1555 to i64*
%1557 = load i64* %1556, align 8
%1558 = add i64 %1557, -14088
%1559 = and i64 %1558, 4294967295
%1560 = add i64 %1559, 2147418112
%1561 = inttoptr i64 %1560 to i32*
%1562 = load i32* %1561
%1563 = call i32 @llvm.bswap.i32(i32 %1562)
%1564 = zext i32 %1563 to i64
%1565 = getelementptr i8* %ppu_state, i32 1000
%1566 = bitcast i8* %1565 to i64*
store i64 %1564, i64* %1566, align 8
br label %instr_0x001CC718
instr_0x001CC718: ; preds = %instr_0x001CC714
%1567 = getelementptr i8* %ppu_state, i32 1000
%1568 = bitcast i8* %1567 to i64*
%1569 = load i64* %1568, align 8
%1570 = add i64 %1569, 0
%1571 = and i64 %1570, 4294967295
%1572 = add i64 %1571, 2147418112
%1573 = inttoptr i64 %1572 to i32*
%1574 = load i32* %1573
%1575 = call i32 @llvm.bswap.i32(i32 %1574)
%1576 = zext i32 %1575 to i64
%1577 = getelementptr i8* %ppu_state, i32 792
%1578 = bitcast i8* %1577 to i64*
store i64 %1576, i64* %1578, align 8
br label %instr_0x001CC71C
instr_0x001CC71C: ; preds = %instr_0x001CC718
%1579 = getelementptr i8* %ppu_state, i32 800
%1580 = bitcast i8* %1579 to i64*
store i64 0, i64* %1580, align 8
br label %instr_0x001CC720
instr_0x001CC720: ; preds = %instr_0x001CC71C
%1581 = getelementptr i8* %ppu_state, i32 808
%1582 = bitcast i8* %1581 to i64*
store i64 1, i64* %1582, align 8
br label %instr_0x001CC724
instr_0x001CC724: ; preds = %instr_0x001CC720
%1583 = getelementptr i8* %ppu_state, i32 816
%1584 = bitcast i8* %1583 to i64*
store i64 0, i64* %1584, align 8
br label %instr_0x001CC728
instr_0x001CC728: ; preds = %instr_0x001CC724
%1585 = getelementptr i8* %ppu_state, i32 824
%1586 = bitcast i8* %1585 to i64*
store i64 3072, i64* %1586, align 8
br label %instr_0x001CC72C
instr_0x001CC72C: ; preds = %instr_0x001CC728
%1587 = getelementptr i8* %ppu_state, i32 832
%1588 = bitcast i8* %1587 to i64*
store i64 0, i64* %1588, align 8
br label %instr_0x001CC730
instr_0x001CC730: ; preds = %instr_0x001CC72C
%1589 = getelementptr i8* %ppu_state, i32 1568
%1590 = bitcast i8* %1589 to i64*
store i64 1886004, i64* %1590, align 8
%1591 = getelementptr i8* %ppu_state, i32 1664
%1592 = bitcast i8* %1591 to i32*
store i32 2049336, i32* %1592, align 4
%1593 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC734
instr_0x001CC734: ; preds = %instr_0x001CC730
%1594 = getelementptr i8* %ppu_state, i32 768
%1595 = bitcast i8* %1594 to i64*
%1596 = load i64* %1595, align 8
%1597 = getelementptr i8* %ppu_state, i32 768
%1598 = bitcast i8* %1597 to i64*
store i64 %1596, i64* %1598, align 8
br label %instr_0x001CC738
instr_0x001CC738: ; preds = %instr_0x001CC734
%1599 = getelementptr i8* %ppu_state, i32 1000
%1600 = bitcast i8* %1599 to i64*
%1601 = load i64* %1600, align 8
%1602 = add i64 %1601, 0
%1603 = and i64 %1602, 4294967295
%1604 = add i64 %1603, 2147418112
%1605 = inttoptr i64 %1604 to i32*
%1606 = load i32* %1605
%1607 = call i32 @llvm.bswap.i32(i32 %1606)
%1608 = zext i32 %1607 to i64
%1609 = getelementptr i8* %ppu_state, i32 792
%1610 = bitcast i8* %1609 to i64*
store i64 %1608, i64* %1610, align 8
br label %instr_0x001CC73C
instr_0x001CC73C: ; preds = %instr_0x001CC738
%1611 = getelementptr i8* %ppu_state, i32 800
%1612 = bitcast i8* %1611 to i64*
store i64 1, i64* %1612, align 8
br label %instr_0x001CC740
instr_0x001CC740: ; preds = %instr_0x001CC73C
%1613 = getelementptr i8* %ppu_state, i32 808
%1614 = bitcast i8* %1613 to i64*
store i64 1, i64* %1614, align 8
br label %instr_0x001CC744
instr_0x001CC744: ; preds = %instr_0x001CC740
%1615 = getelementptr i8* %ppu_state, i32 816
%1616 = bitcast i8* %1615 to i64*
store i64 0, i64* %1616, align 8
br label %instr_0x001CC748
instr_0x001CC748: ; preds = %instr_0x001CC744
%1617 = getelementptr i8* %ppu_state, i32 824
%1618 = bitcast i8* %1617 to i64*
store i64 3072, i64* %1618, align 8
br label %instr_0x001CC74C
instr_0x001CC74C: ; preds = %instr_0x001CC748
%1619 = getelementptr i8* %ppu_state, i32 832
%1620 = bitcast i8* %1619 to i64*
store i64 0, i64* %1620, align 8
br label %instr_0x001CC750
instr_0x001CC750: ; preds = %instr_0x001CC74C
%1621 = getelementptr i8* %ppu_state, i32 1568
%1622 = bitcast i8* %1621 to i64*
store i64 1886036, i64* %1622, align 8
%1623 = getelementptr i8* %ppu_state, i32 1664
%1624 = bitcast i8* %1623 to i32*
store i32 2049336, i32* %1624, align 4
%1625 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC754
instr_0x001CC754: ; preds = %instr_0x001CC750
%1626 = getelementptr i8* %ppu_state, i32 768
%1627 = bitcast i8* %1626 to i64*
%1628 = load i64* %1627, align 8
%1629 = getelementptr i8* %ppu_state, i32 768
%1630 = bitcast i8* %1629 to i64*
store i64 %1628, i64* %1630, align 8
br label %instr_0x001CC758
instr_0x001CC758: ; preds = %instr_0x001CC754
%1631 = getelementptr i8* %ppu_state, i32 1000
%1632 = bitcast i8* %1631 to i64*
%1633 = load i64* %1632, align 8
%1634 = add i64 %1633, 0
%1635 = and i64 %1634, 4294967295
%1636 = add i64 %1635, 2147418112
%1637 = inttoptr i64 %1636 to i32*
%1638 = load i32* %1637
%1639 = call i32 @llvm.bswap.i32(i32 %1638)
%1640 = zext i32 %1639 to i64
%1641 = getelementptr i8* %ppu_state, i32 792
%1642 = bitcast i8* %1641 to i64*
store i64 %1640, i64* %1642, align 8
br label %instr_0x001CC75C
instr_0x001CC75C: ; preds = %instr_0x001CC758
%1643 = getelementptr i8* %ppu_state, i32 800
%1644 = bitcast i8* %1643 to i64*
store i64 0, i64* %1644, align 8
br label %instr_0x001CC760
instr_0x001CC760: ; preds = %instr_0x001CC75C
%1645 = getelementptr i8* %ppu_state, i32 1008
%1646 = bitcast i8* %1645 to i64*
%1647 = load i64* %1646, align 8
%1648 = getelementptr i8* %ppu_state, i32 1008
%1649 = bitcast i8* %1648 to i64*
%1650 = load i64* %1649, align 8
%1651 = or i64 %1647, %1650
%1652 = getelementptr i8* %ppu_state, i32 808
%1653 = bitcast i8* %1652 to i64*
store i64 %1651, i64* %1653, align 8
br label %instr_0x001CC764
instr_0x001CC764: ; preds = %instr_0x001CC760
%1654 = getelementptr i8* %ppu_state, i32 1568
%1655 = bitcast i8* %1654 to i64*
store i64 1886056, i64* %1655, align 8
%1656 = getelementptr i8* %ppu_state, i32 1664
%1657 = bitcast i8* %1656 to i32*
store i32 2049936, i32* %1657, align 4
%1658 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC768
instr_0x001CC768: ; preds = %instr_0x001CC764
%1659 = getelementptr i8* %ppu_state, i32 768
%1660 = bitcast i8* %1659 to i64*
%1661 = load i64* %1660, align 8
%1662 = getelementptr i8* %ppu_state, i32 768
%1663 = bitcast i8* %1662 to i64*
store i64 %1661, i64* %1663, align 8
br label %instr_0x001CC76C
instr_0x001CC76C: ; preds = %instr_0x001CC768
%1664 = getelementptr i8* %ppu_state, i32 1000
%1665 = bitcast i8* %1664 to i64*
%1666 = load i64* %1665, align 8
%1667 = add i64 %1666, 0
%1668 = and i64 %1667, 4294967295
%1669 = add i64 %1668, 2147418112
%1670 = inttoptr i64 %1669 to i32*
%1671 = load i32* %1670
%1672 = call i32 @llvm.bswap.i32(i32 %1671)
%1673 = zext i32 %1672 to i64
%1674 = getelementptr i8* %ppu_state, i32 792
%1675 = bitcast i8* %1674 to i64*
store i64 %1673, i64* %1675, align 8
br label %instr_0x001CC770
instr_0x001CC770: ; preds = %instr_0x001CC76C
%1676 = getelementptr i8* %ppu_state, i32 800
%1677 = bitcast i8* %1676 to i64*
store i64 1, i64* %1677, align 8
br label %instr_0x001CC774
instr_0x001CC774: ; preds = %instr_0x001CC770
%1678 = getelementptr i8* %ppu_state, i32 992
%1679 = bitcast i8* %1678 to i64*
%1680 = load i64* %1679, align 8
%1681 = getelementptr i8* %ppu_state, i32 992
%1682 = bitcast i8* %1681 to i64*
%1683 = load i64* %1682, align 8
%1684 = or i64 %1680, %1683
%1685 = getelementptr i8* %ppu_state, i32 808
%1686 = bitcast i8* %1685 to i64*
store i64 %1684, i64* %1686, align 8
br label %instr_0x001CC778
instr_0x001CC778: ; preds = %instr_0x001CC774
%1687 = getelementptr i8* %ppu_state, i32 1568
%1688 = bitcast i8* %1687 to i64*
store i64 1886076, i64* %1688, align 8
%1689 = getelementptr i8* %ppu_state, i32 1664
%1690 = bitcast i8* %1689 to i32*
store i32 2049936, i32* %1690, align 4
%1691 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC77C
instr_0x001CC77C: ; preds = %instr_0x001CC778
%1692 = getelementptr i8* %ppu_state, i32 768
%1693 = bitcast i8* %1692 to i64*
%1694 = load i64* %1693, align 8
%1695 = getelementptr i8* %ppu_state, i32 768
%1696 = bitcast i8* %1695 to i64*
store i64 %1694, i64* %1696, align 8
br label %instr_0x001CC780
instr_0x001CC780: ; preds = %instr_0x001CC77C
%1697 = getelementptr i8* %ppu_state, i32 1000
%1698 = bitcast i8* %1697 to i64*
%1699 = load i64* %1698, align 8
%1700 = add i64 %1699, 0
%1701 = and i64 %1700, 4294967295
%1702 = add i64 %1701, 2147418112
%1703 = inttoptr i64 %1702 to i32*
%1704 = load i32* %1703
%1705 = call i32 @llvm.bswap.i32(i32 %1704)
%1706 = zext i32 %1705 to i64
%1707 = getelementptr i8* %ppu_state, i32 792
%1708 = bitcast i8* %1707 to i64*
store i64 %1706, i64* %1708, align 8
br label %instr_0x001CC784
instr_0x001CC784: ; preds = %instr_0x001CC780
%1709 = getelementptr i8* %ppu_state, i32 800
%1710 = bitcast i8* %1709 to i64*
store i64 1, i64* %1710, align 8
br label %instr_0x001CC788
instr_0x001CC788: ; preds = %instr_0x001CC784
%1711 = getelementptr i8* %ppu_state, i32 1568
%1712 = bitcast i8* %1711 to i64*
store i64 1886092, i64* %1712, align 8
%1713 = getelementptr i8* %ppu_state, i32 1664
%1714 = bitcast i8* %1713 to i32*
store i32 2048216, i32* %1714, align 4
%1715 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC78C
instr_0x001CC78C: ; preds = %instr_0x001CC788
%1716 = getelementptr i8* %ppu_state, i32 768
%1717 = bitcast i8* %1716 to i64*
%1718 = load i64* %1717, align 8
%1719 = getelementptr i8* %ppu_state, i32 768
%1720 = bitcast i8* %1719 to i64*
store i64 %1718, i64* %1720, align 8
br label %instr_0x001CC790
instr_0x001CC790: ; preds = %instr_0x001CC78C
%1721 = getelementptr i8* %ppu_state, i32 1000
%1722 = bitcast i8* %1721 to i64*
%1723 = load i64* %1722, align 8
%1724 = add i64 %1723, 0
%1725 = and i64 %1724, 4294967295
%1726 = add i64 %1725, 2147418112
%1727 = inttoptr i64 %1726 to i32*
%1728 = load i32* %1727
%1729 = call i32 @llvm.bswap.i32(i32 %1728)
%1730 = zext i32 %1729 to i64
%1731 = getelementptr i8* %ppu_state, i32 792
%1732 = bitcast i8* %1731 to i64*
store i64 %1730, i64* %1732, align 8
br label %instr_0x001CC794
instr_0x001CC794: ; preds = %instr_0x001CC790
%1733 = getelementptr i8* %ppu_state, i32 952
%1734 = bitcast i8* %1733 to i64*
%1735 = load i64* %1734, align 8
%1736 = and i64 %1735, 255
%1737 = getelementptr i8* %ppu_state, i32 800
%1738 = bitcast i8* %1737 to i64*
store i64 %1736, i64* %1738, align 8
br label %instr_0x001CC798
instr_0x001CC798: ; preds = %instr_0x001CC794
%1739 = getelementptr i8* %ppu_state, i32 808
%1740 = bitcast i8* %1739 to i64*
store i64 0, i64* %1740, align 8
br label %instr_0x001CC79C
instr_0x001CC79C: ; preds = %instr_0x001CC798
%1741 = getelementptr i8* %ppu_state, i32 960
%1742 = bitcast i8* %1741 to i64*
%1743 = load i64* %1742, align 8
%1744 = and i64 %1743, 4294967295
%1745 = getelementptr i8* %ppu_state, i32 816
%1746 = bitcast i8* %1745 to i64*
store i64 %1744, i64* %1746, align 8
br label %instr_0x001CC7A0
instr_0x001CC7A0: ; preds = %instr_0x001CC79C
%1747 = getelementptr i8* %ppu_state, i32 1568
%1748 = bitcast i8* %1747 to i64*
store i64 1886116, i64* %1748, align 8
%1749 = getelementptr i8* %ppu_state, i32 1664
%1750 = bitcast i8* %1749 to i32*
store i32 2050328, i32* %1750, align 4
%1751 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC7A4
instr_0x001CC7A4: ; preds = %instr_0x001CC7A0
%1752 = getelementptr i8* %ppu_state, i32 768
%1753 = bitcast i8* %1752 to i64*
%1754 = load i64* %1753, align 8
%1755 = getelementptr i8* %ppu_state, i32 768
%1756 = bitcast i8* %1755 to i64*
store i64 %1754, i64* %1756, align 8
br label %instr_0x001CC7A8
instr_0x001CC7A8: ; preds = %instr_0x001CC7A4
br label %instr_0x001CCA78
instr_0x001CC7AC: ; preds = %instr_0x001CC570
%1757 = getelementptr i8* %ppu_state, i32 1008
%1758 = bitcast i8* %1757 to i64*
%1759 = load i64* %1758, align 8
%1760 = icmp slt i64 %1759, 0
%1761 = icmp sgt i64 %1759, 0
%1762 = icmp eq i64 %1759, 0
%1763 = getelementptr i8* %ppu_state, i32 1540
%1764 = bitcast i8* %1763 to i32*
%1765 = load i32* %1764, align 4
%1766 = getelementptr i8* %ppu_state, i32 1544
%1767 = bitcast i8* %1766 to i64*
%1768 = load i64* %1767, align 8
%1769 = lshr i64 %1768, 31
%1770 = and i64 %1769, 1
%1771 = and i32 %1765, -16
%1772 = zext i1 %1760 to i32
%1773 = shl i32 %1772, 3
%1774 = or i32 %1771, %1773
%1775 = zext i1 %1761 to i32
%1776 = shl i32 %1775, 2
%1777 = or i32 %1774, %1776
%1778 = zext i1 %1762 to i32
%1779 = shl i32 %1778, 1
%1780 = or i32 %1777, %1779
%1781 = trunc i64 %1770 to i32
%1782 = or i32 %1780, %1781
%1783 = getelementptr i8* %ppu_state, i32 1540
%1784 = bitcast i8* %1783 to i32*
store i32 %1782, i32* %1784, align 4
br label %instr_0x001CC7B0
instr_0x001CC7B0: ; preds = %instr_0x001CC7AC
%1785 = getelementptr i8* %ppu_state, i32 1576
%1786 = bitcast i8* %1785 to i64*
%1787 = load i64* %1786, align 8
%1788 = getelementptr i8* %ppu_state, i32 1540
%1789 = bitcast i8* %1788 to i32*
%1790 = load i32* %1789, align 4
%1791 = lshr i32 %1790, 1
%1792 = and i32 %1791, 1
%1793 = trunc i32 %1792 to i1
%1794 = xor i1 %1793, true
br i1 %1794, label %instr_0x001CC7B8, label %instr_0x001CC7B4
instr_0x001CC7B4: ; preds = %instr_0x001CC7B0
%1795 = getelementptr i8* %ppu_state, i32 1016
%1796 = bitcast i8* %1795 to i64*
%1797 = load i64* %1796, align 8
%1798 = add i64 %1797, 544
%1799 = and i64 %1798, 4294967295
%1800 = add i64 %1799, 2147418112
%1801 = inttoptr i64 %1800 to i32*
%1802 = load i32* %1801
%1803 = call i32 @llvm.bswap.i32(i32 %1802)
%1804 = zext i32 %1803 to i64
%1805 = getelementptr i8* %ppu_state, i32 1008
%1806 = bitcast i8* %1805 to i64*
store i64 %1804, i64* %1806, align 8
br label %instr_0x001CC7B8
instr_0x001CC7B8: ; preds = %instr_0x001CC7B4, %instr_0x001CC7B0
%1807 = getelementptr i8* %ppu_state, i32 1016
%1808 = bitcast i8* %1807 to i64*
%1809 = load i64* %1808, align 8
%1810 = add i64 %1809, 524
%1811 = and i64 %1810, 4294967295
%1812 = add i64 %1811, 2147418112
%1813 = inttoptr i64 %1812 to i32*
%1814 = load i32* %1813
%1815 = call i32 @llvm.bswap.i32(i32 %1814)
%1816 = zext i32 %1815 to i64
%1817 = getelementptr i8* %ppu_state, i32 768
%1818 = bitcast i8* %1817 to i64*
store i64 %1816, i64* %1818, align 8
br label %instr_0x001CC7BC
instr_0x001CC7BC: ; preds = %instr_0x001CC7B8
%1819 = getelementptr i8* %ppu_state, i32 768
%1820 = bitcast i8* %1819 to i32*
%1821 = load i32* %1820, align 8
%1822 = sext i32 %1821 to i64
%1823 = getelementptr i8* %ppu_state, i32 1008
%1824 = bitcast i8* %1823 to i32*
%1825 = load i32* %1824, align 8
%1826 = sext i32 %1825 to i64
%1827 = icmp slt i64 %1822, %1826
%1828 = icmp sgt i64 %1822, %1826
%1829 = icmp eq i64 %1822, %1826
%1830 = getelementptr i8* %ppu_state, i32 1540
%1831 = bitcast i8* %1830 to i32*
%1832 = load i32* %1831, align 4
%1833 = getelementptr i8* %ppu_state, i32 1544
%1834 = bitcast i8* %1833 to i64*
%1835 = load i64* %1834, align 8
%1836 = lshr i64 %1835, 31
%1837 = and i64 %1836, 1
%1838 = and i32 %1832, -16
%1839 = zext i1 %1827 to i32
%1840 = shl i32 %1839, 3
%1841 = or i32 %1838, %1840
%1842 = zext i1 %1828 to i32
%1843 = shl i32 %1842, 2
%1844 = or i32 %1841, %1843
%1845 = zext i1 %1829 to i32
%1846 = shl i32 %1845, 1
%1847 = or i32 %1844, %1846
%1848 = trunc i64 %1837 to i32
%1849 = or i32 %1847, %1848
%1850 = getelementptr i8* %ppu_state, i32 1540
%1851 = bitcast i8* %1850 to i32*
store i32 %1849, i32* %1851, align 4
br label %instr_0x001CC7C0
instr_0x001CC7C0: ; preds = %instr_0x001CC7BC
%1852 = getelementptr i8* %ppu_state, i32 1576
%1853 = bitcast i8* %1852 to i64*
%1854 = load i64* %1853, align 8
%1855 = getelementptr i8* %ppu_state, i32 1540
%1856 = bitcast i8* %1855 to i32*
%1857 = load i32* %1856, align 4
%1858 = lshr i32 %1857, 1
%1859 = and i32 %1858, 1
%1860 = trunc i32 %1859 to i1
br i1 %1860, label %instr_0x001CC84C, label %instr_0x001CC7C4
instr_0x001CC7C4: ; preds = %instr_0x001CC7C0
%1861 = getelementptr i8* %ppu_state, i32 1016
%1862 = bitcast i8* %1861 to i64*
%1863 = load i64* %1862, align 8
%1864 = add i64 %1863, 524
%1865 = getelementptr i8* %ppu_state, i32 1008
%1866 = bitcast i8* %1865 to i32*
%1867 = load i32* %1866, align 8
%1868 = call i32 @llvm.bswap.i32(i32 %1867)
%1869 = and i64 %1864, 4294967295
%1870 = add i64 %1869, 2147418112
%1871 = inttoptr i64 %1870 to i32*
store i32 %1868, i32* %1871
br label %instr_0x001CC7C8
instr_0x001CC7C8: ; preds = %instr_0x001CC7C4
%1872 = getelementptr i8* %ppu_state, i32 1016
%1873 = bitcast i8* %1872 to i64*
%1874 = load i64* %1873, align 8
%1875 = add i64 %1874, 520
%1876 = and i64 %1875, 4294967295
%1877 = add i64 %1876, 2147418112
%1878 = inttoptr i64 %1877 to i32*
%1879 = load i32* %1878
%1880 = call i32 @llvm.bswap.i32(i32 %1879)
%1881 = zext i32 %1880 to i64
%1882 = getelementptr i8* %ppu_state, i32 768
%1883 = bitcast i8* %1882 to i64*
store i64 %1881, i64* %1883, align 8
br label %instr_0x001CC7CC
instr_0x001CC7CC: ; preds = %instr_0x001CC7C8
%1884 = getelementptr i8* %ppu_state, i32 768
%1885 = bitcast i8* %1884 to i32*
%1886 = load i32* %1885, align 8
%1887 = sext i32 %1886 to i64
%1888 = icmp slt i64 %1887, 0
%1889 = icmp sgt i64 %1887, 0
%1890 = icmp eq i64 %1887, 0
%1891 = getelementptr i8* %ppu_state, i32 1540
%1892 = bitcast i8* %1891 to i32*
%1893 = load i32* %1892, align 4
%1894 = getelementptr i8* %ppu_state, i32 1544
%1895 = bitcast i8* %1894 to i64*
%1896 = load i64* %1895, align 8
%1897 = lshr i64 %1896, 31
%1898 = and i64 %1897, 1
%1899 = and i32 %1893, -16
%1900 = zext i1 %1888 to i32
%1901 = shl i32 %1900, 3
%1902 = or i32 %1899, %1901
%1903 = zext i1 %1889 to i32
%1904 = shl i32 %1903, 2
%1905 = or i32 %1902, %1904
%1906 = zext i1 %1890 to i32
%1907 = shl i32 %1906, 1
%1908 = or i32 %1905, %1907
%1909 = trunc i64 %1898 to i32
%1910 = or i32 %1908, %1909
%1911 = getelementptr i8* %ppu_state, i32 1540
%1912 = bitcast i8* %1911 to i32*
store i32 %1910, i32* %1912, align 4
br label %instr_0x001CC7D0
instr_0x001CC7D0: ; preds = %instr_0x001CC7CC
%1913 = getelementptr i8* %ppu_state, i32 1576
%1914 = bitcast i8* %1913 to i64*
%1915 = load i64* %1914, align 8
%1916 = getelementptr i8* %ppu_state, i32 1540
%1917 = bitcast i8* %1916 to i32*
%1918 = load i32* %1917, align 4
%1919 = lshr i32 %1918, 1
%1920 = and i32 %1919, 1
%1921 = trunc i32 %1920 to i1
br i1 %1921, label %instr_0x001CC7F4, label %instr_0x001CC7D4
instr_0x001CC7D4: ; preds = %instr_0x001CC7D0
%1922 = getelementptr i8* %ppu_state, i32 768
%1923 = bitcast i8* %1922 to i64*
store i64 0, i64* %1923, align 8
br label %instr_0x001CC7D8
instr_0x001CC7D8: ; preds = %instr_0x001CC7D4
%1924 = getelementptr i8* %ppu_state, i32 1016
%1925 = bitcast i8* %1924 to i64*
%1926 = load i64* %1925, align 8
%1927 = add i64 %1926, 520
%1928 = getelementptr i8* %ppu_state, i32 768
%1929 = bitcast i8* %1928 to i32*
%1930 = load i32* %1929, align 8
%1931 = call i32 @llvm.bswap.i32(i32 %1930)
%1932 = and i64 %1927, 4294967295
%1933 = add i64 %1932, 2147418112
%1934 = inttoptr i64 %1933 to i32*
store i32 %1931, i32* %1934
br label %instr_0x001CC7DC
instr_0x001CC7DC: ; preds = %instr_0x001CC7D8
%1935 = getelementptr i8* %ppu_state, i32 784
%1936 = bitcast i8* %1935 to i64*
%1937 = load i64* %1936, align 8
%1938 = add i64 %1937, -14088
%1939 = and i64 %1938, 4294967295
%1940 = add i64 %1939, 2147418112
%1941 = inttoptr i64 %1940 to i32*
%1942 = load i32* %1941
%1943 = call i32 @llvm.bswap.i32(i32 %1942)
%1944 = zext i32 %1943 to i64
%1945 = getelementptr i8* %ppu_state, i32 840
%1946 = bitcast i8* %1945 to i64*
store i64 %1944, i64* %1946, align 8
br label %instr_0x001CC7E0
instr_0x001CC7E0: ; preds = %instr_0x001CC7DC
%1947 = getelementptr i8* %ppu_state, i32 840
%1948 = bitcast i8* %1947 to i64*
%1949 = load i64* %1948, align 8
%1950 = add i64 %1949, 0
%1951 = and i64 %1950, 4294967295
%1952 = add i64 %1951, 2147418112
%1953 = inttoptr i64 %1952 to i32*
%1954 = load i32* %1953
%1955 = call i32 @llvm.bswap.i32(i32 %1954)
%1956 = zext i32 %1955 to i64
%1957 = getelementptr i8* %ppu_state, i32 792
%1958 = bitcast i8* %1957 to i64*
store i64 %1956, i64* %1958, align 8
br label %instr_0x001CC7E4
instr_0x001CC7E4: ; preds = %instr_0x001CC7E0
%1959 = getelementptr i8* %ppu_state, i32 1016
%1960 = bitcast i8* %1959 to i64*
%1961 = load i64* %1960, align 8
%1962 = add i64 %1961, 296
%1963 = and i64 %1962, 4294967295
%1964 = add i64 %1963, 2147418112
%1965 = inttoptr i64 %1964 to i32*
%1966 = load i32* %1965
%1967 = call i32 @llvm.bswap.i32(i32 %1966)
%1968 = zext i32 %1967 to i64
%1969 = getelementptr i8* %ppu_state, i32 800
%1970 = bitcast i8* %1969 to i64*
store i64 %1968, i64* %1970, align 8
br label %instr_0x001CC7E8
instr_0x001CC7E8: ; preds = %instr_0x001CC7E4
%1971 = getelementptr i8* %ppu_state, i32 1016
%1972 = bitcast i8* %1971 to i64*
%1973 = load i64* %1972, align 8
%1974 = add i64 %1973, 504
%1975 = and i64 %1974, 4294967295
%1976 = add i64 %1975, 2147418112
%1977 = inttoptr i64 %1976 to i32*
%1978 = load i32* %1977
%1979 = call i32 @llvm.bswap.i32(i32 %1978)
%1980 = zext i32 %1979 to i64
%1981 = getelementptr i8* %ppu_state, i32 808
%1982 = bitcast i8* %1981 to i64*
store i64 %1980, i64* %1982, align 8
br label %instr_0x001CC7EC
instr_0x001CC7EC: ; preds = %instr_0x001CC7E8
%1983 = getelementptr i8* %ppu_state, i32 1568
%1984 = bitcast i8* %1983 to i64*
store i64 1886192, i64* %1984, align 8
%1985 = getelementptr i8* %ppu_state, i32 1664
%1986 = bitcast i8* %1985 to i32*
store i32 2071264, i32* %1986, align 4
%1987 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC7F0
instr_0x001CC7F0: ; preds = %instr_0x001CC7EC
%1988 = getelementptr i8* %ppu_state, i32 768
%1989 = bitcast i8* %1988 to i64*
%1990 = load i64* %1989, align 8
%1991 = getelementptr i8* %ppu_state, i32 768
%1992 = bitcast i8* %1991 to i64*
store i64 %1990, i64* %1992, align 8
br label %instr_0x001CC7F4
instr_0x001CC7F4: ; preds = %instr_0x001CC7F0, %instr_0x001CC7D0
%1993 = getelementptr i8* %ppu_state, i32 784
%1994 = bitcast i8* %1993 to i64*
%1995 = load i64* %1994, align 8
%1996 = add i64 %1995, -14088
%1997 = and i64 %1996, 4294967295
%1998 = add i64 %1997, 2147418112
%1999 = inttoptr i64 %1998 to i32*
%2000 = load i32* %1999
%2001 = call i32 @llvm.bswap.i32(i32 %2000)
%2002 = zext i32 %2001 to i64
%2003 = getelementptr i8* %ppu_state, i32 1000
%2004 = bitcast i8* %2003 to i64*
store i64 %2002, i64* %2004, align 8
br label %instr_0x001CC7F8
instr_0x001CC7F8: ; preds = %instr_0x001CC7F4
%2005 = getelementptr i8* %ppu_state, i32 1000
%2006 = bitcast i8* %2005 to i64*
%2007 = load i64* %2006, align 8
%2008 = add i64 %2007, 0
%2009 = and i64 %2008, 4294967295
%2010 = add i64 %2009, 2147418112
%2011 = inttoptr i64 %2010 to i32*
%2012 = load i32* %2011
%2013 = call i32 @llvm.bswap.i32(i32 %2012)
%2014 = zext i32 %2013 to i64
%2015 = getelementptr i8* %ppu_state, i32 792
%2016 = bitcast i8* %2015 to i64*
store i64 %2014, i64* %2016, align 8
br label %instr_0x001CC7FC
instr_0x001CC7FC: ; preds = %instr_0x001CC7F8
%2017 = getelementptr i8* %ppu_state, i32 800
%2018 = bitcast i8* %2017 to i64*
store i64 0, i64* %2018, align 8
br label %instr_0x001CC800
instr_0x001CC800: ; preds = %instr_0x001CC7FC
%2019 = getelementptr i8* %ppu_state, i32 808
%2020 = bitcast i8* %2019 to i64*
store i64 1, i64* %2020, align 8
br label %instr_0x001CC804
instr_0x001CC804: ; preds = %instr_0x001CC800
%2021 = getelementptr i8* %ppu_state, i32 816
%2022 = bitcast i8* %2021 to i64*
store i64 0, i64* %2022, align 8
br label %instr_0x001CC808
instr_0x001CC808: ; preds = %instr_0x001CC804
%2023 = getelementptr i8* %ppu_state, i32 824
%2024 = bitcast i8* %2023 to i64*
store i64 3072, i64* %2024, align 8
br label %instr_0x001CC80C
instr_0x001CC80C: ; preds = %instr_0x001CC808
%2025 = getelementptr i8* %ppu_state, i32 832
%2026 = bitcast i8* %2025 to i64*
store i64 0, i64* %2026, align 8
br label %instr_0x001CC810
instr_0x001CC810: ; preds = %instr_0x001CC80C
%2027 = getelementptr i8* %ppu_state, i32 1568
%2028 = bitcast i8* %2027 to i64*
store i64 1886228, i64* %2028, align 8
%2029 = getelementptr i8* %ppu_state, i32 1664
%2030 = bitcast i8* %2029 to i32*
store i32 2049336, i32* %2030, align 4
%2031 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC814
instr_0x001CC814: ; preds = %instr_0x001CC810
%2032 = getelementptr i8* %ppu_state, i32 768
%2033 = bitcast i8* %2032 to i64*
%2034 = load i64* %2033, align 8
%2035 = getelementptr i8* %ppu_state, i32 768
%2036 = bitcast i8* %2035 to i64*
store i64 %2034, i64* %2036, align 8
br label %instr_0x001CC818
instr_0x001CC818: ; preds = %instr_0x001CC814
%2037 = getelementptr i8* %ppu_state, i32 1000
%2038 = bitcast i8* %2037 to i64*
%2039 = load i64* %2038, align 8
%2040 = add i64 %2039, 0
%2041 = and i64 %2040, 4294967295
%2042 = add i64 %2041, 2147418112
%2043 = inttoptr i64 %2042 to i32*
%2044 = load i32* %2043
%2045 = call i32 @llvm.bswap.i32(i32 %2044)
%2046 = zext i32 %2045 to i64
%2047 = getelementptr i8* %ppu_state, i32 792
%2048 = bitcast i8* %2047 to i64*
store i64 %2046, i64* %2048, align 8
br label %instr_0x001CC81C
instr_0x001CC81C: ; preds = %instr_0x001CC818
%2049 = getelementptr i8* %ppu_state, i32 800
%2050 = bitcast i8* %2049 to i64*
store i64 0, i64* %2050, align 8
br label %instr_0x001CC820
instr_0x001CC820: ; preds = %instr_0x001CC81C
%2051 = getelementptr i8* %ppu_state, i32 1008
%2052 = bitcast i8* %2051 to i64*
%2053 = load i64* %2052, align 8
%2054 = getelementptr i8* %ppu_state, i32 1008
%2055 = bitcast i8* %2054 to i64*
%2056 = load i64* %2055, align 8
%2057 = or i64 %2053, %2056
%2058 = getelementptr i8* %ppu_state, i32 808
%2059 = bitcast i8* %2058 to i64*
store i64 %2057, i64* %2059, align 8
br label %instr_0x001CC824
instr_0x001CC824: ; preds = %instr_0x001CC820
%2060 = getelementptr i8* %ppu_state, i32 1568
%2061 = bitcast i8* %2060 to i64*
store i64 1886248, i64* %2061, align 8
%2062 = getelementptr i8* %ppu_state, i32 1664
%2063 = bitcast i8* %2062 to i32*
store i32 2049936, i32* %2063, align 4
%2064 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC828
instr_0x001CC828: ; preds = %instr_0x001CC824
%2065 = getelementptr i8* %ppu_state, i32 768
%2066 = bitcast i8* %2065 to i64*
%2067 = load i64* %2066, align 8
%2068 = getelementptr i8* %ppu_state, i32 768
%2069 = bitcast i8* %2068 to i64*
store i64 %2067, i64* %2069, align 8
br label %instr_0x001CC82C
instr_0x001CC82C: ; preds = %instr_0x001CC828
%2070 = getelementptr i8* %ppu_state, i32 1000
%2071 = bitcast i8* %2070 to i64*
%2072 = load i64* %2071, align 8
%2073 = add i64 %2072, 0
%2074 = and i64 %2073, 4294967295
%2075 = add i64 %2074, 2147418112
%2076 = inttoptr i64 %2075 to i32*
%2077 = load i32* %2076
%2078 = call i32 @llvm.bswap.i32(i32 %2077)
%2079 = zext i32 %2078 to i64
%2080 = getelementptr i8* %ppu_state, i32 792
%2081 = bitcast i8* %2080 to i64*
store i64 %2079, i64* %2081, align 8
br label %instr_0x001CC830
instr_0x001CC830: ; preds = %instr_0x001CC82C
%2082 = getelementptr i8* %ppu_state, i32 800
%2083 = bitcast i8* %2082 to i64*
store i64 1, i64* %2083, align 8
br label %instr_0x001CC834
instr_0x001CC834: ; preds = %instr_0x001CC830
%2084 = getelementptr i8* %ppu_state, i32 808
%2085 = bitcast i8* %2084 to i64*
store i64 0, i64* %2085, align 8
br label %instr_0x001CC838
instr_0x001CC838: ; preds = %instr_0x001CC834
%2086 = getelementptr i8* %ppu_state, i32 816
%2087 = bitcast i8* %2086 to i64*
store i64 0, i64* %2087, align 8
br label %instr_0x001CC83C
instr_0x001CC83C: ; preds = %instr_0x001CC838
%2088 = getelementptr i8* %ppu_state, i32 824
%2089 = bitcast i8* %2088 to i64*
store i64 3072, i64* %2089, align 8
br label %instr_0x001CC840
instr_0x001CC840: ; preds = %instr_0x001CC83C
%2090 = getelementptr i8* %ppu_state, i32 832
%2091 = bitcast i8* %2090 to i64*
store i64 0, i64* %2091, align 8
br label %instr_0x001CC844
instr_0x001CC844: ; preds = %instr_0x001CC840
%2092 = getelementptr i8* %ppu_state, i32 1568
%2093 = bitcast i8* %2092 to i64*
store i64 1886280, i64* %2093, align 8
%2094 = getelementptr i8* %ppu_state, i32 1664
%2095 = bitcast i8* %2094 to i32*
store i32 2049336, i32* %2095, align 4
%2096 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC848
instr_0x001CC848: ; preds = %instr_0x001CC844
%2097 = getelementptr i8* %ppu_state, i32 768
%2098 = bitcast i8* %2097 to i64*
%2099 = load i64* %2098, align 8
%2100 = getelementptr i8* %ppu_state, i32 768
%2101 = bitcast i8* %2100 to i64*
store i64 %2099, i64* %2101, align 8
br label %instr_0x001CC84C
instr_0x001CC84C: ; preds = %instr_0x001CC848, %instr_0x001CC7C0
%2102 = getelementptr i8* %ppu_state, i32 976
%2103 = bitcast i8* %2102 to i64*
%2104 = load i64* %2103, align 8
%2105 = icmp slt i64 %2104, 0
%2106 = icmp sgt i64 %2104, 0
%2107 = icmp eq i64 %2104, 0
%2108 = getelementptr i8* %ppu_state, i32 1540
%2109 = bitcast i8* %2108 to i32*
%2110 = load i32* %2109, align 4
%2111 = getelementptr i8* %ppu_state, i32 1544
%2112 = bitcast i8* %2111 to i64*
%2113 = load i64* %2112, align 8
%2114 = lshr i64 %2113, 31
%2115 = and i64 %2114, 1
%2116 = and i32 %2110, -16
%2117 = zext i1 %2105 to i32
%2118 = shl i32 %2117, 3
%2119 = or i32 %2116, %2118
%2120 = zext i1 %2106 to i32
%2121 = shl i32 %2120, 2
%2122 = or i32 %2119, %2121
%2123 = zext i1 %2107 to i32
%2124 = shl i32 %2123, 1
%2125 = or i32 %2122, %2124
%2126 = trunc i64 %2115 to i32
%2127 = or i32 %2125, %2126
%2128 = getelementptr i8* %ppu_state, i32 1540
%2129 = bitcast i8* %2128 to i32*
store i32 %2127, i32* %2129, align 4
br label %instr_0x001CC850
instr_0x001CC850: ; preds = %instr_0x001CC84C
%2130 = getelementptr i8* %ppu_state, i32 1576
%2131 = bitcast i8* %2130 to i64*
%2132 = load i64* %2131, align 8
%2133 = getelementptr i8* %ppu_state, i32 1540
%2134 = bitcast i8* %2133 to i32*
%2135 = load i32* %2134, align 4
%2136 = lshr i32 %2135, 1
%2137 = and i32 %2136, 1
%2138 = trunc i32 %2137 to i1
br i1 %2138, label %instr_0x001CCA78, label %instr_0x001CC854
instr_0x001CC854: ; preds = %instr_0x001CC850
%2139 = getelementptr i8* %ppu_state, i32 992
%2140 = bitcast i8* %2139 to i64*
%2141 = load i64* %2140, align 8
%2142 = add i64 %2141, 41
%2143 = and i64 %2142, 4294967295
%2144 = add i64 %2143, 2147418112
%2145 = inttoptr i64 %2144 to i8*
%2146 = load i8* %2145
%2147 = zext i8 %2146 to i64
%2148 = getelementptr i8* %ppu_state, i32 768
%2149 = bitcast i8* %2148 to i64*
store i64 %2147, i64* %2149, align 8
br label %instr_0x001CC858
instr_0x001CC858: ; preds = %instr_0x001CC854
%2150 = getelementptr i8* %ppu_state, i32 768
%2151 = load i8* %2150, align 8
%2152 = sext i8 %2151 to i64
%2153 = getelementptr i8* %ppu_state, i32 768
%2154 = bitcast i8* %2153 to i64*
store i64 %2152, i64* %2154, align 8
br label %instr_0x001CC85C
instr_0x001CC85C: ; preds = %instr_0x001CC858
%2155 = getelementptr i8* %ppu_state, i32 768
%2156 = bitcast i8* %2155 to i32*
%2157 = load i32* %2156, align 8
%2158 = sext i32 %2157 to i64
%2159 = icmp slt i64 %2158, 0
%2160 = icmp sgt i64 %2158, 0
%2161 = icmp eq i64 %2158, 0
%2162 = getelementptr i8* %ppu_state, i32 1540
%2163 = bitcast i8* %2162 to i32*
%2164 = load i32* %2163, align 4
%2165 = getelementptr i8* %ppu_state, i32 1544
%2166 = bitcast i8* %2165 to i64*
%2167 = load i64* %2166, align 8
%2168 = lshr i64 %2167, 31
%2169 = and i64 %2168, 1
%2170 = and i32 %2164, 268435455
%2171 = zext i1 %2159 to i32
%2172 = shl i32 %2171, 31
%2173 = or i32 %2170, %2172
%2174 = zext i1 %2160 to i32
%2175 = shl i32 %2174, 30
%2176 = or i32 %2173, %2175
%2177 = zext i1 %2161 to i32
%2178 = shl i32 %2177, 29
%2179 = or i32 %2176, %2178
%2180 = trunc i64 %2169 to i32
%2181 = shl i32 %2180, 28
%2182 = or i32 %2179, %2181
%2183 = getelementptr i8* %ppu_state, i32 1540
%2184 = bitcast i8* %2183 to i32*
store i32 %2182, i32* %2184, align 4
br label %instr_0x001CC860
instr_0x001CC860: ; preds = %instr_0x001CC85C
%2185 = getelementptr i8* %ppu_state, i32 1576
%2186 = bitcast i8* %2185 to i64*
%2187 = load i64* %2186, align 8
%2188 = getelementptr i8* %ppu_state, i32 1540
%2189 = bitcast i8* %2188 to i32*
%2190 = load i32* %2189, align 4
%2191 = lshr i32 %2190, 29
%2192 = and i32 %2191, 1
%2193 = trunc i32 %2192 to i1
br i1 %2193, label %instr_0x001CC870, label %instr_0x001CC864
instr_0x001CC864: ; preds = %instr_0x001CC860
%2194 = getelementptr i8* %ppu_state, i32 768
%2195 = bitcast i8* %2194 to i32*
%2196 = load i32* %2195, align 8
%2197 = sext i32 %2196 to i64
%2198 = icmp slt i64 %2197, 1
%2199 = icmp sgt i64 %2197, 1
%2200 = icmp eq i64 %2197, 1
%2201 = getelementptr i8* %ppu_state, i32 1540
%2202 = bitcast i8* %2201 to i32*
%2203 = load i32* %2202, align 4
%2204 = getelementptr i8* %ppu_state, i32 1544
%2205 = bitcast i8* %2204 to i64*
%2206 = load i64* %2205, align 8
%2207 = lshr i64 %2206, 31
%2208 = and i64 %2207, 1
%2209 = and i32 %2203, -16
%2210 = zext i1 %2198 to i32
%2211 = shl i32 %2210, 3
%2212 = or i32 %2209, %2211
%2213 = zext i1 %2199 to i32
%2214 = shl i32 %2213, 2
%2215 = or i32 %2212, %2214
%2216 = zext i1 %2200 to i32
%2217 = shl i32 %2216, 1
%2218 = or i32 %2215, %2217
%2219 = trunc i64 %2208 to i32
%2220 = or i32 %2218, %2219
%2221 = getelementptr i8* %ppu_state, i32 1540
%2222 = bitcast i8* %2221 to i32*
store i32 %2220, i32* %2222, align 4
br label %instr_0x001CC868
instr_0x001CC868: ; preds = %instr_0x001CC864
%2223 = getelementptr i8* %ppu_state, i32 1576
%2224 = bitcast i8* %2223 to i64*
%2225 = load i64* %2224, align 8
%2226 = getelementptr i8* %ppu_state, i32 1540
%2227 = bitcast i8* %2226 to i32*
%2228 = load i32* %2227, align 4
%2229 = lshr i32 %2228, 1
%2230 = and i32 %2229, 1
%2231 = trunc i32 %2230 to i1
%2232 = xor i1 %2231, true
br i1 %2232, label %instr_0x001CCA5C, label %instr_0x001CC86C
instr_0x001CC86C: ; preds = %instr_0x001CC868
br label %instr_0x001CC88C
instr_0x001CC870: ; preds = %instr_0x001CC860
%2233 = getelementptr i8* %ppu_state, i32 984
%2234 = bitcast i8* %2233 to i64*
%2235 = load i64* %2234, align 8
%2236 = add i64 %2235, 393216
%2237 = getelementptr i8* %ppu_state, i32 808
%2238 = bitcast i8* %2237 to i64*
store i64 %2236, i64* %2238, align 8
br label %instr_0x001CC874
instr_0x001CC874: ; preds = %instr_0x001CC870
%2239 = getelementptr i8* %ppu_state, i32 808
%2240 = bitcast i8* %2239 to i64*
%2241 = load i64* %2240, align 8
%2242 = add i64 %2241, 6784
%2243 = getelementptr i8* %ppu_state, i32 808
%2244 = bitcast i8* %2243 to i64*
store i64 %2242, i64* %2244, align 8
br label %instr_0x001CC878
instr_0x001CC878: ; preds = %instr_0x001CC874
%2245 = getelementptr i8* %ppu_state, i32 1016
%2246 = bitcast i8* %2245 to i64*
%2247 = load i64* %2246, align 8
%2248 = getelementptr i8* %ppu_state, i32 1016
%2249 = bitcast i8* %2248 to i64*
%2250 = load i64* %2249, align 8
%2251 = or i64 %2247, %2250
%2252 = getelementptr i8* %ppu_state, i32 792
%2253 = bitcast i8* %2252 to i64*
store i64 %2251, i64* %2253, align 8
br label %instr_0x001CC87C
instr_0x001CC87C: ; preds = %instr_0x001CC878
%2254 = getelementptr i8* %ppu_state, i32 800
%2255 = bitcast i8* %2254 to i64*
store i64 0, i64* %2255, align 8
br label %instr_0x001CC880
instr_0x001CC880: ; preds = %instr_0x001CC87C
%2256 = getelementptr i8* %ppu_state, i32 808
%2257 = bitcast i8* %2256 to i32*
%2258 = load i32* %2257, align 8
%2259 = sext i32 %2258 to i64
%2260 = getelementptr i8* %ppu_state, i32 808
%2261 = bitcast i8* %2260 to i64*
store i64 %2259, i64* %2261, align 8
br label %instr_0x001CC884
instr_0x001CC884: ; preds = %instr_0x001CC880
%2262 = getelementptr i8* %ppu_state, i32 1568
%2263 = bitcast i8* %2262 to i64*
store i64 1886344, i64* %2263, align 8
%2264 = getelementptr i8* %ppu_state, i32 1664
%2265 = bitcast i8* %2264 to i32*
store i32 1880980, i32* %2265, align 4
%2266 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC888
instr_0x001CC888: ; preds = %instr_0x001CC884
br label %instr_0x001CCA5C
instr_0x001CC88C: ; preds = %instr_0x001CC86C
%2267 = getelementptr i8* %ppu_state, i32 1016
%2268 = bitcast i8* %2267 to i64*
%2269 = load i64* %2268, align 8
%2270 = getelementptr i8* %ppu_state, i32 1016
%2271 = bitcast i8* %2270 to i64*
%2272 = load i64* %2271, align 8
%2273 = or i64 %2269, %2272
%2274 = getelementptr i8* %ppu_state, i32 792
%2275 = bitcast i8* %2274 to i64*
store i64 %2273, i64* %2275, align 8
br label %instr_0x001CC890
instr_0x001CC890: ; preds = %instr_0x001CC88C
%2276 = getelementptr i8* %ppu_state, i32 800
%2277 = bitcast i8* %2276 to i64*
store i64 1, i64* %2277, align 8
br label %instr_0x001CC894
instr_0x001CC894: ; preds = %instr_0x001CC890
%2278 = getelementptr i8* %ppu_state, i32 984
%2279 = bitcast i8* %2278 to i64*
%2280 = load i64* %2279, align 8
%2281 = getelementptr i8* %ppu_state, i32 984
%2282 = bitcast i8* %2281 to i64*
%2283 = load i64* %2282, align 8
%2284 = or i64 %2280, %2283
%2285 = getelementptr i8* %ppu_state, i32 808
%2286 = bitcast i8* %2285 to i64*
store i64 %2284, i64* %2286, align 8
br label %instr_0x001CC898
instr_0x001CC898: ; preds = %instr_0x001CC894
%2287 = getelementptr i8* %ppu_state, i32 1568
%2288 = bitcast i8* %2287 to i64*
store i64 1886364, i64* %2288, align 8
%2289 = getelementptr i8* %ppu_state, i32 1664
%2290 = bitcast i8* %2289 to i32*
store i32 1880980, i32* %2290, align 4
%2291 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC89C
instr_0x001CC89C: ; preds = %instr_0x001CC898
%2292 = getelementptr i8* %ppu_state, i32 784
%2293 = bitcast i8* %2292 to i64*
%2294 = load i64* %2293, align 8
%2295 = add i64 %2294, -14088
%2296 = and i64 %2295, 4294967295
%2297 = add i64 %2296, 2147418112
%2298 = inttoptr i64 %2297 to i32*
%2299 = load i32* %2298
%2300 = call i32 @llvm.bswap.i32(i32 %2299)
%2301 = zext i32 %2300 to i64
%2302 = getelementptr i8* %ppu_state, i32 840
%2303 = bitcast i8* %2302 to i64*
store i64 %2301, i64* %2303, align 8
br label %instr_0x001CC8A0
instr_0x001CC8A0: ; preds = %instr_0x001CC89C
%2304 = getelementptr i8* %ppu_state, i32 840
%2305 = bitcast i8* %2304 to i64*
%2306 = load i64* %2305, align 8
%2307 = add i64 %2306, 0
%2308 = and i64 %2307, 4294967295
%2309 = add i64 %2308, 2147418112
%2310 = inttoptr i64 %2309 to i32*
%2311 = load i32* %2310
%2312 = call i32 @llvm.bswap.i32(i32 %2311)
%2313 = zext i32 %2312 to i64
%2314 = getelementptr i8* %ppu_state, i32 792
%2315 = bitcast i8* %2314 to i64*
store i64 %2313, i64* %2315, align 8
br label %instr_0x001CC8A4
instr_0x001CC8A4: ; preds = %instr_0x001CC8A0
%2316 = getelementptr i8* %ppu_state, i32 1016
%2317 = bitcast i8* %2316 to i64*
%2318 = load i64* %2317, align 8
%2319 = add i64 %2318, 264
%2320 = and i64 %2319, 4294967295
%2321 = add i64 %2320, 2147418112
%2322 = inttoptr i64 %2321 to i32*
%2323 = load i32* %2322
%2324 = call i32 @llvm.bswap.i32(i32 %2323)
%2325 = zext i32 %2324 to i64
%2326 = getelementptr i8* %ppu_state, i32 800
%2327 = bitcast i8* %2326 to i64*
store i64 %2325, i64* %2327, align 8
br label %instr_0x001CC8A8
instr_0x001CC8A8: ; preds = %instr_0x001CC8A4
%2328 = getelementptr i8* %ppu_state, i32 992
%2329 = bitcast i8* %2328 to i64*
%2330 = load i64* %2329, align 8
%2331 = add i64 %2330, 48
%2332 = and i64 %2331, 4294967295
%2333 = add i64 %2332, 2147418112
%2334 = inttoptr i64 %2333 to i32*
%2335 = load i32* %2334
%2336 = call i32 @llvm.bswap.i32(i32 %2335)
%2337 = zext i32 %2336 to i64
%2338 = getelementptr i8* %ppu_state, i32 808
%2339 = bitcast i8* %2338 to i64*
store i64 %2337, i64* %2339, align 8
br label %instr_0x001CC8AC
instr_0x001CC8AC: ; preds = %instr_0x001CC8A8
%2340 = getelementptr i8* %ppu_state, i32 1568
%2341 = bitcast i8* %2340 to i64*
store i64 1886384, i64* %2341, align 8
%2342 = getelementptr i8* %ppu_state, i32 1664
%2343 = bitcast i8* %2342 to i32*
store i32 2075008, i32* %2343, align 4
%2344 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC8B0
instr_0x001CC8B0: ; preds = %instr_0x001CC8AC
%2345 = getelementptr i8* %ppu_state, i32 768
%2346 = bitcast i8* %2345 to i64*
%2347 = load i64* %2346, align 8
%2348 = getelementptr i8* %ppu_state, i32 768
%2349 = bitcast i8* %2348 to i64*
store i64 %2347, i64* %2349, align 8
br label %instr_0x001CC8B4
instr_0x001CC8B4: ; preds = %instr_0x001CC8B0
%2350 = getelementptr i8* %ppu_state, i32 768
%2351 = bitcast i8* %2350 to i64*
store i64 0, i64* %2351, align 8
br label %instr_0x001CC8B8
instr_0x001CC8B8: ; preds = %instr_0x001CC8B4
%2352 = getelementptr i8* %ppu_state, i32 776
%2353 = bitcast i8* %2352 to i64*
%2354 = load i64* %2353, align 8
%2355 = add i64 %2354, 120
%2356 = getelementptr i8* %ppu_state, i32 768
%2357 = bitcast i8* %2356 to i32*
%2358 = load i32* %2357, align 8
%2359 = call i32 @llvm.bswap.i32(i32 %2358)
%2360 = and i64 %2355, 4294967295
%2361 = add i64 %2360, 2147418112
%2362 = inttoptr i64 %2361 to i32*
store i32 %2359, i32* %2362
br label %instr_0x001CC8BC
instr_0x001CC8BC: ; preds = %instr_0x001CC8B8
%2363 = getelementptr i8* %ppu_state, i32 776
%2364 = bitcast i8* %2363 to i64*
%2365 = load i64* %2364, align 8
%2366 = add i64 %2365, 124
%2367 = getelementptr i8* %ppu_state, i32 768
%2368 = bitcast i8* %2367 to i32*
%2369 = load i32* %2368, align 8
%2370 = call i32 @llvm.bswap.i32(i32 %2369)
%2371 = and i64 %2366, 4294967295
%2372 = add i64 %2371, 2147418112
%2373 = inttoptr i64 %2372 to i32*
store i32 %2370, i32* %2373
br label %instr_0x001CC8C0
instr_0x001CC8C0: ; preds = %instr_0x001CC8BC
%2374 = getelementptr i8* %ppu_state, i32 776
%2375 = bitcast i8* %2374 to i64*
%2376 = load i64* %2375, align 8
%2377 = add i64 %2376, 128
%2378 = getelementptr i8* %ppu_state, i32 768
%2379 = bitcast i8* %2378 to i32*
%2380 = load i32* %2379, align 8
%2381 = call i32 @llvm.bswap.i32(i32 %2380)
%2382 = and i64 %2377, 4294967295
%2383 = add i64 %2382, 2147418112
%2384 = inttoptr i64 %2383 to i32*
store i32 %2381, i32* %2384
br label %instr_0x001CC8C4
instr_0x001CC8C4: ; preds = %instr_0x001CC8C0
%2385 = getelementptr i8* %ppu_state, i32 776
%2386 = bitcast i8* %2385 to i64*
%2387 = load i64* %2386, align 8
%2388 = add i64 %2387, 132
%2389 = getelementptr i8* %ppu_state, i32 768
%2390 = bitcast i8* %2389 to i32*
%2391 = load i32* %2390, align 8
%2392 = call i32 @llvm.bswap.i32(i32 %2391)
%2393 = and i64 %2388, 4294967295
%2394 = add i64 %2393, 2147418112
%2395 = inttoptr i64 %2394 to i32*
store i32 %2392, i32* %2395
br label %instr_0x001CC8C8
instr_0x001CC8C8: ; preds = %instr_0x001CC8C4
%2396 = getelementptr i8* %ppu_state, i32 992
%2397 = bitcast i8* %2396 to i64*
%2398 = load i64* %2397, align 8
%2399 = add i64 %2398, 56
%2400 = and i64 %2399, 4294967295
%2401 = add i64 %2400, 2147418112
%2402 = inttoptr i64 %2401 to i8*
%2403 = load i8* %2402
%2404 = zext i8 %2403 to i64
%2405 = getelementptr i8* %ppu_state, i32 840
%2406 = bitcast i8* %2405 to i64*
store i64 %2404, i64* %2406, align 8
br label %instr_0x001CC8CC
instr_0x001CC8CC: ; preds = %instr_0x001CC8C8
%2407 = getelementptr i8* %ppu_state, i32 840
%2408 = bitcast i8* %2407 to i64*
%2409 = load i64* %2408, align 8
%2410 = and i64 %2409, 2047
%2411 = getelementptr i8* %ppu_state, i32 856
%2412 = bitcast i8* %2411 to i64*
store i64 %2410, i64* %2412, align 8
br label %instr_0x001CC8D0
instr_0x001CC8D0: ; preds = %instr_0x001CC8CC
%2413 = getelementptr i8* %ppu_state, i32 856
%2414 = bitcast i8* %2413 to i64*
%2415 = load i64* %2414, align 8
%2416 = icmp slt i64 %2415, 0
%2417 = icmp sgt i64 %2415, 0
%2418 = icmp eq i64 %2415, 0
%2419 = getelementptr i8* %ppu_state, i32 1540
%2420 = bitcast i8* %2419 to i32*
%2421 = load i32* %2420, align 4
%2422 = getelementptr i8* %ppu_state, i32 1544
%2423 = bitcast i8* %2422 to i64*
%2424 = load i64* %2423, align 8
%2425 = lshr i64 %2424, 31
%2426 = and i64 %2425, 1
%2427 = and i32 %2421, -16
%2428 = zext i1 %2416 to i32
%2429 = shl i32 %2428, 3
%2430 = or i32 %2427, %2429
%2431 = zext i1 %2417 to i32
%2432 = shl i32 %2431, 2
%2433 = or i32 %2430, %2432
%2434 = zext i1 %2418 to i32
%2435 = shl i32 %2434, 1
%2436 = or i32 %2433, %2435
%2437 = trunc i64 %2426 to i32
%2438 = or i32 %2436, %2437
%2439 = getelementptr i8* %ppu_state, i32 1540
%2440 = bitcast i8* %2439 to i32*
store i32 %2438, i32* %2440, align 4
br label %instr_0x001CC8D4
instr_0x001CC8D4: ; preds = %instr_0x001CC8D0
%2441 = getelementptr i8* %ppu_state, i32 1576
%2442 = bitcast i8* %2441 to i64*
%2443 = load i64* %2442, align 8
%2444 = getelementptr i8* %ppu_state, i32 1540
%2445 = bitcast i8* %2444 to i32*
%2446 = load i32* %2445, align 4
%2447 = lshr i32 %2446, 1
%2448 = and i32 %2447, 1
%2449 = trunc i32 %2448 to i1
br i1 %2449, label %instr_0x001CC8EC, label %instr_0x001CC8D8
instr_0x001CC8D8: ; preds = %instr_0x001CC8D4
%2450 = getelementptr i8* %ppu_state, i32 768
%2451 = bitcast i8* %2450 to i64*
store i64 1, i64* %2451, align 8
br label %instr_0x001CC8DC
instr_0x001CC8DC: ; preds = %instr_0x001CC8D8
%2452 = getelementptr i8* %ppu_state, i32 768
%2453 = bitcast i8* %2452 to i64*
%2454 = load i64* %2453, align 8
%2455 = icmp ult i64 %2454, 2
%2456 = icmp ugt i64 %2454, 2
%2457 = icmp eq i64 %2454, 2
%2458 = getelementptr i8* %ppu_state, i32 1540
%2459 = bitcast i8* %2458 to i32*
%2460 = load i32* %2459, align 4
%2461 = getelementptr i8* %ppu_state, i32 1544
%2462 = bitcast i8* %2461 to i64*
%2463 = load i64* %2462, align 8
%2464 = lshr i64 %2463, 31
%2465 = and i64 %2464, 1
%2466 = and i32 %2460, -16
%2467 = zext i1 %2455 to i32
%2468 = shl i32 %2467, 3
%2469 = or i32 %2466, %2468
%2470 = zext i1 %2456 to i32
%2471 = shl i32 %2470, 2
%2472 = or i32 %2469, %2471
%2473 = zext i1 %2457 to i32
%2474 = shl i32 %2473, 1
%2475 = or i32 %2472, %2474
%2476 = trunc i64 %2465 to i32
%2477 = or i32 %2475, %2476
%2478 = getelementptr i8* %ppu_state, i32 1540
%2479 = bitcast i8* %2478 to i32*
store i32 %2477, i32* %2479, align 4
br label %instr_0x001CC8E0
instr_0x001CC8E0: ; preds = %instr_0x001CC8DC
%2480 = getelementptr i8* %ppu_state, i32 1576
%2481 = bitcast i8* %2480 to i64*
%2482 = load i64* %2481, align 8
%2483 = getelementptr i8* %ppu_state, i32 1540
%2484 = bitcast i8* %2483 to i32*
%2485 = load i32* %2484, align 4
%2486 = lshr i32 %2485, 3
%2487 = and i32 %2486, 1
%2488 = trunc i32 %2487 to i1
br i1 %2488, label %instr_0x001CC8EC, label %instr_0x001CC8E4
instr_0x001CC8E4: ; preds = %instr_0x001CC8E0
%2489 = getelementptr i8* %ppu_state, i32 840
%2490 = bitcast i8* %2489 to i64*
%2491 = load i64* %2490, align 8
%2492 = getelementptr i8* %ppu_state, i32 856
%2493 = bitcast i8* %2492 to i64*
%2494 = load i64* %2493, align 8
%2495 = xor i64 %2491, %2494
%2496 = getelementptr i8* %ppu_state, i32 840
%2497 = bitcast i8* %2496 to i64*
store i64 %2495, i64* %2497, align 8
br label %instr_0x001CC8E8
instr_0x001CC8E8: ; preds = %instr_0x001CC8E4
%2498 = getelementptr i8* %ppu_state, i32 840
%2499 = bitcast i8* %2498 to i64*
%2500 = load i64* %2499, align 8
%2501 = or i64 %2500, 2048
%2502 = getelementptr i8* %ppu_state, i32 840
%2503 = bitcast i8* %2502 to i64*
store i64 %2501, i64* %2503, align 8
br label %instr_0x001CC8EC
instr_0x001CC8EC: ; preds = %instr_0x001CC8E8, %instr_0x001CC8E0, %instr_0x001CC8D4
%2504 = getelementptr i8* %ppu_state, i32 776
%2505 = bitcast i8* %2504 to i64*
%2506 = load i64* %2505, align 8
%2507 = add i64 %2506, 160
%2508 = getelementptr i8* %ppu_state, i32 840
%2509 = bitcast i8* %2508 to i64*
%2510 = load i64* %2509, align 8
%2511 = call i64 @llvm.bswap.i64(i64 %2510)
%2512 = and i64 %2507, 4294967295
%2513 = add i64 %2512, 2147418112
%2514 = inttoptr i64 %2513 to i64*
store i64 %2511, i64* %2514
br label %instr_0x001CC8F0
instr_0x001CC8F0: ; preds = %instr_0x001CC8EC
%2515 = getelementptr i8* %ppu_state, i32 776
%2516 = bitcast i8* %2515 to i64*
%2517 = load i64* %2516, align 8
%2518 = add i64 %2517, 160
%2519 = and i64 %2518, 4294967295
%2520 = add i64 %2519, 2147418112
%2521 = inttoptr i64 %2520 to i64*
%2522 = load i64* %2521
%2523 = call i64 @llvm.bswap.i64(i64 %2522)
%2524 = getelementptr i8* %ppu_state, i32 456
%2525 = bitcast i8* %2524 to double*
%2526 = bitcast i64 %2523 to double
store double %2526, double* %2525, align 8
br label %instr_0x001CC8F4
instr_0x001CC8F4: ; preds = %instr_0x001CC8F0
%2527 = getelementptr i8* %ppu_state, i32 456
%2528 = bitcast i8* %2527 to i64*
%2529 = load i64* %2528, align 8
%2530 = sitofp i64 %2529 to double
%2531 = getelementptr i8* %ppu_state, i32 456
%2532 = bitcast i8* %2531 to double*
store double %2530, double* %2532, align 8
br label %instr_0x001CC8F8
instr_0x001CC8F8: ; preds = %instr_0x001CC8F4
%2533 = getelementptr i8* %ppu_state, i32 456
%2534 = bitcast i8* %2533 to double*
%2535 = load double* %2534, align 8
%2536 = fptrunc double %2535 to float
%2537 = fpext float %2536 to double
%2538 = getelementptr i8* %ppu_state, i32 248
%2539 = bitcast i8* %2538 to double*
store double %2537, double* %2539, align 8
br label %instr_0x001CC8FC
instr_0x001CC8FC: ; preds = %instr_0x001CC8F8
%2540 = getelementptr i8* %ppu_state, i32 784
%2541 = bitcast i8* %2540 to i64*
%2542 = load i64* %2541, align 8
%2543 = add i64 %2542, -13980
%2544 = and i64 %2543, 4294967295
%2545 = add i64 %2544, 2147418112
%2546 = inttoptr i64 %2545 to i32*
%2547 = load i32* %2546
%2548 = call i32 @llvm.bswap.i32(i32 %2547)
%2549 = getelementptr i8* %ppu_state, i32 456
%2550 = bitcast i8* %2549 to double*
%2551 = bitcast i32 %2548 to float
%2552 = fpext float %2551 to double
store double %2552, double* %2550, align 8
br label %instr_0x001CC900
instr_0x001CC900: ; preds = %instr_0x001CC8FC
%2553 = getelementptr i8* %ppu_state, i32 248
%2554 = bitcast i8* %2553 to double*
%2555 = load double* %2554, align 8
%2556 = getelementptr i8* %ppu_state, i32 456
%2557 = bitcast i8* %2556 to double*
%2558 = load double* %2557, align 8
%2559 = fmul double %2555, %2558
%2560 = fptrunc double %2559 to float
%2561 = getelementptr i8* %ppu_state, i32 248
%2562 = bitcast i8* %2561 to double*
%2563 = fpext float %2560 to double
store double %2563, double* %2562, align 8
br label %instr_0x001CC904
instr_0x001CC904: ; preds = %instr_0x001CC900
%2564 = getelementptr i8* %ppu_state, i32 776
%2565 = bitcast i8* %2564 to i64*
%2566 = load i64* %2565, align 8
%2567 = add i64 %2566, 120
%2568 = getelementptr i8* %ppu_state, i32 248
%2569 = bitcast i8* %2568 to double*
%2570 = load double* %2569, align 8
%2571 = fptrunc double %2570 to float
%2572 = bitcast float %2571 to i32
%2573 = call i32 @llvm.bswap.i32(i32 %2572)
%2574 = and i64 %2567, 4294967295
%2575 = add i64 %2574, 2147418112
%2576 = inttoptr i64 %2575 to i32*
store i32 %2573, i32* %2576
br label %instr_0x001CC908
instr_0x001CC908: ; preds = %instr_0x001CC904
%2577 = getelementptr i8* %ppu_state, i32 992
%2578 = bitcast i8* %2577 to i64*
%2579 = load i64* %2578, align 8
%2580 = add i64 %2579, 57
%2581 = and i64 %2580, 4294967295
%2582 = add i64 %2581, 2147418112
%2583 = inttoptr i64 %2582 to i8*
%2584 = load i8* %2583
%2585 = zext i8 %2584 to i64
%2586 = getelementptr i8* %ppu_state, i32 840
%2587 = bitcast i8* %2586 to i64*
store i64 %2585, i64* %2587, align 8
br label %instr_0x001CC90C
instr_0x001CC90C: ; preds = %instr_0x001CC908
%2588 = getelementptr i8* %ppu_state, i32 840
%2589 = bitcast i8* %2588 to i64*
%2590 = load i64* %2589, align 8
%2591 = and i64 %2590, 2047
%2592 = getelementptr i8* %ppu_state, i32 856
%2593 = bitcast i8* %2592 to i64*
store i64 %2591, i64* %2593, align 8
br label %instr_0x001CC910
instr_0x001CC910: ; preds = %instr_0x001CC90C
%2594 = getelementptr i8* %ppu_state, i32 856
%2595 = bitcast i8* %2594 to i64*
%2596 = load i64* %2595, align 8
%2597 = icmp slt i64 %2596, 0
%2598 = icmp sgt i64 %2596, 0
%2599 = icmp eq i64 %2596, 0
%2600 = getelementptr i8* %ppu_state, i32 1540
%2601 = bitcast i8* %2600 to i32*
%2602 = load i32* %2601, align 4
%2603 = getelementptr i8* %ppu_state, i32 1544
%2604 = bitcast i8* %2603 to i64*
%2605 = load i64* %2604, align 8
%2606 = lshr i64 %2605, 31
%2607 = and i64 %2606, 1
%2608 = and i32 %2602, -16
%2609 = zext i1 %2597 to i32
%2610 = shl i32 %2609, 3
%2611 = or i32 %2608, %2610
%2612 = zext i1 %2598 to i32
%2613 = shl i32 %2612, 2
%2614 = or i32 %2611, %2613
%2615 = zext i1 %2599 to i32
%2616 = shl i32 %2615, 1
%2617 = or i32 %2614, %2616
%2618 = trunc i64 %2607 to i32
%2619 = or i32 %2617, %2618
%2620 = getelementptr i8* %ppu_state, i32 1540
%2621 = bitcast i8* %2620 to i32*
store i32 %2619, i32* %2621, align 4
br label %instr_0x001CC914
instr_0x001CC914: ; preds = %instr_0x001CC910
%2622 = getelementptr i8* %ppu_state, i32 1576
%2623 = bitcast i8* %2622 to i64*
%2624 = load i64* %2623, align 8
%2625 = getelementptr i8* %ppu_state, i32 1540
%2626 = bitcast i8* %2625 to i32*
%2627 = load i32* %2626, align 4
%2628 = lshr i32 %2627, 1
%2629 = and i32 %2628, 1
%2630 = trunc i32 %2629 to i1
br i1 %2630, label %instr_0x001CC92C, label %instr_0x001CC918
instr_0x001CC918: ; preds = %instr_0x001CC914
%2631 = getelementptr i8* %ppu_state, i32 768
%2632 = bitcast i8* %2631 to i64*
store i64 1, i64* %2632, align 8
br label %instr_0x001CC91C
instr_0x001CC91C: ; preds = %instr_0x001CC918
%2633 = getelementptr i8* %ppu_state, i32 768
%2634 = bitcast i8* %2633 to i64*
%2635 = load i64* %2634, align 8
%2636 = icmp ult i64 %2635, 2
%2637 = icmp ugt i64 %2635, 2
%2638 = icmp eq i64 %2635, 2
%2639 = getelementptr i8* %ppu_state, i32 1540
%2640 = bitcast i8* %2639 to i32*
%2641 = load i32* %2640, align 4
%2642 = getelementptr i8* %ppu_state, i32 1544
%2643 = bitcast i8* %2642 to i64*
%2644 = load i64* %2643, align 8
%2645 = lshr i64 %2644, 31
%2646 = and i64 %2645, 1
%2647 = and i32 %2641, -16
%2648 = zext i1 %2636 to i32
%2649 = shl i32 %2648, 3
%2650 = or i32 %2647, %2649
%2651 = zext i1 %2637 to i32
%2652 = shl i32 %2651, 2
%2653 = or i32 %2650, %2652
%2654 = zext i1 %2638 to i32
%2655 = shl i32 %2654, 1
%2656 = or i32 %2653, %2655
%2657 = trunc i64 %2646 to i32
%2658 = or i32 %2656, %2657
%2659 = getelementptr i8* %ppu_state, i32 1540
%2660 = bitcast i8* %2659 to i32*
store i32 %2658, i32* %2660, align 4
br label %instr_0x001CC920
instr_0x001CC920: ; preds = %instr_0x001CC91C
%2661 = getelementptr i8* %ppu_state, i32 1576
%2662 = bitcast i8* %2661 to i64*
%2663 = load i64* %2662, align 8
%2664 = getelementptr i8* %ppu_state, i32 1540
%2665 = bitcast i8* %2664 to i32*
%2666 = load i32* %2665, align 4
%2667 = lshr i32 %2666, 3
%2668 = and i32 %2667, 1
%2669 = trunc i32 %2668 to i1
br i1 %2669, label %instr_0x001CC92C, label %instr_0x001CC924
instr_0x001CC924: ; preds = %instr_0x001CC920
%2670 = getelementptr i8* %ppu_state, i32 840
%2671 = bitcast i8* %2670 to i64*
%2672 = load i64* %2671, align 8
%2673 = getelementptr i8* %ppu_state, i32 856
%2674 = bitcast i8* %2673 to i64*
%2675 = load i64* %2674, align 8
%2676 = xor i64 %2672, %2675
%2677 = getelementptr i8* %ppu_state, i32 840
%2678 = bitcast i8* %2677 to i64*
store i64 %2676, i64* %2678, align 8
br label %instr_0x001CC928
instr_0x001CC928: ; preds = %instr_0x001CC924
%2679 = getelementptr i8* %ppu_state, i32 840
%2680 = bitcast i8* %2679 to i64*
%2681 = load i64* %2680, align 8
%2682 = or i64 %2681, 2048
%2683 = getelementptr i8* %ppu_state, i32 840
%2684 = bitcast i8* %2683 to i64*
store i64 %2682, i64* %2684, align 8
br label %instr_0x001CC92C
instr_0x001CC92C: ; preds = %instr_0x001CC928, %instr_0x001CC920, %instr_0x001CC914
%2685 = getelementptr i8* %ppu_state, i32 776
%2686 = bitcast i8* %2685 to i64*
%2687 = load i64* %2686, align 8
%2688 = add i64 %2687, 160
%2689 = getelementptr i8* %ppu_state, i32 840
%2690 = bitcast i8* %2689 to i64*
%2691 = load i64* %2690, align 8
%2692 = call i64 @llvm.bswap.i64(i64 %2691)
%2693 = and i64 %2688, 4294967295
%2694 = add i64 %2693, 2147418112
%2695 = inttoptr i64 %2694 to i64*
store i64 %2692, i64* %2695
br label %instr_0x001CC930
instr_0x001CC930: ; preds = %instr_0x001CC92C
%2696 = getelementptr i8* %ppu_state, i32 776
%2697 = bitcast i8* %2696 to i64*
%2698 = load i64* %2697, align 8
%2699 = add i64 %2698, 160
%2700 = and i64 %2699, 4294967295
%2701 = add i64 %2700, 2147418112
%2702 = inttoptr i64 %2701 to i64*
%2703 = load i64* %2702
%2704 = call i64 @llvm.bswap.i64(i64 %2703)
%2705 = getelementptr i8* %ppu_state, i32 456
%2706 = bitcast i8* %2705 to double*
%2707 = bitcast i64 %2704 to double
store double %2707, double* %2706, align 8
br label %instr_0x001CC934
instr_0x001CC934: ; preds = %instr_0x001CC930
%2708 = getelementptr i8* %ppu_state, i32 456
%2709 = bitcast i8* %2708 to i64*
%2710 = load i64* %2709, align 8
%2711 = sitofp i64 %2710 to double
%2712 = getelementptr i8* %ppu_state, i32 456
%2713 = bitcast i8* %2712 to double*
store double %2711, double* %2713, align 8
br label %instr_0x001CC938
instr_0x001CC938: ; preds = %instr_0x001CC934
%2714 = getelementptr i8* %ppu_state, i32 456
%2715 = bitcast i8* %2714 to double*
%2716 = load double* %2715, align 8
%2717 = fptrunc double %2716 to float
%2718 = fpext float %2717 to double
%2719 = getelementptr i8* %ppu_state, i32 248
%2720 = bitcast i8* %2719 to double*
store double %2718, double* %2720, align 8
br label %instr_0x001CC93C
instr_0x001CC93C: ; preds = %instr_0x001CC938
%2721 = getelementptr i8* %ppu_state, i32 784
%2722 = bitcast i8* %2721 to i64*
%2723 = load i64* %2722, align 8
%2724 = add i64 %2723, -13980
%2725 = and i64 %2724, 4294967295
%2726 = add i64 %2725, 2147418112
%2727 = inttoptr i64 %2726 to i32*
%2728 = load i32* %2727
%2729 = call i32 @llvm.bswap.i32(i32 %2728)
%2730 = getelementptr i8* %ppu_state, i32 456
%2731 = bitcast i8* %2730 to double*
%2732 = bitcast i32 %2729 to float
%2733 = fpext float %2732 to double
store double %2733, double* %2731, align 8
br label %instr_0x001CC940
instr_0x001CC940: ; preds = %instr_0x001CC93C
%2734 = getelementptr i8* %ppu_state, i32 248
%2735 = bitcast i8* %2734 to double*
%2736 = load double* %2735, align 8
%2737 = getelementptr i8* %ppu_state, i32 456
%2738 = bitcast i8* %2737 to double*
%2739 = load double* %2738, align 8
%2740 = fmul double %2736, %2739
%2741 = fptrunc double %2740 to float
%2742 = getelementptr i8* %ppu_state, i32 248
%2743 = bitcast i8* %2742 to double*
%2744 = fpext float %2741 to double
store double %2744, double* %2743, align 8
br label %instr_0x001CC944
instr_0x001CC944: ; preds = %instr_0x001CC940
%2745 = getelementptr i8* %ppu_state, i32 776
%2746 = bitcast i8* %2745 to i64*
%2747 = load i64* %2746, align 8
%2748 = add i64 %2747, 124
%2749 = getelementptr i8* %ppu_state, i32 248
%2750 = bitcast i8* %2749 to double*
%2751 = load double* %2750, align 8
%2752 = fptrunc double %2751 to float
%2753 = bitcast float %2752 to i32
%2754 = call i32 @llvm.bswap.i32(i32 %2753)
%2755 = and i64 %2748, 4294967295
%2756 = add i64 %2755, 2147418112
%2757 = inttoptr i64 %2756 to i32*
store i32 %2754, i32* %2757
br label %instr_0x001CC948
instr_0x001CC948: ; preds = %instr_0x001CC944
%2758 = getelementptr i8* %ppu_state, i32 992
%2759 = bitcast i8* %2758 to i64*
%2760 = load i64* %2759, align 8
%2761 = add i64 %2760, 58
%2762 = and i64 %2761, 4294967295
%2763 = add i64 %2762, 2147418112
%2764 = inttoptr i64 %2763 to i8*
%2765 = load i8* %2764
%2766 = zext i8 %2765 to i64
%2767 = getelementptr i8* %ppu_state, i32 840
%2768 = bitcast i8* %2767 to i64*
store i64 %2766, i64* %2768, align 8
br label %instr_0x001CC94C
instr_0x001CC94C: ; preds = %instr_0x001CC948
%2769 = getelementptr i8* %ppu_state, i32 840
%2770 = bitcast i8* %2769 to i64*
%2771 = load i64* %2770, align 8
%2772 = and i64 %2771, 2047
%2773 = getelementptr i8* %ppu_state, i32 856
%2774 = bitcast i8* %2773 to i64*
store i64 %2772, i64* %2774, align 8
br label %instr_0x001CC950
instr_0x001CC950: ; preds = %instr_0x001CC94C
%2775 = getelementptr i8* %ppu_state, i32 856
%2776 = bitcast i8* %2775 to i64*
%2777 = load i64* %2776, align 8
%2778 = icmp slt i64 %2777, 0
%2779 = icmp sgt i64 %2777, 0
%2780 = icmp eq i64 %2777, 0
%2781 = getelementptr i8* %ppu_state, i32 1540
%2782 = bitcast i8* %2781 to i32*
%2783 = load i32* %2782, align 4
%2784 = getelementptr i8* %ppu_state, i32 1544
%2785 = bitcast i8* %2784 to i64*
%2786 = load i64* %2785, align 8
%2787 = lshr i64 %2786, 31
%2788 = and i64 %2787, 1
%2789 = and i32 %2783, -16
%2790 = zext i1 %2778 to i32
%2791 = shl i32 %2790, 3
%2792 = or i32 %2789, %2791
%2793 = zext i1 %2779 to i32
%2794 = shl i32 %2793, 2
%2795 = or i32 %2792, %2794
%2796 = zext i1 %2780 to i32
%2797 = shl i32 %2796, 1
%2798 = or i32 %2795, %2797
%2799 = trunc i64 %2788 to i32
%2800 = or i32 %2798, %2799
%2801 = getelementptr i8* %ppu_state, i32 1540
%2802 = bitcast i8* %2801 to i32*
store i32 %2800, i32* %2802, align 4
br label %instr_0x001CC954
instr_0x001CC954: ; preds = %instr_0x001CC950
%2803 = getelementptr i8* %ppu_state, i32 1576
%2804 = bitcast i8* %2803 to i64*
%2805 = load i64* %2804, align 8
%2806 = getelementptr i8* %ppu_state, i32 1540
%2807 = bitcast i8* %2806 to i32*
%2808 = load i32* %2807, align 4
%2809 = lshr i32 %2808, 1
%2810 = and i32 %2809, 1
%2811 = trunc i32 %2810 to i1
br i1 %2811, label %instr_0x001CC96C, label %instr_0x001CC958
instr_0x001CC958: ; preds = %instr_0x001CC954
%2812 = getelementptr i8* %ppu_state, i32 768
%2813 = bitcast i8* %2812 to i64*
store i64 1, i64* %2813, align 8
br label %instr_0x001CC95C
instr_0x001CC95C: ; preds = %instr_0x001CC958
%2814 = getelementptr i8* %ppu_state, i32 768
%2815 = bitcast i8* %2814 to i64*
%2816 = load i64* %2815, align 8
%2817 = icmp ult i64 %2816, 2
%2818 = icmp ugt i64 %2816, 2
%2819 = icmp eq i64 %2816, 2
%2820 = getelementptr i8* %ppu_state, i32 1540
%2821 = bitcast i8* %2820 to i32*
%2822 = load i32* %2821, align 4
%2823 = getelementptr i8* %ppu_state, i32 1544
%2824 = bitcast i8* %2823 to i64*
%2825 = load i64* %2824, align 8
%2826 = lshr i64 %2825, 31
%2827 = and i64 %2826, 1
%2828 = and i32 %2822, -16
%2829 = zext i1 %2817 to i32
%2830 = shl i32 %2829, 3
%2831 = or i32 %2828, %2830
%2832 = zext i1 %2818 to i32
%2833 = shl i32 %2832, 2
%2834 = or i32 %2831, %2833
%2835 = zext i1 %2819 to i32
%2836 = shl i32 %2835, 1
%2837 = or i32 %2834, %2836
%2838 = trunc i64 %2827 to i32
%2839 = or i32 %2837, %2838
%2840 = getelementptr i8* %ppu_state, i32 1540
%2841 = bitcast i8* %2840 to i32*
store i32 %2839, i32* %2841, align 4
br label %instr_0x001CC960
instr_0x001CC960: ; preds = %instr_0x001CC95C
%2842 = getelementptr i8* %ppu_state, i32 1576
%2843 = bitcast i8* %2842 to i64*
%2844 = load i64* %2843, align 8
%2845 = getelementptr i8* %ppu_state, i32 1540
%2846 = bitcast i8* %2845 to i32*
%2847 = load i32* %2846, align 4
%2848 = lshr i32 %2847, 3
%2849 = and i32 %2848, 1
%2850 = trunc i32 %2849 to i1
br i1 %2850, label %instr_0x001CC96C, label %instr_0x001CC964
instr_0x001CC964: ; preds = %instr_0x001CC960
%2851 = getelementptr i8* %ppu_state, i32 840
%2852 = bitcast i8* %2851 to i64*
%2853 = load i64* %2852, align 8
%2854 = getelementptr i8* %ppu_state, i32 856
%2855 = bitcast i8* %2854 to i64*
%2856 = load i64* %2855, align 8
%2857 = xor i64 %2853, %2856
%2858 = getelementptr i8* %ppu_state, i32 840
%2859 = bitcast i8* %2858 to i64*
store i64 %2857, i64* %2859, align 8
br label %instr_0x001CC968
instr_0x001CC968: ; preds = %instr_0x001CC964
%2860 = getelementptr i8* %ppu_state, i32 840
%2861 = bitcast i8* %2860 to i64*
%2862 = load i64* %2861, align 8
%2863 = or i64 %2862, 2048
%2864 = getelementptr i8* %ppu_state, i32 840
%2865 = bitcast i8* %2864 to i64*
store i64 %2863, i64* %2865, align 8
br label %instr_0x001CC96C
instr_0x001CC96C: ; preds = %instr_0x001CC968, %instr_0x001CC960, %instr_0x001CC954
%2866 = getelementptr i8* %ppu_state, i32 776
%2867 = bitcast i8* %2866 to i64*
%2868 = load i64* %2867, align 8
%2869 = add i64 %2868, 160
%2870 = getelementptr i8* %ppu_state, i32 840
%2871 = bitcast i8* %2870 to i64*
%2872 = load i64* %2871, align 8
%2873 = call i64 @llvm.bswap.i64(i64 %2872)
%2874 = and i64 %2869, 4294967295
%2875 = add i64 %2874, 2147418112
%2876 = inttoptr i64 %2875 to i64*
store i64 %2873, i64* %2876
br label %instr_0x001CC970
instr_0x001CC970: ; preds = %instr_0x001CC96C
%2877 = getelementptr i8* %ppu_state, i32 776
%2878 = bitcast i8* %2877 to i64*
%2879 = load i64* %2878, align 8
%2880 = add i64 %2879, 160
%2881 = and i64 %2880, 4294967295
%2882 = add i64 %2881, 2147418112
%2883 = inttoptr i64 %2882 to i64*
%2884 = load i64* %2883
%2885 = call i64 @llvm.bswap.i64(i64 %2884)
%2886 = getelementptr i8* %ppu_state, i32 456
%2887 = bitcast i8* %2886 to double*
%2888 = bitcast i64 %2885 to double
store double %2888, double* %2887, align 8
br label %instr_0x001CC974
instr_0x001CC974: ; preds = %instr_0x001CC970
%2889 = getelementptr i8* %ppu_state, i32 456
%2890 = bitcast i8* %2889 to i64*
%2891 = load i64* %2890, align 8
%2892 = sitofp i64 %2891 to double
%2893 = getelementptr i8* %ppu_state, i32 456
%2894 = bitcast i8* %2893 to double*
store double %2892, double* %2894, align 8
br label %instr_0x001CC978
instr_0x001CC978: ; preds = %instr_0x001CC974
%2895 = getelementptr i8* %ppu_state, i32 456
%2896 = bitcast i8* %2895 to double*
%2897 = load double* %2896, align 8
%2898 = fptrunc double %2897 to float
%2899 = fpext float %2898 to double
%2900 = getelementptr i8* %ppu_state, i32 248
%2901 = bitcast i8* %2900 to double*
store double %2899, double* %2901, align 8
br label %instr_0x001CC97C
instr_0x001CC97C: ; preds = %instr_0x001CC978
%2902 = getelementptr i8* %ppu_state, i32 784
%2903 = bitcast i8* %2902 to i64*
%2904 = load i64* %2903, align 8
%2905 = add i64 %2904, -13980
%2906 = and i64 %2905, 4294967295
%2907 = add i64 %2906, 2147418112
%2908 = inttoptr i64 %2907 to i32*
%2909 = load i32* %2908
%2910 = call i32 @llvm.bswap.i32(i32 %2909)
%2911 = getelementptr i8* %ppu_state, i32 456
%2912 = bitcast i8* %2911 to double*
%2913 = bitcast i32 %2910 to float
%2914 = fpext float %2913 to double
store double %2914, double* %2912, align 8
br label %instr_0x001CC980
instr_0x001CC980: ; preds = %instr_0x001CC97C
%2915 = getelementptr i8* %ppu_state, i32 248
%2916 = bitcast i8* %2915 to double*
%2917 = load double* %2916, align 8
%2918 = getelementptr i8* %ppu_state, i32 456
%2919 = bitcast i8* %2918 to double*
%2920 = load double* %2919, align 8
%2921 = fmul double %2917, %2920
%2922 = fptrunc double %2921 to float
%2923 = getelementptr i8* %ppu_state, i32 248
%2924 = bitcast i8* %2923 to double*
%2925 = fpext float %2922 to double
store double %2925, double* %2924, align 8
br label %instr_0x001CC984
instr_0x001CC984: ; preds = %instr_0x001CC980
%2926 = getelementptr i8* %ppu_state, i32 776
%2927 = bitcast i8* %2926 to i64*
%2928 = load i64* %2927, align 8
%2929 = add i64 %2928, 128
%2930 = getelementptr i8* %ppu_state, i32 248
%2931 = bitcast i8* %2930 to double*
%2932 = load double* %2931, align 8
%2933 = fptrunc double %2932 to float
%2934 = bitcast float %2933 to i32
%2935 = call i32 @llvm.bswap.i32(i32 %2934)
%2936 = and i64 %2929, 4294967295
%2937 = add i64 %2936, 2147418112
%2938 = inttoptr i64 %2937 to i32*
store i32 %2935, i32* %2938
br label %instr_0x001CC988
instr_0x001CC988: ; preds = %instr_0x001CC984
%2939 = getelementptr i8* %ppu_state, i32 992
%2940 = bitcast i8* %2939 to i64*
%2941 = load i64* %2940, align 8
%2942 = add i64 %2941, 59
%2943 = and i64 %2942, 4294967295
%2944 = add i64 %2943, 2147418112
%2945 = inttoptr i64 %2944 to i8*
%2946 = load i8* %2945
%2947 = zext i8 %2946 to i64
%2948 = getelementptr i8* %ppu_state, i32 840
%2949 = bitcast i8* %2948 to i64*
store i64 %2947, i64* %2949, align 8
br label %instr_0x001CC98C
instr_0x001CC98C: ; preds = %instr_0x001CC988
%2950 = getelementptr i8* %ppu_state, i32 840
%2951 = bitcast i8* %2950 to i64*
%2952 = load i64* %2951, align 8
%2953 = and i64 %2952, 2047
%2954 = getelementptr i8* %ppu_state, i32 856
%2955 = bitcast i8* %2954 to i64*
store i64 %2953, i64* %2955, align 8
br label %instr_0x001CC990
instr_0x001CC990: ; preds = %instr_0x001CC98C
%2956 = getelementptr i8* %ppu_state, i32 856
%2957 = bitcast i8* %2956 to i64*
%2958 = load i64* %2957, align 8
%2959 = icmp slt i64 %2958, 0
%2960 = icmp sgt i64 %2958, 0
%2961 = icmp eq i64 %2958, 0
%2962 = getelementptr i8* %ppu_state, i32 1540
%2963 = bitcast i8* %2962 to i32*
%2964 = load i32* %2963, align 4
%2965 = getelementptr i8* %ppu_state, i32 1544
%2966 = bitcast i8* %2965 to i64*
%2967 = load i64* %2966, align 8
%2968 = lshr i64 %2967, 31
%2969 = and i64 %2968, 1
%2970 = and i32 %2964, -16
%2971 = zext i1 %2959 to i32
%2972 = shl i32 %2971, 3
%2973 = or i32 %2970, %2972
%2974 = zext i1 %2960 to i32
%2975 = shl i32 %2974, 2
%2976 = or i32 %2973, %2975
%2977 = zext i1 %2961 to i32
%2978 = shl i32 %2977, 1
%2979 = or i32 %2976, %2978
%2980 = trunc i64 %2969 to i32
%2981 = or i32 %2979, %2980
%2982 = getelementptr i8* %ppu_state, i32 1540
%2983 = bitcast i8* %2982 to i32*
store i32 %2981, i32* %2983, align 4
br label %instr_0x001CC994
instr_0x001CC994: ; preds = %instr_0x001CC990
%2984 = getelementptr i8* %ppu_state, i32 1576
%2985 = bitcast i8* %2984 to i64*
%2986 = load i64* %2985, align 8
%2987 = getelementptr i8* %ppu_state, i32 1540
%2988 = bitcast i8* %2987 to i32*
%2989 = load i32* %2988, align 4
%2990 = lshr i32 %2989, 1
%2991 = and i32 %2990, 1
%2992 = trunc i32 %2991 to i1
br i1 %2992, label %instr_0x001CC9AC, label %instr_0x001CC998
instr_0x001CC998: ; preds = %instr_0x001CC994
%2993 = getelementptr i8* %ppu_state, i32 768
%2994 = bitcast i8* %2993 to i64*
store i64 1, i64* %2994, align 8
br label %instr_0x001CC99C
instr_0x001CC99C: ; preds = %instr_0x001CC998
%2995 = getelementptr i8* %ppu_state, i32 768
%2996 = bitcast i8* %2995 to i64*
%2997 = load i64* %2996, align 8
%2998 = icmp ult i64 %2997, 2
%2999 = icmp ugt i64 %2997, 2
%3000 = icmp eq i64 %2997, 2
%3001 = getelementptr i8* %ppu_state, i32 1540
%3002 = bitcast i8* %3001 to i32*
%3003 = load i32* %3002, align 4
%3004 = getelementptr i8* %ppu_state, i32 1544
%3005 = bitcast i8* %3004 to i64*
%3006 = load i64* %3005, align 8
%3007 = lshr i64 %3006, 31
%3008 = and i64 %3007, 1
%3009 = and i32 %3003, -16
%3010 = zext i1 %2998 to i32
%3011 = shl i32 %3010, 3
%3012 = or i32 %3009, %3011
%3013 = zext i1 %2999 to i32
%3014 = shl i32 %3013, 2
%3015 = or i32 %3012, %3014
%3016 = zext i1 %3000 to i32
%3017 = shl i32 %3016, 1
%3018 = or i32 %3015, %3017
%3019 = trunc i64 %3008 to i32
%3020 = or i32 %3018, %3019
%3021 = getelementptr i8* %ppu_state, i32 1540
%3022 = bitcast i8* %3021 to i32*
store i32 %3020, i32* %3022, align 4
br label %instr_0x001CC9A0
instr_0x001CC9A0: ; preds = %instr_0x001CC99C
%3023 = getelementptr i8* %ppu_state, i32 1576
%3024 = bitcast i8* %3023 to i64*
%3025 = load i64* %3024, align 8
%3026 = getelementptr i8* %ppu_state, i32 1540
%3027 = bitcast i8* %3026 to i32*
%3028 = load i32* %3027, align 4
%3029 = lshr i32 %3028, 3
%3030 = and i32 %3029, 1
%3031 = trunc i32 %3030 to i1
br i1 %3031, label %instr_0x001CC9AC, label %instr_0x001CC9A4
instr_0x001CC9A4: ; preds = %instr_0x001CC9A0
%3032 = getelementptr i8* %ppu_state, i32 840
%3033 = bitcast i8* %3032 to i64*
%3034 = load i64* %3033, align 8
%3035 = getelementptr i8* %ppu_state, i32 856
%3036 = bitcast i8* %3035 to i64*
%3037 = load i64* %3036, align 8
%3038 = xor i64 %3034, %3037
%3039 = getelementptr i8* %ppu_state, i32 840
%3040 = bitcast i8* %3039 to i64*
store i64 %3038, i64* %3040, align 8
br label %instr_0x001CC9A8
instr_0x001CC9A8: ; preds = %instr_0x001CC9A4
%3041 = getelementptr i8* %ppu_state, i32 840
%3042 = bitcast i8* %3041 to i64*
%3043 = load i64* %3042, align 8
%3044 = or i64 %3043, 2048
%3045 = getelementptr i8* %ppu_state, i32 840
%3046 = bitcast i8* %3045 to i64*
store i64 %3044, i64* %3046, align 8
br label %instr_0x001CC9AC
instr_0x001CC9AC: ; preds = %instr_0x001CC9A8, %instr_0x001CC9A0, %instr_0x001CC994
%3047 = getelementptr i8* %ppu_state, i32 776
%3048 = bitcast i8* %3047 to i64*
%3049 = load i64* %3048, align 8
%3050 = add i64 %3049, 160
%3051 = getelementptr i8* %ppu_state, i32 840
%3052 = bitcast i8* %3051 to i64*
%3053 = load i64* %3052, align 8
%3054 = call i64 @llvm.bswap.i64(i64 %3053)
%3055 = and i64 %3050, 4294967295
%3056 = add i64 %3055, 2147418112
%3057 = inttoptr i64 %3056 to i64*
store i64 %3054, i64* %3057
br label %instr_0x001CC9B0
instr_0x001CC9B0: ; preds = %instr_0x001CC9AC
%3058 = getelementptr i8* %ppu_state, i32 776
%3059 = bitcast i8* %3058 to i64*
%3060 = load i64* %3059, align 8
%3061 = add i64 %3060, 160
%3062 = and i64 %3061, 4294967295
%3063 = add i64 %3062, 2147418112
%3064 = inttoptr i64 %3063 to i64*
%3065 = load i64* %3064
%3066 = call i64 @llvm.bswap.i64(i64 %3065)
%3067 = getelementptr i8* %ppu_state, i32 456
%3068 = bitcast i8* %3067 to double*
%3069 = bitcast i64 %3066 to double
store double %3069, double* %3068, align 8
br label %instr_0x001CC9B4
instr_0x001CC9B4: ; preds = %instr_0x001CC9B0
%3070 = getelementptr i8* %ppu_state, i32 456
%3071 = bitcast i8* %3070 to i64*
%3072 = load i64* %3071, align 8
%3073 = sitofp i64 %3072 to double
%3074 = getelementptr i8* %ppu_state, i32 456
%3075 = bitcast i8* %3074 to double*
store double %3073, double* %3075, align 8
br label %instr_0x001CC9B8
instr_0x001CC9B8: ; preds = %instr_0x001CC9B4
%3076 = getelementptr i8* %ppu_state, i32 456
%3077 = bitcast i8* %3076 to double*
%3078 = load double* %3077, align 8
%3079 = fptrunc double %3078 to float
%3080 = fpext float %3079 to double
%3081 = getelementptr i8* %ppu_state, i32 248
%3082 = bitcast i8* %3081 to double*
store double %3080, double* %3082, align 8
br label %instr_0x001CC9BC
instr_0x001CC9BC: ; preds = %instr_0x001CC9B8
%3083 = getelementptr i8* %ppu_state, i32 784
%3084 = bitcast i8* %3083 to i64*
%3085 = load i64* %3084, align 8
%3086 = add i64 %3085, -13980
%3087 = and i64 %3086, 4294967295
%3088 = add i64 %3087, 2147418112
%3089 = inttoptr i64 %3088 to i32*
%3090 = load i32* %3089
%3091 = call i32 @llvm.bswap.i32(i32 %3090)
%3092 = getelementptr i8* %ppu_state, i32 456
%3093 = bitcast i8* %3092 to double*
%3094 = bitcast i32 %3091 to float
%3095 = fpext float %3094 to double
store double %3095, double* %3093, align 8
br label %instr_0x001CC9C0
instr_0x001CC9C0: ; preds = %instr_0x001CC9BC
%3096 = getelementptr i8* %ppu_state, i32 248
%3097 = bitcast i8* %3096 to double*
%3098 = load double* %3097, align 8
%3099 = getelementptr i8* %ppu_state, i32 456
%3100 = bitcast i8* %3099 to double*
%3101 = load double* %3100, align 8
%3102 = fmul double %3098, %3101
%3103 = fptrunc double %3102 to float
%3104 = getelementptr i8* %ppu_state, i32 248
%3105 = bitcast i8* %3104 to double*
%3106 = fpext float %3103 to double
store double %3106, double* %3105, align 8
br label %instr_0x001CC9C4
instr_0x001CC9C4: ; preds = %instr_0x001CC9C0
%3107 = getelementptr i8* %ppu_state, i32 776
%3108 = bitcast i8* %3107 to i64*
%3109 = load i64* %3108, align 8
%3110 = add i64 %3109, 132
%3111 = getelementptr i8* %ppu_state, i32 248
%3112 = bitcast i8* %3111 to double*
%3113 = load double* %3112, align 8
%3114 = fptrunc double %3113 to float
%3115 = bitcast float %3114 to i32
%3116 = call i32 @llvm.bswap.i32(i32 %3115)
%3117 = and i64 %3110, 4294967295
%3118 = add i64 %3117, 2147418112
%3119 = inttoptr i64 %3118 to i32*
store i32 %3116, i32* %3119
br label %instr_0x001CC9C8
instr_0x001CC9C8: ; preds = %instr_0x001CC9C4
%3120 = getelementptr i8* %ppu_state, i32 784
%3121 = bitcast i8* %3120 to i64*
%3122 = load i64* %3121, align 8
%3123 = add i64 %3122, -14088
%3124 = and i64 %3123, 4294967295
%3125 = add i64 %3124, 2147418112
%3126 = inttoptr i64 %3125 to i32*
%3127 = load i32* %3126
%3128 = call i32 @llvm.bswap.i32(i32 %3127)
%3129 = zext i32 %3128 to i64
%3130 = getelementptr i8* %ppu_state, i32 840
%3131 = bitcast i8* %3130 to i64*
store i64 %3129, i64* %3131, align 8
br label %instr_0x001CC9CC
instr_0x001CC9CC: ; preds = %instr_0x001CC9C8
%3132 = getelementptr i8* %ppu_state, i32 840
%3133 = bitcast i8* %3132 to i64*
%3134 = load i64* %3133, align 8
%3135 = add i64 %3134, 0
%3136 = and i64 %3135, 4294967295
%3137 = add i64 %3136, 2147418112
%3138 = inttoptr i64 %3137 to i32*
%3139 = load i32* %3138
%3140 = call i32 @llvm.bswap.i32(i32 %3139)
%3141 = zext i32 %3140 to i64
%3142 = getelementptr i8* %ppu_state, i32 792
%3143 = bitcast i8* %3142 to i64*
store i64 %3141, i64* %3143, align 8
br label %instr_0x001CC9D0
instr_0x001CC9D0: ; preds = %instr_0x001CC9CC
%3144 = getelementptr i8* %ppu_state, i32 1016
%3145 = bitcast i8* %3144 to i64*
%3146 = load i64* %3145, align 8
%3147 = add i64 %3146, 268
%3148 = and i64 %3147, 4294967295
%3149 = add i64 %3148, 2147418112
%3150 = inttoptr i64 %3149 to i32*
%3151 = load i32* %3150
%3152 = call i32 @llvm.bswap.i32(i32 %3151)
%3153 = zext i32 %3152 to i64
%3154 = getelementptr i8* %ppu_state, i32 800
%3155 = bitcast i8* %3154 to i64*
store i64 %3153, i64* %3155, align 8
br label %instr_0x001CC9D4
instr_0x001CC9D4: ; preds = %instr_0x001CC9D0
%3156 = getelementptr i8* %ppu_state, i32 776
%3157 = bitcast i8* %3156 to i64*
%3158 = load i64* %3157, align 8
%3159 = add i64 %3158, 120
%3160 = getelementptr i8* %ppu_state, i32 808
%3161 = bitcast i8* %3160 to i64*
store i64 %3159, i64* %3161, align 8
br label %instr_0x001CC9D8
instr_0x001CC9D8: ; preds = %instr_0x001CC9D4
%3162 = getelementptr i8* %ppu_state, i32 1568
%3163 = bitcast i8* %3162 to i64*
store i64 1886684, i64* %3163, align 8
%3164 = getelementptr i8* %ppu_state, i32 1664
%3165 = bitcast i8* %3164 to i32*
store i32 2075008, i32* %3165, align 4
%3166 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CC9DC
instr_0x001CC9DC: ; preds = %instr_0x001CC9D8
%3167 = getelementptr i8* %ppu_state, i32 768
%3168 = bitcast i8* %3167 to i64*
%3169 = load i64* %3168, align 8
%3170 = getelementptr i8* %ppu_state, i32 768
%3171 = bitcast i8* %3170 to i64*
store i64 %3169, i64* %3171, align 8
br label %instr_0x001CC9E0
instr_0x001CC9E0: ; preds = %instr_0x001CC9DC
%3172 = getelementptr i8* %ppu_state, i32 784
%3173 = bitcast i8* %3172 to i64*
%3174 = load i64* %3173, align 8
%3175 = add i64 %3174, -13976
%3176 = and i64 %3175, 4294967295
%3177 = add i64 %3176, 2147418112
%3178 = inttoptr i64 %3177 to i32*
%3179 = load i32* %3178
%3180 = call i32 @llvm.bswap.i32(i32 %3179)
%3181 = zext i32 %3180 to i64
%3182 = getelementptr i8* %ppu_state, i32 840
%3183 = bitcast i8* %3182 to i64*
store i64 %3181, i64* %3183, align 8
br label %instr_0x001CC9E4
instr_0x001CC9E4: ; preds = %instr_0x001CC9E0
%3184 = getelementptr i8* %ppu_state, i32 840
%3185 = bitcast i8* %3184 to i64*
%3186 = load i64* %3185, align 8
%3187 = add i64 %3186, 8
%3188 = and i64 %3187, 4294967295
%3189 = add i64 %3188, 2147418112
%3190 = inttoptr i64 %3189 to i32*
%3191 = load i32* %3190
%3192 = call i32 @llvm.bswap.i32(i32 %3191)
%3193 = zext i32 %3192 to i64
%3194 = getelementptr i8* %ppu_state, i32 768
%3195 = bitcast i8* %3194 to i64*
store i64 %3193, i64* %3195, align 8
br label %instr_0x001CC9E8
instr_0x001CC9E8: ; preds = %instr_0x001CC9E4
%3196 = getelementptr i8* %ppu_state, i32 840
%3197 = bitcast i8* %3196 to i64*
%3198 = load i64* %3197, align 8
%3199 = add i64 %3198, 12
%3200 = and i64 %3199, 4294967295
%3201 = add i64 %3200, 2147418112
%3202 = inttoptr i64 %3201 to i32*
%3203 = load i32* %3202
%3204 = call i32 @llvm.bswap.i32(i32 %3203)
%3205 = zext i32 %3204 to i64
%3206 = getelementptr i8* %ppu_state, i32 840
%3207 = bitcast i8* %3206 to i64*
store i64 %3205, i64* %3207, align 8
br label %instr_0x001CC9EC
instr_0x001CC9EC: ; preds = %instr_0x001CC9E8
%3208 = getelementptr i8* %ppu_state, i32 776
%3209 = bitcast i8* %3208 to i64*
%3210 = load i64* %3209, align 8
%3211 = add i64 %3210, 144
%3212 = getelementptr i8* %ppu_state, i32 768
%3213 = bitcast i8* %3212 to i32*
%3214 = load i32* %3213, align 8
%3215 = call i32 @llvm.bswap.i32(i32 %3214)
%3216 = and i64 %3211, 4294967295
%3217 = add i64 %3216, 2147418112
%3218 = inttoptr i64 %3217 to i32*
store i32 %3215, i32* %3218
br label %instr_0x001CC9F0
instr_0x001CC9F0: ; preds = %instr_0x001CC9EC
%3219 = getelementptr i8* %ppu_state, i32 776
%3220 = bitcast i8* %3219 to i64*
%3221 = load i64* %3220, align 8
%3222 = add i64 %3221, 148
%3223 = getelementptr i8* %ppu_state, i32 840
%3224 = bitcast i8* %3223 to i32*
%3225 = load i32* %3224, align 8
%3226 = call i32 @llvm.bswap.i32(i32 %3225)
%3227 = and i64 %3222, 4294967295
%3228 = add i64 %3227, 2147418112
%3229 = inttoptr i64 %3228 to i32*
store i32 %3226, i32* %3229
br label %instr_0x001CC9F4
instr_0x001CC9F4: ; preds = %instr_0x001CC9F0
%3230 = getelementptr i8* %ppu_state, i32 992
%3231 = bitcast i8* %3230 to i64*
%3232 = load i64* %3231, align 8
%3233 = add i64 %3232, 60
%3234 = and i64 %3233, 4294967295
%3235 = add i64 %3234, 2147418112
%3236 = inttoptr i64 %3235 to i32*
%3237 = load i32* %3236
%3238 = call i32 @llvm.bswap.i32(i32 %3237)
%3239 = getelementptr i8* %ppu_state, i32 248
%3240 = bitcast i8* %3239 to double*
%3241 = bitcast i32 %3238 to float
%3242 = fpext float %3241 to double
store double %3242, double* %3240, align 8
br label %instr_0x001CC9F8
instr_0x001CC9F8: ; preds = %instr_0x001CC9F4
%3243 = getelementptr i8* %ppu_state, i32 776
%3244 = bitcast i8* %3243 to i64*
%3245 = load i64* %3244, align 8
%3246 = add i64 %3245, 136
%3247 = getelementptr i8* %ppu_state, i32 248
%3248 = bitcast i8* %3247 to double*
%3249 = load double* %3248, align 8
%3250 = fptrunc double %3249 to float
%3251 = bitcast float %3250 to i32
%3252 = call i32 @llvm.bswap.i32(i32 %3251)
%3253 = and i64 %3246, 4294967295
%3254 = add i64 %3253, 2147418112
%3255 = inttoptr i64 %3254 to i32*
store i32 %3252, i32* %3255
br label %instr_0x001CC9FC
instr_0x001CC9FC: ; preds = %instr_0x001CC9F8
%3256 = getelementptr i8* %ppu_state, i32 992
%3257 = bitcast i8* %3256 to i64*
%3258 = load i64* %3257, align 8
%3259 = add i64 %3258, 64
%3260 = and i64 %3259, 4294967295
%3261 = add i64 %3260, 2147418112
%3262 = inttoptr i64 %3261 to i32*
%3263 = load i32* %3262
%3264 = call i32 @llvm.bswap.i32(i32 %3263)
%3265 = getelementptr i8* %ppu_state, i32 248
%3266 = bitcast i8* %3265 to double*
%3267 = bitcast i32 %3264 to float
%3268 = fpext float %3267 to double
store double %3268, double* %3266, align 8
br label %instr_0x001CCA00
instr_0x001CCA00: ; preds = %instr_0x001CC9FC
%3269 = getelementptr i8* %ppu_state, i32 776
%3270 = bitcast i8* %3269 to i64*
%3271 = load i64* %3270, align 8
%3272 = add i64 %3271, 140
%3273 = getelementptr i8* %ppu_state, i32 248
%3274 = bitcast i8* %3273 to double*
%3275 = load double* %3274, align 8
%3276 = fptrunc double %3275 to float
%3277 = bitcast float %3276 to i32
%3278 = call i32 @llvm.bswap.i32(i32 %3277)
%3279 = and i64 %3272, 4294967295
%3280 = add i64 %3279, 2147418112
%3281 = inttoptr i64 %3280 to i32*
store i32 %3278, i32* %3281
br label %instr_0x001CCA04
instr_0x001CCA04: ; preds = %instr_0x001CCA00
%3282 = getelementptr i8* %ppu_state, i32 992
%3283 = bitcast i8* %3282 to i64*
%3284 = load i64* %3283, align 8
%3285 = add i64 %3284, 12
%3286 = and i64 %3285, 4294967295
%3287 = add i64 %3286, 2147418112
%3288 = inttoptr i64 %3287 to i32*
%3289 = load i32* %3288
%3290 = call i32 @llvm.bswap.i32(i32 %3289)
%3291 = zext i32 %3290 to i64
%3292 = getelementptr i8* %ppu_state, i32 768
%3293 = bitcast i8* %3292 to i64*
store i64 %3291, i64* %3293, align 8
br label %instr_0x001CCA08
instr_0x001CCA08: ; preds = %instr_0x001CCA04
%3294 = getelementptr i8* %ppu_state, i32 768
%3295 = bitcast i8* %3294 to i32*
%3296 = load i32* %3295, align 8
%3297 = sext i32 %3296 to i64
%3298 = getelementptr i8* %ppu_state, i32 768
%3299 = bitcast i8* %3298 to i64*
store i64 %3297, i64* %3299, align 8
br label %instr_0x001CCA0C
instr_0x001CCA0C: ; preds = %instr_0x001CCA08
%3300 = getelementptr i8* %ppu_state, i32 768
%3301 = bitcast i8* %3300 to i64*
%3302 = load i64* %3301, align 8
%3303 = and i64 %3302, 2047
%3304 = getelementptr i8* %ppu_state, i32 856
%3305 = bitcast i8* %3304 to i64*
store i64 %3303, i64* %3305, align 8
br label %instr_0x001CCA10
instr_0x001CCA10: ; preds = %instr_0x001CCA0C
%3306 = getelementptr i8* %ppu_state, i32 856
%3307 = bitcast i8* %3306 to i64*
%3308 = load i64* %3307, align 8
%3309 = icmp slt i64 %3308, 0
%3310 = icmp sgt i64 %3308, 0
%3311 = icmp eq i64 %3308, 0
%3312 = getelementptr i8* %ppu_state, i32 1540
%3313 = bitcast i8* %3312 to i32*
%3314 = load i32* %3313, align 4
%3315 = getelementptr i8* %ppu_state, i32 1544
%3316 = bitcast i8* %3315 to i64*
%3317 = load i64* %3316, align 8
%3318 = lshr i64 %3317, 31
%3319 = and i64 %3318, 1
%3320 = and i32 %3314, -16
%3321 = zext i1 %3309 to i32
%3322 = shl i32 %3321, 3
%3323 = or i32 %3320, %3322
%3324 = zext i1 %3310 to i32
%3325 = shl i32 %3324, 2
%3326 = or i32 %3323, %3325
%3327 = zext i1 %3311 to i32
%3328 = shl i32 %3327, 1
%3329 = or i32 %3326, %3328
%3330 = trunc i64 %3319 to i32
%3331 = or i32 %3329, %3330
%3332 = getelementptr i8* %ppu_state, i32 1540
%3333 = bitcast i8* %3332 to i32*
store i32 %3331, i32* %3333, align 4
br label %instr_0x001CCA14
instr_0x001CCA14: ; preds = %instr_0x001CCA10
%3334 = getelementptr i8* %ppu_state, i32 768
%3335 = bitcast i8* %3334 to i64*
%3336 = load i64* %3335, align 8
%3337 = zext i64 %3336 to i128
%3338 = shl i128 %3337, 64
%3339 = ashr i128 %3338, 53
%3340 = ashr i128 %3339, 64
%3341 = trunc i128 %3340 to i64
%3342 = getelementptr i8* %ppu_state, i32 840
%3343 = bitcast i8* %3342 to i64*
store i64 %3341, i64* %3343, align 8
%3344 = trunc i128 %3339 to i64
%3345 = icmp slt i64 %3341, 0
%3346 = icmp ne i64 %3344, 0
%3347 = and i1 %3345, %3346
%3348 = getelementptr i8* %ppu_state, i32 1544
%3349 = bitcast i8* %3348 to i64*
%3350 = load i64* %3349, align 8
%3351 = and i64 %3350, -536870913
%3352 = zext i1 %3347 to i64
%3353 = shl i64 %3352, 29
%3354 = or i64 %3351, %3353
%3355 = getelementptr i8* %ppu_state, i32 1544
%3356 = bitcast i8* %3355 to i64*
store i64 %3354, i64* %3356, align 8
br label %instr_0x001CCA18
instr_0x001CCA18: ; preds = %instr_0x001CCA14
%3357 = getelementptr i8* %ppu_state, i32 840
%3358 = bitcast i8* %3357 to i64*
%3359 = load i64* %3358, align 8
%3360 = add i64 %3359, 1
%3361 = getelementptr i8* %ppu_state, i32 840
%3362 = bitcast i8* %3361 to i64*
store i64 %3360, i64* %3362, align 8
br label %instr_0x001CCA1C
instr_0x001CCA1C: ; preds = %instr_0x001CCA18
%3363 = getelementptr i8* %ppu_state, i32 1576
%3364 = bitcast i8* %3363 to i64*
%3365 = load i64* %3364, align 8
%3366 = getelementptr i8* %ppu_state, i32 1540
%3367 = bitcast i8* %3366 to i32*
%3368 = load i32* %3367, align 4
%3369 = lshr i32 %3368, 1
%3370 = and i32 %3369, 1
%3371 = trunc i32 %3370 to i1
br i1 %3371, label %instr_0x001CCA30, label %instr_0x001CCA20
instr_0x001CCA20: ; preds = %instr_0x001CCA1C
%3372 = getelementptr i8* %ppu_state, i32 840
%3373 = bitcast i8* %3372 to i64*
%3374 = load i64* %3373, align 8
%3375 = icmp ult i64 %3374, 2
%3376 = icmp ugt i64 %3374, 2
%3377 = icmp eq i64 %3374, 2
%3378 = getelementptr i8* %ppu_state, i32 1540
%3379 = bitcast i8* %3378 to i32*
%3380 = load i32* %3379, align 4
%3381 = getelementptr i8* %ppu_state, i32 1544
%3382 = bitcast i8* %3381 to i64*
%3383 = load i64* %3382, align 8
%3384 = lshr i64 %3383, 31
%3385 = and i64 %3384, 1
%3386 = and i32 %3380, -16
%3387 = zext i1 %3375 to i32
%3388 = shl i32 %3387, 3
%3389 = or i32 %3386, %3388
%3390 = zext i1 %3376 to i32
%3391 = shl i32 %3390, 2
%3392 = or i32 %3389, %3391
%3393 = zext i1 %3377 to i32
%3394 = shl i32 %3393, 1
%3395 = or i32 %3392, %3394
%3396 = trunc i64 %3385 to i32
%3397 = or i32 %3395, %3396
%3398 = getelementptr i8* %ppu_state, i32 1540
%3399 = bitcast i8* %3398 to i32*
store i32 %3397, i32* %3399, align 4
br label %instr_0x001CCA24
instr_0x001CCA24: ; preds = %instr_0x001CCA20
%3400 = getelementptr i8* %ppu_state, i32 1576
%3401 = bitcast i8* %3400 to i64*
%3402 = load i64* %3401, align 8
%3403 = getelementptr i8* %ppu_state, i32 1540
%3404 = bitcast i8* %3403 to i32*
%3405 = load i32* %3404, align 4
%3406 = lshr i32 %3405, 3
%3407 = and i32 %3406, 1
%3408 = trunc i32 %3407 to i1
br i1 %3408, label %instr_0x001CCA30, label %instr_0x001CCA28
instr_0x001CCA28: ; preds = %instr_0x001CCA24
%3409 = getelementptr i8* %ppu_state, i32 768
%3410 = bitcast i8* %3409 to i64*
%3411 = load i64* %3410, align 8
%3412 = getelementptr i8* %ppu_state, i32 856
%3413 = bitcast i8* %3412 to i64*
%3414 = load i64* %3413, align 8
%3415 = xor i64 %3411, %3414
%3416 = getelementptr i8* %ppu_state, i32 768
%3417 = bitcast i8* %3416 to i64*
store i64 %3415, i64* %3417, align 8
br label %instr_0x001CCA2C
instr_0x001CCA2C: ; preds = %instr_0x001CCA28
%3418 = getelementptr i8* %ppu_state, i32 768
%3419 = bitcast i8* %3418 to i64*
%3420 = load i64* %3419, align 8
%3421 = or i64 %3420, 2048
%3422 = getelementptr i8* %ppu_state, i32 768
%3423 = bitcast i8* %3422 to i64*
store i64 %3421, i64* %3423, align 8
br label %instr_0x001CCA30
instr_0x001CCA30: ; preds = %instr_0x001CCA2C, %instr_0x001CCA24, %instr_0x001CCA1C
%3424 = getelementptr i8* %ppu_state, i32 776
%3425 = bitcast i8* %3424 to i64*
%3426 = load i64* %3425, align 8
%3427 = add i64 %3426, 160
%3428 = getelementptr i8* %ppu_state, i32 768
%3429 = bitcast i8* %3428 to i64*
%3430 = load i64* %3429, align 8
%3431 = call i64 @llvm.bswap.i64(i64 %3430)
%3432 = and i64 %3427, 4294967295
%3433 = add i64 %3432, 2147418112
%3434 = inttoptr i64 %3433 to i64*
store i64 %3431, i64* %3434
br label %instr_0x001CCA34
instr_0x001CCA34: ; preds = %instr_0x001CCA30
%3435 = getelementptr i8* %ppu_state, i32 776
%3436 = bitcast i8* %3435 to i64*
%3437 = load i64* %3436, align 8
%3438 = add i64 %3437, 160
%3439 = and i64 %3438, 4294967295
%3440 = add i64 %3439, 2147418112
%3441 = inttoptr i64 %3440 to i64*
%3442 = load i64* %3441
%3443 = call i64 @llvm.bswap.i64(i64 %3442)
%3444 = getelementptr i8* %ppu_state, i32 456
%3445 = bitcast i8* %3444 to double*
%3446 = bitcast i64 %3443 to double
store double %3446, double* %3445, align 8
br label %instr_0x001CCA38
instr_0x001CCA38: ; preds = %instr_0x001CCA34
%3447 = getelementptr i8* %ppu_state, i32 456
%3448 = bitcast i8* %3447 to i64*
%3449 = load i64* %3448, align 8
%3450 = sitofp i64 %3449 to double
%3451 = getelementptr i8* %ppu_state, i32 456
%3452 = bitcast i8* %3451 to double*
store double %3450, double* %3452, align 8
br label %instr_0x001CCA3C
instr_0x001CCA3C: ; preds = %instr_0x001CCA38
%3453 = getelementptr i8* %ppu_state, i32 456
%3454 = bitcast i8* %3453 to double*
%3455 = load double* %3454, align 8
%3456 = fptrunc double %3455 to float
%3457 = fpext float %3456 to double
%3458 = getelementptr i8* %ppu_state, i32 248
%3459 = bitcast i8* %3458 to double*
store double %3457, double* %3459, align 8
br label %instr_0x001CCA40
instr_0x001CCA40: ; preds = %instr_0x001CCA3C
%3460 = getelementptr i8* %ppu_state, i32 776
%3461 = bitcast i8* %3460 to i64*
%3462 = load i64* %3461, align 8
%3463 = add i64 %3462, 144
%3464 = getelementptr i8* %ppu_state, i32 248
%3465 = bitcast i8* %3464 to double*
%3466 = load double* %3465, align 8
%3467 = fptrunc double %3466 to float
%3468 = bitcast float %3467 to i32
%3469 = call i32 @llvm.bswap.i32(i32 %3468)
%3470 = and i64 %3463, 4294967295
%3471 = add i64 %3470, 2147418112
%3472 = inttoptr i64 %3471 to i32*
store i32 %3469, i32* %3472
br label %instr_0x001CCA44
instr_0x001CCA44: ; preds = %instr_0x001CCA40
%3473 = getelementptr i8* %ppu_state, i32 784
%3474 = bitcast i8* %3473 to i64*
%3475 = load i64* %3474, align 8
%3476 = add i64 %3475, -14088
%3477 = and i64 %3476, 4294967295
%3478 = add i64 %3477, 2147418112
%3479 = inttoptr i64 %3478 to i32*
%3480 = load i32* %3479
%3481 = call i32 @llvm.bswap.i32(i32 %3480)
%3482 = zext i32 %3481 to i64
%3483 = getelementptr i8* %ppu_state, i32 840
%3484 = bitcast i8* %3483 to i64*
store i64 %3482, i64* %3484, align 8
br label %instr_0x001CCA48
instr_0x001CCA48: ; preds = %instr_0x001CCA44
%3485 = getelementptr i8* %ppu_state, i32 840
%3486 = bitcast i8* %3485 to i64*
%3487 = load i64* %3486, align 8
%3488 = add i64 %3487, 0
%3489 = and i64 %3488, 4294967295
%3490 = add i64 %3489, 2147418112
%3491 = inttoptr i64 %3490 to i32*
%3492 = load i32* %3491
%3493 = call i32 @llvm.bswap.i32(i32 %3492)
%3494 = zext i32 %3493 to i64
%3495 = getelementptr i8* %ppu_state, i32 792
%3496 = bitcast i8* %3495 to i64*
store i64 %3494, i64* %3496, align 8
br label %instr_0x001CCA4C
instr_0x001CCA4C: ; preds = %instr_0x001CCA48
%3497 = getelementptr i8* %ppu_state, i32 1016
%3498 = bitcast i8* %3497 to i64*
%3499 = load i64* %3498, align 8
%3500 = add i64 %3499, 272
%3501 = and i64 %3500, 4294967295
%3502 = add i64 %3501, 2147418112
%3503 = inttoptr i64 %3502 to i32*
%3504 = load i32* %3503
%3505 = call i32 @llvm.bswap.i32(i32 %3504)
%3506 = zext i32 %3505 to i64
%3507 = getelementptr i8* %ppu_state, i32 800
%3508 = bitcast i8* %3507 to i64*
store i64 %3506, i64* %3508, align 8
br label %instr_0x001CCA50
instr_0x001CCA50: ; preds = %instr_0x001CCA4C
%3509 = getelementptr i8* %ppu_state, i32 776
%3510 = bitcast i8* %3509 to i64*
%3511 = load i64* %3510, align 8
%3512 = add i64 %3511, 136
%3513 = getelementptr i8* %ppu_state, i32 808
%3514 = bitcast i8* %3513 to i64*
store i64 %3512, i64* %3514, align 8
br label %instr_0x001CCA54
instr_0x001CCA54: ; preds = %instr_0x001CCA50
%3515 = getelementptr i8* %ppu_state, i32 1568
%3516 = bitcast i8* %3515 to i64*
store i64 1886808, i64* %3516, align 8
%3517 = getelementptr i8* %ppu_state, i32 1664
%3518 = bitcast i8* %3517 to i32*
store i32 2075008, i32* %3518, align 4
%3519 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CCA58
instr_0x001CCA58: ; preds = %instr_0x001CCA54
%3520 = getelementptr i8* %ppu_state, i32 768
%3521 = bitcast i8* %3520 to i64*
%3522 = load i64* %3521, align 8
%3523 = getelementptr i8* %ppu_state, i32 768
%3524 = bitcast i8* %3523 to i64*
store i64 %3522, i64* %3524, align 8
br label %instr_0x001CCA5C
instr_0x001CCA5C: ; preds = %instr_0x001CCA58, %instr_0x001CC888, %instr_0x001CC868
%3525 = getelementptr i8* %ppu_state, i32 784
%3526 = bitcast i8* %3525 to i64*
%3527 = load i64* %3526, align 8
%3528 = add i64 %3527, -14088
%3529 = and i64 %3528, 4294967295
%3530 = add i64 %3529, 2147418112
%3531 = inttoptr i64 %3530 to i32*
%3532 = load i32* %3531
%3533 = call i32 @llvm.bswap.i32(i32 %3532)
%3534 = zext i32 %3533 to i64
%3535 = getelementptr i8* %ppu_state, i32 840
%3536 = bitcast i8* %3535 to i64*
store i64 %3534, i64* %3536, align 8
br label %instr_0x001CCA60
instr_0x001CCA60: ; preds = %instr_0x001CCA5C
%3537 = getelementptr i8* %ppu_state, i32 840
%3538 = bitcast i8* %3537 to i64*
%3539 = load i64* %3538, align 8
%3540 = add i64 %3539, 0
%3541 = and i64 %3540, 4294967295
%3542 = add i64 %3541, 2147418112
%3543 = inttoptr i64 %3542 to i32*
%3544 = load i32* %3543
%3545 = call i32 @llvm.bswap.i32(i32 %3544)
%3546 = zext i32 %3545 to i64
%3547 = getelementptr i8* %ppu_state, i32 792
%3548 = bitcast i8* %3547 to i64*
store i64 %3546, i64* %3548, align 8
br label %instr_0x001CCA64
instr_0x001CCA64: ; preds = %instr_0x001CCA60
%3549 = getelementptr i8* %ppu_state, i32 952
%3550 = bitcast i8* %3549 to i64*
%3551 = load i64* %3550, align 8
%3552 = and i64 %3551, 255
%3553 = getelementptr i8* %ppu_state, i32 800
%3554 = bitcast i8* %3553 to i64*
store i64 %3552, i64* %3554, align 8
br label %instr_0x001CCA68
instr_0x001CCA68: ; preds = %instr_0x001CCA64
%3555 = getelementptr i8* %ppu_state, i32 808
%3556 = bitcast i8* %3555 to i64*
store i64 0, i64* %3556, align 8
br label %instr_0x001CCA6C
instr_0x001CCA6C: ; preds = %instr_0x001CCA68
%3557 = getelementptr i8* %ppu_state, i32 960
%3558 = bitcast i8* %3557 to i64*
%3559 = load i64* %3558, align 8
%3560 = and i64 %3559, 4294967295
%3561 = getelementptr i8* %ppu_state, i32 816
%3562 = bitcast i8* %3561 to i64*
store i64 %3560, i64* %3562, align 8
br label %instr_0x001CCA70
instr_0x001CCA70: ; preds = %instr_0x001CCA6C
%3563 = getelementptr i8* %ppu_state, i32 1568
%3564 = bitcast i8* %3563 to i64*
store i64 1886836, i64* %3564, align 8
%3565 = getelementptr i8* %ppu_state, i32 1664
%3566 = bitcast i8* %3565 to i32*
store i32 2050328, i32* %3566, align 4
%3567 = call i32 @execute_unknown_function(i8* %ppu_state, i64 0)
br label %instr_0x001CCA74
instr_0x001CCA74: ; preds = %instr_0x001CCA70
%3568 = getelementptr i8* %ppu_state, i32 768
%3569 = bitcast i8* %3568 to i64*
%3570 = load i64* %3569, align 8
%3571 = getelementptr i8* %ppu_state, i32 768
%3572 = bitcast i8* %3571 to i64*
store i64 %3570, i64* %3572, align 8
br label %instr_0x001CCA78
instr_0x001CCA78: ; preds = %instr_0x001CCA74, %instr_0x001CC850, %instr_0x001CC7A8
%3573 = getelementptr i8* %ppu_state, i32 776
%3574 = bitcast i8* %3573 to i64*
%3575 = load i64* %3574, align 8
%3576 = add i64 %3575, 272
%3577 = and i64 %3576, 4294967295
%3578 = add i64 %3577, 2147418112
%3579 = inttoptr i64 %3578 to i64*
%3580 = load i64* %3579
%3581 = call i64 @llvm.bswap.i64(i64 %3580)
%3582 = getelementptr i8* %ppu_state, i32 768
%3583 = bitcast i8* %3582 to i64*
store i64 %3581, i64* %3583, align 8
br label %instr_0x001CCA7C
instr_0x001CCA7C: ; preds = %instr_0x001CCA78
%3584 = getelementptr i8* %ppu_state, i32 768
%3585 = bitcast i8* %3584 to i64*
%3586 = load i64* %3585, align 8
%3587 = getelementptr i8* %ppu_state, i32 1568
%3588 = bitcast i8* %3587 to i64*
store i64 %3586, i64* %3588, align 8
br label %instr_0x001CCA80
instr_0x001CCA80: ; preds = %instr_0x001CCA7C
%3589 = getelementptr i8* %ppu_state, i32 776
%3590 = bitcast i8* %3589 to i64*
%3591 = load i64* %3590, align 8
%3592 = add i64 %3591, 184
%3593 = and i64 %3592, 4294967295
%3594 = add i64 %3593, 2147418112
%3595 = inttoptr i64 %3594 to i64*
%3596 = load i64* %3595
%3597 = call i64 @llvm.bswap.i64(i64 %3596)
%3598 = getelementptr i8* %ppu_state, i32 952
%3599 = bitcast i8* %3598 to i64*
store i64 %3597, i64* %3599, align 8
br label %instr_0x001CCA84
instr_0x001CCA84: ; preds = %instr_0x001CCA80
%3600 = getelementptr i8* %ppu_state, i32 776
%3601 = bitcast i8* %3600 to i64*
%3602 = load i64* %3601, align 8
%3603 = add i64 %3602, 192
%3604 = and i64 %3603, 4294967295
%3605 = add i64 %3604, 2147418112
%3606 = inttoptr i64 %3605 to i64*
%3607 = load i64* %3606
%3608 = call i64 @llvm.bswap.i64(i64 %3607)
%3609 = getelementptr i8* %ppu_state, i32 960
%3610 = bitcast i8* %3609 to i64*
store i64 %3608, i64* %3610, align 8
br label %instr_0x001CCA88
instr_0x001CCA88: ; preds = %instr_0x001CCA84
%3611 = getelementptr i8* %ppu_state, i32 776
%3612 = bitcast i8* %3611 to i64*
%3613 = load i64* %3612, align 8
%3614 = add i64 %3613, 200
%3615 = and i64 %3614, 4294967295
%3616 = add i64 %3615, 2147418112
%3617 = inttoptr i64 %3616 to i64*
%3618 = load i64* %3617
%3619 = call i64 @llvm.bswap.i64(i64 %3618)
%3620 = getelementptr i8* %ppu_state, i32 968
%3621 = bitcast i8* %3620 to i64*
store i64 %3619, i64* %3621, align 8
br label %instr_0x001CCA8C
instr_0x001CCA8C: ; preds = %instr_0x001CCA88
%3622 = getelementptr i8* %ppu_state, i32 776
%3623 = bitcast i8* %3622 to i64*
%3624 = load i64* %3623, align 8
%3625 = add i64 %3624, 208
%3626 = and i64 %3625, 4294967295
%3627 = add i64 %3626, 2147418112
%3628 = inttoptr i64 %3627 to i64*
%3629 = load i64* %3628
%3630 = call i64 @llvm.bswap.i64(i64 %3629)
%3631 = getelementptr i8* %ppu_state, i32 976
%3632 = bitcast i8* %3631 to i64*
store i64 %3630, i64* %3632, align 8
br label %instr_0x001CCA90
instr_0x001CCA90: ; preds = %instr_0x001CCA8C
%3633 = getelementptr i8* %ppu_state, i32 776
%3634 = bitcast i8* %3633 to i64*
%3635 = load i64* %3634, align 8
%3636 = add i64 %3635, 216
%3637 = and i64 %3636, 4294967295
%3638 = add i64 %3637, 2147418112
%3639 = inttoptr i64 %3638 to i64*
%3640 = load i64* %3639
%3641 = call i64 @llvm.bswap.i64(i64 %3640)
%3642 = getelementptr i8* %ppu_state, i32 984
%3643 = bitcast i8* %3642 to i64*
store i64 %3641, i64* %3643, align 8
br label %instr_0x001CCA94
instr_0x001CCA94: ; preds = %instr_0x001CCA90
%3644 = getelementptr i8* %ppu_state, i32 776
%3645 = bitcast i8* %3644 to i64*
%3646 = load i64* %3645, align 8
%3647 = add i64 %3646, 224
%3648 = and i64 %3647, 4294967295
%3649 = add i64 %3648, 2147418112
%3650 = inttoptr i64 %3649 to i64*
%3651 = load i64* %3650
%3652 = call i64 @llvm.bswap.i64(i64 %3651)
%3653 = getelementptr i8* %ppu_state, i32 992
%3654 = bitcast i8* %3653 to i64*
store i64 %3652, i64* %3654, align 8
br label %instr_0x001CCA98
instr_0x001CCA98: ; preds = %instr_0x001CCA94
%3655 = getelementptr i8* %ppu_state, i32 776
%3656 = bitcast i8* %3655 to i64*
%3657 = load i64* %3656, align 8
%3658 = add i64 %3657, 232
%3659 = and i64 %3658, 4294967295
%3660 = add i64 %3659, 2147418112
%3661 = inttoptr i64 %3660 to i64*
%3662 = load i64* %3661
%3663 = call i64 @llvm.bswap.i64(i64 %3662)
%3664 = getelementptr i8* %ppu_state, i32 1000
%3665 = bitcast i8* %3664 to i64*
store i64 %3663, i64* %3665, align 8
br label %instr_0x001CCA9C
instr_0x001CCA9C: ; preds = %instr_0x001CCA98
%3666 = getelementptr i8* %ppu_state, i32 776
%3667 = bitcast i8* %3666 to i64*
%3668 = load i64* %3667, align 8
%3669 = add i64 %3668, 240
%3670 = and i64 %3669, 4294967295
%3671 = add i64 %3670, 2147418112
%3672 = inttoptr i64 %3671 to i64*
%3673 = load i64* %3672
%3674 = call i64 @llvm.bswap.i64(i64 %3673)
%3675 = getelementptr i8* %ppu_state, i32 1008
%3676 = bitcast i8* %3675 to i64*
store i64 %3674, i64* %3676, align 8
br label %instr_0x001CCAA0
instr_0x001CCAA0: ; preds = %instr_0x001CCA9C
%3677 = getelementptr i8* %ppu_state, i32 776
%3678 = bitcast i8* %3677 to i64*
%3679 = load i64* %3678, align 8
%3680 = add i64 %3679, 248
%3681 = and i64 %3680, 4294967295
%3682 = add i64 %3681, 2147418112
%3683 = inttoptr i64 %3682 to i64*
%3684 = load i64* %3683
%3685 = call i64 @llvm.bswap.i64(i64 %3684)
%3686 = getelementptr i8* %ppu_state, i32 1016
%3687 = bitcast i8* %3686 to i64*
store i64 %3685, i64* %3687, align 8
br label %instr_0x001CCAA4
instr_0x001CCAA4: ; preds = %instr_0x001CCAA0
%3688 = getelementptr i8* %ppu_state, i32 776
%3689 = bitcast i8* %3688 to i64*
%3690 = load i64* %3689, align 8
%3691 = add i64 %3690, 256
%3692 = getelementptr i8* %ppu_state, i32 776
%3693 = bitcast i8* %3692 to i64*
store i64 %3691, i64* %3693, align 8
br label %instr_0x001CCAA8
instr_0x001CCAA8: ; preds = %instr_0x001CCAA4
%3694 = getelementptr i8* %ppu_state, i32 1568
%3695 = bitcast i8* %3694 to i64*
%3696 = load i64* %3695, align 8
%3697 = and i64 %3696, -4
%3698 = trunc i64 %3697 to i32
%3699 = getelementptr i8* %ppu_state, i32 1576
%3700 = bitcast i8* %3699 to i64*
%3701 = load i64* %3700, align 8
%3702 = getelementptr i8* %ppu_state, i32 1664
%3703 = bitcast i8* %3702 to i32*
store i32 %3698, i32* %3703, align 4
ret i32 0
}
; Function Attrs: nounwind readnone
declare i32 @llvm.bswap.i32(i32) #0
; Function Attrs: nounwind readnone
declare i64 @llvm.bswap.i64(i64) #0
; Function Attrs: nounwind readnone
declare { i64, i1 } @llvm.uadd.with.overflow.i64(i64, i64) #0
; Function Attrs: nounwind readnone
declare i16 @llvm.bswap.i16(i16) #0
attributes #0 = { nounwind readnone }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment