Skip to content

Instantly share code, notes, and snippets.

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