-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathmojo.kext.S
1580 lines (1580 loc) · 65.4 KB
/
mojo.kext.S
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
0xffffff7f92f2ca16: pushq %rbp
0xffffff7f92f2ca17: movq %rsp, %rbp
0xffffff7f92f2ca1a: pushq %r14
0xffffff7f92f2ca1c: pushq %rbx
0xffffff7f92f2ca1d: subq $0x70, %rsp
0xffffff7f92f2ca21: movq 0x15e0(%rip), %r14
0xffffff7f92f2ca28: movq (%r14), %r14
0xffffff7f92f2ca2b: movq %r14, -0x18(%rbp)
0xffffff7f92f2ca2f: leaq 0x13b2(%rip), %rdi
0xffffff7f92f2ca36: leaq -0x70(%rbp), %rsi
0xffffff7f92f2ca3a: movl $0x50, %edx
0xffffff7f92f2ca3f: callq 0xffffff800f917f20 ; PE_parse_boot_argn at bootargs.c:191
0xffffff7f92f2ca44: testl %eax, %eax
0xffffff7f92f2ca46: je 0xffffff7f92f2ca9e
0xffffff7f92f2ca48: leaq 0x13a8(%rip), %rsi
0xffffff7f92f2ca4f: leaq -0x70(%rbp), %rdi
0xffffff7f92f2ca53: movl $0x50, %edx
0xffffff7f92f2ca58: callq 0xffffff800f3c02c0 ; strncmp at subrs.c:198
0xffffff7f92f2ca5d: testl %eax, %eax
0xffffff7f92f2ca5f: je 0xffffff7f92f2ca7c
0xffffff7f92f2ca61: leaq 0x1394(%rip), %rsi
0xffffff7f92f2ca68: leaq -0x70(%rbp), %rdi
0xffffff7f92f2ca6c: movl $0x50, %edx
0xffffff7f92f2ca71: callq 0xffffff800f3c02c0 ; strncmp at subrs.c:198
0xffffff7f92f2ca76: xorl %ebx, %ebx
0xffffff7f92f2ca78: testl %eax, %eax
0xffffff7f92f2ca7a: jne 0xffffff7f92f2ca81
0xffffff7f92f2ca7c: movl $0x1, %ebx ; xref 0xffffff7f92f2ca5f
0xffffff7f92f2ca81: leaq 0x137a(%rip), %rsi
0xffffff7f92f2ca88: leaq -0x70(%rbp), %rdi
0xffffff7f92f2ca8c: movl $0x50, %edx
0xffffff7f92f2ca91: callq 0xffffff800f3c02c0 ; strncmp at subrs.c:198
0xffffff7f92f2ca96: testl %eax, %eax
0xffffff7f92f2ca98: je 0xffffff7f92f2caae
0xffffff7f92f2ca9a: testl %ebx, %ebx
0xffffff7f92f2ca9c: jne 0xffffff7f92f2cab8
0xffffff7f92f2ca9e: leaq 0x1363(%rip), %rdi ; xref 0xffffff7f92f2ca46
0xffffff7f92f2caa5: xorl %eax, %eax
0xffffff7f92f2caa7: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2caac: jmp 0xffffff7f92f2cb05
0xffffff7f92f2caae: movl $0x1, 0x1fb8(%rip)
0xffffff7f92f2cab8: leaq 0x5c(%rip), %rdi
0xffffff7f92f2cabf: xorl %esi, %esi
0xffffff7f92f2cac1: callq 0xffffff800f40cee0 ; kdp_register_callout at kdp_machdep.c:710
0xffffff7f92f2cac6: leaq 0x1008(%rip), %rdi
0xffffff7f92f2cacd: leaq 0x1073(%rip), %rsi
0xffffff7f92f2cad4: callq 0xffffff800f2bf1f0 ; kdp_register_send_receive at kdp_udp.c:418
0xffffff7f92f2cad9: movb $0x6b, -0x80(%rbp) ;
0xffffff7f92f2cadd: movb $0x64, -0x7f(%rbp) ;
0xffffff7f92f2cae1: movb $0x70, -0x7e(%rbp) ; imm MAC = 6b:64:70:6d:6a:6f
0xffffff7f92f2cae5: movb $0x6d, -0x7d(%rbp) ;
0xffffff7f92f2cae9: movb $0x6a, -0x7c(%rbp) ;
0xffffff7f92f2caed: movb $0x6f, -0x7b(%rbp) ;
0xffffff7f92f2caf1: movl $0x100007f, -0x78(%rbp) ; imm = 0x100007F, IP = 16.0.0.63
0xffffff7f92f2caf8: leaq -0x78(%rbp), %rdi
0xffffff7f92f2cafc: leaq -0x80(%rbp), %rsi
0xffffff7f92f2cb00: callq 0xffffff800f2bf4b0 ; kdp_set_ip_and_mac_addresses at kdp_udp.c:736
0xffffff7f92f2cb05: cmpq -0x18(%rbp), %r14
0xffffff7f92f2cb09: jne 0xffffff7f92f2cb16
0xffffff7f92f2cb0b: xorl %eax, %eax
0xffffff7f92f2cb0d: addq $0x70, %rsp
0xffffff7f92f2cb11: popq %rbx
0xffffff7f92f2cb12: popq %r14
0xffffff7f92f2cb14: popq %rbp
0xffffff7f92f2cb15: retq
0xffffff7f92f2cb16: callq 0xffffff800f2b5cb0 ; __stack_chk_fail at stack_protector.c:36
0xffffff7f92f2cb1b: cmpl $0x1, %esi
0xffffff7f92f2cb1e: jne 0xffffff7f92f2cb3e
0xffffff7f92f2cb20: movl 0x1e62(%rip), %eax
0xffffff7f92f2cb26: testl %eax, %eax
0xffffff7f92f2cb28: jne 0xffffff7f92f2cb3e
0xffffff7f92f2cb2a: pushq %rbp
0xffffff7f92f2cb2b: movq %rsp, %rbp
0xffffff7f92f2cb2e: callq 0xffffff7f92f2cbfc
0xffffff7f92f2cb33: movl $0x1, 0x1e4b(%rip)
0xffffff7f92f2cb3d: popq %rbp
0xffffff7f92f2cb3e: retq
0xffffff7f92f2cb3f: pushq %rbp
0xffffff7f92f2cb40: movq %rsp, %rbp
0xffffff7f92f2cb43: xorl %eax, %eax
0xffffff7f92f2cb45: popq %rbp
0xffffff7f92f2cb46: retq
0xffffff7f92f2cb47: pushq %rbp
0xffffff7f92f2cb48: movq %rsp, %rbp
0xffffff7f92f2cb4b: cmpl $0x0, 0x1f1e(%rip)
0xffffff7f92f2cb52: jne 0xffffff7f92f2cb6a
0xffffff7f92f2cb54: leaq 0x1f45(%rip), %rdi
0xffffff7f92f2cb5b: callq 0xffffff7f92f2d1c8
0xffffff7f92f2cb60: movl %eax, 0x1f0e(%rip)
0xffffff7f92f2cb66: testl %eax, %eax
0xffffff7f92f2cb68: jne 0xffffff7f92f2cb76
0xffffff7f92f2cb6a: leaq 0x1f2f(%rip), %rdi
0xffffff7f92f2cb71: callq 0xffffff7f92f2cd17
0xffffff7f92f2cb76: movl 0x1f24(%rip), %esi
0xffffff7f92f2cb7c: leaq 0x12a7(%rip), %rdi
0xffffff7f92f2cb83: xorl %eax, %eax
0xffffff7f92f2cb85: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cb8a: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2cb8f: movl $0x5a, %esi
0xffffff7f92f2cb94: callq 0xffffff7f92f2d4c4
0xffffff7f92f2cb99: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2cb9e: callq 0xffffff7f92f2d49f
0xffffff7f92f2cba3: movzbl %al, %eax
0xffffff7f92f2cba6: cmpl $0x5a, %eax
0xffffff7f92f2cba9: je 0xffffff7f92f2cbb9 ; xref 0xffffff7f92f2cbb9 (debug disabled, jump)
0xffffff7f92f2cbab: leaq 0x12a8(%rip), %rdi ; LoadEffectiveAddresssQWord RIP - 0x12a8 = Kernel / User boundry (0x7FFFFFFFFFFFFFFF) - Mirror, (Second Indirection), reflects across address -80 - border - +80
0xffffff7f92f2cbb2: xorl %eax, %eax
0xffffff7f92f2cbb4: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cbb9: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2cbbe: movl $0xa5, %esi
0xffffff7f92f2cbc3: callq 0xffffff7f92f2d4c4
0xffffff7f92f2cbc8: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2cbcd: callq 0xffffff7f92f2d49f
0xffffff7f92f2cbd2: movzbl %al, %eax
0xffffff7f92f2cbd5: cmpl $0xa5, %eax
0xffffff7f92f2cbda: je 0xffffff7f92f2cbea ; if debugging enabled, kprintf, or jump to 0xffffff7f92f2cbea
0xffffff7f92f2cbdc: leaq 0x128c(%rip), %rdi ; stack = kprintf
0xffffff7f92f2cbe3: xorl %eax, %eax
0xffffff7f92f2cbe5: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cbea: callq 0xffffff800f919e60 ; serial_init at pe_serial.c:372
0xffffff7f92f2cbef: testl %eax, %eax
0xffffff7f92f2cbf1: sete %al
0xffffff7f92f2cbf4: movzbl %al, %eax
0xffffff7f92f2cbf7: leal (%rax,%rax,4), %eax
0xffffff7f92f2cbfa: popq %rbp
0xffffff7f92f2cbfb: retq
0xffffff7f92f2cbfc: cmpl $0x0, 0x1e9d(%rip)
0xffffff7f92f2cc03: je 0xffffff7f92f2cc19
0xffffff7f92f2cc05: pushq %rbp
0xffffff7f92f2cc06: movq %rsp, %rbp
0xffffff7f92f2cc09: cmpl $0x0, 0x1e64(%rip)
0xffffff7f92f2cc10: je 0xffffff7f92f2cc1a
0xffffff7f92f2cc12: callq 0xffffff7f92f2d122
0xffffff7f92f2cc17: jmp 0xffffff7f92f2cc1f
0xffffff7f92f2cc19: retq
0xffffff7f92f2cc1a: callq 0xffffff7f92f2cc38
0xffffff7f92f2cc1f: movl $0x0, 0x1e77(%rip)
0xffffff7f92f2cc29: leaq 0x1254(%rip), %rdi
0xffffff7f92f2cc30: xorl %eax, %eax
0xffffff7f92f2cc32: popq %rbp
0xffffff7f92f2cc33: jmp 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cc38: pushq %rbp
0xffffff7f92f2cc39: movq %rsp, %rbp
0xffffff7f92f2cc3c: pushq %rbx
0xffffff7f92f2cc3d: pushq %rax
0xffffff7f92f2cc3e: movb $0x0, -0x9(%rbp)
0xffffff7f92f2cc42: leaq -0x9(%rbp), %rdx
0xffffff7f92f2cc46: movl $0x7a444247, %edi ; imm = 0x7A444247
0xffffff7f92f2cc4b: movl $0x1, %esi
0xffffff7f92f2cc50: callq 0xffffff7f92f2d03a
0xffffff7f92f2cc55: xorl %ebx, %ebx
0xffffff7f92f2cc57: testl %eax, %eax
0xffffff7f92f2cc59: je 0xffffff7f92f2cc7a
0xffffff7f92f2cc5b: movb $0x0, -0x9(%rbp)
0xffffff7f92f2cc5f: leaq -0x9(%rbp), %rdx
0xffffff7f92f2cc63: movl $0x5343494c, %edi ; imm = 0x5343494C
0xffffff7f92f2cc68: movl $0x1, %esi
0xffffff7f92f2cc6d: callq 0xffffff7f92f2d03a
0xffffff7f92f2cc72: testl %eax, %eax
0xffffff7f92f2cc74: setne %al
0xffffff7f92f2cc77: movzbl %al, %ebx
0xffffff7f92f2cc7a: leaq 0x121b(%rip), %rdi
0xffffff7f92f2cc81: xorl %eax, %eax
0xffffff7f92f2cc83: movl %ebx, %esi
0xffffff7f92f2cc85: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cc8a: movl %ebx, %eax
0xffffff7f92f2cc8c: addq $0x8, %rsp
0xffffff7f92f2cc90: popq %rbx
0xffffff7f92f2cc91: popq %rbp
0xffffff7f92f2cc92: retq
0xffffff7f92f2cc93: pushq %rbp
0xffffff7f92f2cc94: movq %rsp, %rbp
0xffffff7f92f2cc97: pushq %rbx
0xffffff7f92f2cc98: pushq %rax
0xffffff7f92f2cc99: movb $0x2, -0x9(%rbp)
0xffffff7f92f2cc9d: leaq -0x9(%rbp), %rdx
0xffffff7f92f2cca1: movl $0x7a444247, %edi ; imm = 0x7A444247
0xffffff7f92f2cca6: movl $0x1, %esi
0xffffff7f92f2ccab: callq 0xffffff7f92f2d03a
0xffffff7f92f2ccb0: testl %eax, %eax
0xffffff7f92f2ccb2: setne %al
0xffffff7f92f2ccb5: movzbl %al, %ebx
0xffffff7f92f2ccb8: leaq 0x11f2(%rip), %rdi
0xffffff7f92f2ccbf: xorl %eax, %eax
0xffffff7f92f2ccc1: movl %ebx, %esi
0xffffff7f92f2ccc3: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2ccc8: movl %ebx, %eax
0xffffff7f92f2ccca: addq $0x8, %rsp
0xffffff7f92f2ccce: popq %rbx
0xffffff7f92f2cccf: popq %rbp
0xffffff7f92f2ccd0: retq
0xffffff7f92f2ccd1: pushq %rbp
0xffffff7f92f2ccd2: movq %rsp, %rbp
0xffffff7f92f2ccd5: pushq %rbx
0xffffff7f92f2ccd6: pushq %rax
0xffffff7f92f2ccd7: movb %dil, -0x9(%rbp)
0xffffff7f92f2ccdb: leaq -0x9(%rbp), %rdx
0xffffff7f92f2ccdf: movl $0x5343494c, %edi ; imm = 0x5343494C
0xffffff7f92f2cce4: movl $0x1, %esi
0xffffff7f92f2cce9: callq 0xffffff7f92f2d03a
0xffffff7f92f2ccee: xorl %ebx, %ebx
0xffffff7f92f2ccf0: testl %eax, %eax
0xffffff7f92f2ccf2: je 0xffffff7f92f2ccfe
0xffffff7f92f2ccf4: callq 0xffffff7f92f2d38f
0xffffff7f92f2ccf9: movl $0x1, %ebx
0xffffff7f92f2ccfe: leaq 0x11c0(%rip), %rdi
0xffffff7f92f2cd05: xorl %eax, %eax
0xffffff7f92f2cd07: movl %ebx, %esi
0xffffff7f92f2cd09: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cd0e: movl %ebx, %eax
0xffffff7f92f2cd10: addq $0x8, %rsp
0xffffff7f92f2cd14: popq %rbx
0xffffff7f92f2cd15: popq %rbp
0xffffff7f92f2cd16: retq
0xffffff7f92f2cd17: pushq %rbp
0xffffff7f92f2cd18: movq %rsp, %rbp
0xffffff7f92f2cd1b: pushq %r15
0xffffff7f92f2cd1d: pushq %r14
0xffffff7f92f2cd1f: pushq %rbx
0xffffff7f92f2cd20: pushq %rax
0xffffff7f92f2cd21: movq %rdi, %r14
0xffffff7f92f2cd24: leaq -0x1a(%rbp), %rdx
0xffffff7f92f2cd28: movl $0x7a444247, %edi ; imm = 0x7A444247
0xffffff7f92f2cd2d: movl $0x1, %esi
0xffffff7f92f2cd32: callq 0xffffff7f92f2cf7b
0xffffff7f92f2cd37: xorl %ebx, %ebx
0xffffff7f92f2cd39: testl %eax, %eax
0xffffff7f92f2cd3b: je 0xffffff7f92f2cdb5
0xffffff7f92f2cd3d: movzbl -0x1a(%rbp), %eax
0xffffff7f92f2cd41: cmpl $0x1, %eax
0xffffff7f92f2cd44: movl $0x0, %edx
0xffffff7f92f2cd49: je 0xffffff7f92f2cdb7
0xffffff7f92f2cd4b: movb $0x2, -0x19(%rbp)
0xffffff7f92f2cd4f: leaq -0x19(%rbp), %rdx
0xffffff7f92f2cd53: movl $0x7a444247, %edi ; imm = 0x7A444247
0xffffff7f92f2cd58: movl $0x1, %esi
0xffffff7f92f2cd5d: callq 0xffffff7f92f2d03a
0xffffff7f92f2cd62: movl %eax, %r15d
0xffffff7f92f2cd65: testl %r15d, %r15d
0xffffff7f92f2cd68: setne %al
0xffffff7f92f2cd6b: movzbl %al, %esi
0xffffff7f92f2cd6e: leaq 0x113c(%rip), %rdi
0xffffff7f92f2cd75: xorl %ebx, %ebx
0xffffff7f92f2cd77: xorl %eax, %eax
0xffffff7f92f2cd79: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cd7e: testl %r15d, %r15d
0xffffff7f92f2cd81: movl $0x0, %edx
0xffffff7f92f2cd86: je 0xffffff7f92f2cdb7
0xffffff7f92f2cd88: cmpb $0x0, -0x1a(%rbp)
0xffffff7f92f2cd8c: sete %al
0xffffff7f92f2cd8f: movzbl %al, %eax
0xffffff7f92f2cd92: movl %eax, (%r14)
0xffffff7f92f2cd95: movl $0x2, %edi
0xffffff7f92f2cd9a: callq 0xffffff7f92f2ccd1
0xffffff7f92f2cd9f: testl %eax, %eax
0xffffff7f92f2cda1: setne %al
0xffffff7f92f2cda4: movzbl %al, %ebx
0xffffff7f92f2cda7: jne 0xffffff7f92f2cdae
0xffffff7f92f2cda9: callq 0xffffff7f92f2cc38
0xffffff7f92f2cdae: movl $0x1, %edx
0xffffff7f92f2cdb3: jmp 0xffffff7f92f2cdb7
0xffffff7f92f2cdb5: xorl %edx, %edx
0xffffff7f92f2cdb7: leaq 0x1116(%rip), %rdi
0xffffff7f92f2cdbe: xorl %eax, %eax
0xffffff7f92f2cdc0: movl %ebx, %esi
0xffffff7f92f2cdc2: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2cdc7: movl %ebx, %eax
0xffffff7f92f2cdc9: addq $0x8, %rsp
0xffffff7f92f2cdcd: popq %rbx
0xffffff7f92f2cdce: popq %r14
0xffffff7f92f2cdd0: popq %r15
0xffffff7f92f2cdd2: popq %rbp
0xffffff7f92f2cdd3: retq
0xffffff7f92f2cdd4: pushq %rbp
0xffffff7f92f2cdd5: movq %rsp, %rbp
0xffffff7f92f2cdd8: pushq %r15
0xffffff7f92f2cdda: pushq %r14
0xffffff7f92f2cddc: pushq %r13
0xffffff7f92f2cdde: pushq %r12
0xffffff7f92f2cde0: pushq %rbx
0xffffff7f92f2cde1: pushq %rax
0xffffff7f92f2cde2: movq %rcx, %r14
0xffffff7f92f2cde5: movq %rdx, %r13
0xffffff7f92f2cde8: movq %rsi, %r15
0xffffff7f92f2cdeb: movl %edi, %r12d
0xffffff7f92f2cdee: movl $0x4, %edi
0xffffff7f92f2cdf3: xorl %esi, %esi
0xffffff7f92f2cdf5: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cdfa: testl %eax, %eax
0xffffff7f92f2cdfc: je 0xffffff7f92f2ce7a
0xffffff7f92f2cdfe: movl $0x13, %edi
0xffffff7f92f2ce03: callq 0xffffff7f92f2ce8b
0xffffff7f92f2ce08: testl %eax, %eax
0xffffff7f92f2ce0a: je 0xffffff7f92f2ce7a
0xffffff7f92f2ce0c: movl %r12d, %edi
0xffffff7f92f2ce0f: callq 0xffffff7f92f2ced2
0xffffff7f92f2ce14: testl %eax, %eax
0xffffff7f92f2ce16: je 0xffffff7f92f2ce7a
0xffffff7f92f2ce18: movq %r15, %rdi
0xffffff7f92f2ce1b: callq 0xffffff7f92f2cf1e
0xffffff7f92f2ce20: testl %eax, %eax
0xffffff7f92f2ce22: je 0xffffff7f92f2ce7a
0xffffff7f92f2ce24: movq %r13, %rdi
0xffffff7f92f2ce27: callq 0xffffff7f92f2cf1e
0xffffff7f92f2ce2c: testl %eax, %eax
0xffffff7f92f2ce2e: sete %cl
0xffffff7f92f2ce31: xorl %ebx, %ebx
0xffffff7f92f2ce33: testb $0x1, %cl
0xffffff7f92f2ce36: jne 0xffffff7f92f2ce7a
0xffffff7f92f2ce38: shll $0x8, (%r13)
0xffffff7f92f2ce3d: incb %bl
0xffffff7f92f2ce3f: movq %r13, %rdi
0xffffff7f92f2ce42: callq 0xffffff7f92f2cf1e
0xffffff7f92f2ce47: testl %eax, %eax
0xffffff7f92f2ce49: sete %cl
0xffffff7f92f2ce4c: movzbl %bl, %edx
0xffffff7f92f2ce4f: cmpl $0x3, %edx
0xffffff7f92f2ce52: jb 0xffffff7f92f2ce33
0xffffff7f92f2ce54: testl %eax, %eax
0xffffff7f92f2ce56: je 0xffffff7f92f2ce7a
0xffffff7f92f2ce58: movq %r14, %rdi
0xffffff7f92f2ce5b: callq 0xffffff7f92f2cf1e
0xffffff7f92f2ce60: testl %eax, %eax
0xffffff7f92f2ce62: je 0xffffff7f92f2ce7a
0xffffff7f92f2ce64: movl $0x4, %edi
0xffffff7f92f2ce69: xorl %esi, %esi
0xffffff7f92f2ce6b: callq 0xffffff7f92f2d0d7
0xffffff7f92f2ce70: testl %eax, %eax
0xffffff7f92f2ce72: setne %al
0xffffff7f92f2ce75: movzbl %al, %eax
0xffffff7f92f2ce78: jmp 0xffffff7f92f2ce7c
0xffffff7f92f2ce7a: xorl %eax, %eax
0xffffff7f92f2ce7c: addq $0x8, %rsp
0xffffff7f92f2ce80: popq %rbx
0xffffff7f92f2ce81: popq %r12
0xffffff7f92f2ce83: popq %r13
0xffffff7f92f2ce85: popq %r14
0xffffff7f92f2ce87: popq %r15
0xffffff7f92f2ce89: popq %rbp
0xffffff7f92f2ce8a: retq
0xffffff7f92f2ce8b: pushq %rbp
0xffffff7f92f2ce8c: movq %rsp, %rbp
0xffffff7f92f2ce8f: pushq %rbx
0xffffff7f92f2ce90: pushq %rax
0xffffff7f92f2ce91: movl %edi, %ebx
0xffffff7f92f2ce93: movl $0x2, %edi
0xffffff7f92f2ce98: xorl %esi, %esi
0xffffff7f92f2ce9a: callq 0xffffff7f92f2d0d7
0xffffff7f92f2ce9f: testl %eax, %eax
0xffffff7f92f2cea1: je 0xffffff7f92f2cec9
0xffffff7f92f2cea3: movzbl %bl, %esi
0xffffff7f92f2cea6: movl $0x304, %edi ; imm = 0x304
0xffffff7f92f2ceab: callq 0xffffff7f92f2d4c4
0xffffff7f92f2ceb0: movl $0x4, %edi
0xffffff7f92f2ceb5: movl $0x4, %esi
0xffffff7f92f2ceba: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cebf: testl %eax, %eax
0xffffff7f92f2cec1: setne %al
0xffffff7f92f2cec4: movzbl %al, %eax
0xffffff7f92f2cec7: jmp 0xffffff7f92f2cecb
0xffffff7f92f2cec9: xorl %eax, %eax
0xffffff7f92f2cecb: addq $0x8, %rsp
0xffffff7f92f2cecf: popq %rbx
0xffffff7f92f2ced0: popq %rbp
0xffffff7f92f2ced1: retq
0xffffff7f92f2ced2: pushq %rbp
0xffffff7f92f2ced3: movq %rsp, %rbp
0xffffff7f92f2ced6: pushq %rbx
0xffffff7f92f2ced7: pushq %rax
0xffffff7f92f2ced8: movl %edi, %ebx
0xffffff7f92f2ceda: shrl $0x18, %edi
0xffffff7f92f2cedd: callq 0xffffff7f92f2d004
0xffffff7f92f2cee2: testl %eax, %eax
0xffffff7f92f2cee4: je 0xffffff7f92f2cf15
0xffffff7f92f2cee6: movl %ebx, %eax
0xffffff7f92f2cee8: shrl $0x10, %eax
0xffffff7f92f2ceeb: movzbl %al, %edi
0xffffff7f92f2ceee: callq 0xffffff7f92f2d004
0xffffff7f92f2cef3: testl %eax, %eax
0xffffff7f92f2cef5: je 0xffffff7f92f2cf15
0xffffff7f92f2cef7: movzbl %bh, %edi
0xffffff7f92f2cefa: callq 0xffffff7f92f2d004
0xffffff7f92f2ceff: testl %eax, %eax
0xffffff7f92f2cf01: je 0xffffff7f92f2cf15
0xffffff7f92f2cf03: movzbl %bl, %edi
0xffffff7f92f2cf06: callq 0xffffff7f92f2d004
0xffffff7f92f2cf0b: testl %eax, %eax
0xffffff7f92f2cf0d: setne %al
0xffffff7f92f2cf10: movzbl %al, %eax
0xffffff7f92f2cf13: jmp 0xffffff7f92f2cf17
0xffffff7f92f2cf15: xorl %eax, %eax
0xffffff7f92f2cf17: addq $0x8, %rsp
0xffffff7f92f2cf1b: popq %rbx
0xffffff7f92f2cf1c: popq %rbp
0xffffff7f92f2cf1d: retq
0xffffff7f92f2cf1e: pushq %rbp
0xffffff7f92f2cf1f: movq %rsp, %rbp
0xffffff7f92f2cf22: pushq %rbx
0xffffff7f92f2cf23: pushq %rax
0xffffff7f92f2cf24: movq %rdi, %rbx
0xffffff7f92f2cf27: movl $0x4, %edi
0xffffff7f92f2cf2c: movl $0x4, %esi
0xffffff7f92f2cf31: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cf36: testl %eax, %eax
0xffffff7f92f2cf38: je 0xffffff7f92f2cf72
0xffffff7f92f2cf3a: movl $0x1, %edi
0xffffff7f92f2cf3f: movl $0x1, %esi
0xffffff7f92f2cf44: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cf49: testl %eax, %eax
0xffffff7f92f2cf4b: je 0xffffff7f92f2cf72
0xffffff7f92f2cf4d: movl $0x300, %edi ; imm = 0x300
0xffffff7f92f2cf52: callq 0xffffff7f92f2d49f
0xffffff7f92f2cf57: movb %al, (%rbx)
0xffffff7f92f2cf59: movl $0x4, %edi
0xffffff7f92f2cf5e: movl $0x4, %esi
0xffffff7f92f2cf63: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cf68: testl %eax, %eax
0xffffff7f92f2cf6a: setne %al
0xffffff7f92f2cf6d: movzbl %al, %eax
0xffffff7f92f2cf70: jmp 0xffffff7f92f2cf74
0xffffff7f92f2cf72: xorl %eax, %eax
0xffffff7f92f2cf74: addq $0x8, %rsp
0xffffff7f92f2cf78: popq %rbx
0xffffff7f92f2cf79: popq %rbp
0xffffff7f92f2cf7a: retq
0xffffff7f92f2cf7b: pushq %rbp
0xffffff7f92f2cf7c: movq %rsp, %rbp
0xffffff7f92f2cf7f: pushq %r15
0xffffff7f92f2cf81: pushq %r14
0xffffff7f92f2cf83: pushq %r12
0xffffff7f92f2cf85: pushq %rbx
0xffffff7f92f2cf86: movq %rdx, %r15
0xffffff7f92f2cf89: movl %esi, %r14d
0xffffff7f92f2cf8c: movl %edi, %ebx
0xffffff7f92f2cf8e: movl $0x4, %edi
0xffffff7f92f2cf93: xorl %esi, %esi
0xffffff7f92f2cf95: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cf9a: testl %eax, %eax
0xffffff7f92f2cf9c: je 0xffffff7f92f2cff9
0xffffff7f92f2cf9e: movl $0x10, %edi
0xffffff7f92f2cfa3: callq 0xffffff7f92f2ce8b
0xffffff7f92f2cfa8: testl %eax, %eax
0xffffff7f92f2cfaa: je 0xffffff7f92f2cff9
0xffffff7f92f2cfac: movl %ebx, %edi
0xffffff7f92f2cfae: callq 0xffffff7f92f2ced2
0xffffff7f92f2cfb3: testl %eax, %eax
0xffffff7f92f2cfb5: je 0xffffff7f92f2cff9
0xffffff7f92f2cfb7: movzbl %r14b, %r12d
0xffffff7f92f2cfbb: movl %r12d, %edi
0xffffff7f92f2cfbe: callq 0xffffff7f92f2d004
0xffffff7f92f2cfc3: testl %eax, %eax
0xffffff7f92f2cfc5: je 0xffffff7f92f2cff9
0xffffff7f92f2cfc7: testb %r14b, %r14b
0xffffff7f92f2cfca: je 0xffffff7f92f2cfe3
0xffffff7f92f2cfcc: xorl %ebx, %ebx
0xffffff7f92f2cfce: leaq (%r15,%rbx), %rdi
0xffffff7f92f2cfd2: callq 0xffffff7f92f2cf1e
0xffffff7f92f2cfd7: testl %eax, %eax
0xffffff7f92f2cfd9: je 0xffffff7f92f2cff9
0xffffff7f92f2cfdb: incq %rbx
0xffffff7f92f2cfde: cmpq %r12, %rbx
0xffffff7f92f2cfe1: jb 0xffffff7f92f2cfce
0xffffff7f92f2cfe3: movl $0x4, %edi
0xffffff7f92f2cfe8: xorl %esi, %esi
0xffffff7f92f2cfea: callq 0xffffff7f92f2d0d7
0xffffff7f92f2cfef: testl %eax, %eax
0xffffff7f92f2cff1: setne %al
0xffffff7f92f2cff4: movzbl %al, %eax
0xffffff7f92f2cff7: jmp 0xffffff7f92f2cffb
0xffffff7f92f2cff9: xorl %eax, %eax
0xffffff7f92f2cffb: popq %rbx
0xffffff7f92f2cffc: popq %r12
0xffffff7f92f2cffe: popq %r14
0xffffff7f92f2d000: popq %r15
0xffffff7f92f2d002: popq %rbp
0xffffff7f92f2d003: retq
0xffffff7f92f2d004: pushq %rbp
0xffffff7f92f2d005: movq %rsp, %rbp
0xffffff7f92f2d008: pushq %r14
0xffffff7f92f2d00a: pushq %rbx
0xffffff7f92f2d00b: movl %edi, %r14d
0xffffff7f92f2d00e: xorl %ebx, %ebx
0xffffff7f92f2d010: movl $0x2, %edi
0xffffff7f92f2d015: xorl %esi, %esi
0xffffff7f92f2d017: callq 0xffffff7f92f2d0d7
0xffffff7f92f2d01c: testl %eax, %eax
0xffffff7f92f2d01e: je 0xffffff7f92f2d033
0xffffff7f92f2d020: movzbl %r14b, %esi
0xffffff7f92f2d024: movl $0x300, %edi ; imm = 0x300
0xffffff7f92f2d029: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d02e: movl $0x1, %ebx
0xffffff7f92f2d033: movl %ebx, %eax
0xffffff7f92f2d035: popq %rbx
0xffffff7f92f2d036: popq %r14
0xffffff7f92f2d038: popq %rbp
0xffffff7f92f2d039: retq
0xffffff7f92f2d03a: pushq %rbp
0xffffff7f92f2d03b: movq %rsp, %rbp
0xffffff7f92f2d03e: pushq %r15
0xffffff7f92f2d040: pushq %r14
0xffffff7f92f2d042: pushq %r12
0xffffff7f92f2d044: pushq %rbx
0xffffff7f92f2d045: movq %rdx, %r15
0xffffff7f92f2d048: movl %esi, %r14d
0xffffff7f92f2d04b: movl %edi, %ebx
0xffffff7f92f2d04d: movl $0x4, %edi
0xffffff7f92f2d052: xorl %esi, %esi
0xffffff7f92f2d054: callq 0xffffff7f92f2d0d7
0xffffff7f92f2d059: testl %eax, %eax
0xffffff7f92f2d05b: je 0xffffff7f92f2d0cc
0xffffff7f92f2d05d: movl $0x11, %edi
0xffffff7f92f2d062: callq 0xffffff7f92f2ce8b
0xffffff7f92f2d067: testl %eax, %eax
0xffffff7f92f2d069: je 0xffffff7f92f2d0cc
0xffffff7f92f2d06b: movl $0x4, %edi
0xffffff7f92f2d070: movl $0x4, %esi
0xffffff7f92f2d075: callq 0xffffff7f92f2d0d7
0xffffff7f92f2d07a: testl %eax, %eax
0xffffff7f92f2d07c: je 0xffffff7f92f2d0cc
0xffffff7f92f2d07e: movl %ebx, %edi
0xffffff7f92f2d080: callq 0xffffff7f92f2ced2
0xffffff7f92f2d085: testl %eax, %eax
0xffffff7f92f2d087: je 0xffffff7f92f2d0cc
0xffffff7f92f2d089: movzbl %r14b, %r12d
0xffffff7f92f2d08d: movl %r12d, %edi
0xffffff7f92f2d090: callq 0xffffff7f92f2d004
0xffffff7f92f2d095: testl %eax, %eax
0xffffff7f92f2d097: je 0xffffff7f92f2d0cc
0xffffff7f92f2d099: testb %r14b, %r14b
0xffffff7f92f2d09c: je 0xffffff7f92f2d0b6
0xffffff7f92f2d09e: xorl %ebx, %ebx
0xffffff7f92f2d0a0: movzbl (%r15,%rbx), %edi
0xffffff7f92f2d0a5: callq 0xffffff7f92f2d004
0xffffff7f92f2d0aa: testl %eax, %eax
0xffffff7f92f2d0ac: je 0xffffff7f92f2d0cc
0xffffff7f92f2d0ae: incq %rbx
0xffffff7f92f2d0b1: cmpq %r12, %rbx
0xffffff7f92f2d0b4: jb 0xffffff7f92f2d0a0
0xffffff7f92f2d0b6: movl $0x4, %edi
0xffffff7f92f2d0bb: xorl %esi, %esi
0xffffff7f92f2d0bd: callq 0xffffff7f92f2d0d7
0xffffff7f92f2d0c2: testl %eax, %eax
0xffffff7f92f2d0c4: setne %al
0xffffff7f92f2d0c7: movzbl %al, %eax
0xffffff7f92f2d0ca: jmp 0xffffff7f92f2d0ce
0xffffff7f92f2d0cc: xorl %eax, %eax
0xffffff7f92f2d0ce: popq %rbx
0xffffff7f92f2d0cf: popq %r12
0xffffff7f92f2d0d1: popq %r14
0xffffff7f92f2d0d3: popq %r15
0xffffff7f92f2d0d5: popq %rbp
0xffffff7f92f2d0d6: retq
0xffffff7f92f2d0d7: pushq %rbp
0xffffff7f92f2d0d8: movq %rsp, %rbp
0xffffff7f92f2d0db: pushq %r15
0xffffff7f92f2d0dd: pushq %r14
0xffffff7f92f2d0df: pushq %rbx
0xffffff7f92f2d0e0: pushq %rax
0xffffff7f92f2d0e1: movl %edi, %r14d
0xffffff7f92f2d0e4: movl $0xfffffc18, %ebx ; imm = 0xFFFFFC18
0xffffff7f92f2d0e9: movzbl %sil, %r15d
0xffffff7f92f2d0ed: movl $0x304, %edi ; imm = 0x304
0xffffff7f92f2d0f2: callq 0xffffff7f92f2d49f
0xffffff7f92f2d0f7: andb %r14b, %al
0xffffff7f92f2d0fa: movzbl %al, %ecx
0xffffff7f92f2d0fd: movl $0x1, %eax
0xffffff7f92f2d102: cmpl %r15d, %ecx
0xffffff7f92f2d105: je 0xffffff7f92f2d117
0xffffff7f92f2d107: movl $0x64, %edi
0xffffff7f92f2d10c: callq 0xffffff800f883770 ; ::IODelay(unsigned int) at IOLib.cpp:1131
0xffffff7f92f2d111: xorl %eax, %eax
0xffffff7f92f2d113: incl %ebx
0xffffff7f92f2d115: jne 0xffffff7f92f2d0ed
0xffffff7f92f2d117: addq $0x8, %rsp
0xffffff7f92f2d11b: popq %rbx
0xffffff7f92f2d11c: popq %r14
0xffffff7f92f2d11e: popq %r15
0xffffff7f92f2d120: popq %rbp
0xffffff7f92f2d121: retq
0xffffff7f92f2d122: pushq %rbp
0xffffff7f92f2d123: movq %rsp, %rbp
0xffffff7f92f2d126: pushq %rbx
0xffffff7f92f2d127: pushq %rax
0xffffff7f92f2d128: movb $0x0, -0x9(%rbp)
0xffffff7f92f2d12c: leaq -0x9(%rbp), %rdx
0xffffff7f92f2d130: movl $0x7a4d4f4a, %edi ; imm = 0x7A4D4F4A
0xffffff7f92f2d135: movl $0x1, %esi
0xffffff7f92f2d13a: callq 0xffffff7f92f2d03a
0xffffff7f92f2d13f: testl %eax, %eax
0xffffff7f92f2d141: setne %al
0xffffff7f92f2d144: movzbl %al, %ebx
0xffffff7f92f2d147: leaq 0xdaa(%rip), %rdi
0xffffff7f92f2d14e: xorl %eax, %eax
0xffffff7f92f2d150: movl %ebx, %esi
0xffffff7f92f2d152: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2d157: movl %ebx, %eax
0xffffff7f92f2d159: addq $0x8, %rsp
0xffffff7f92f2d15d: popq %rbx
0xffffff7f92f2d15e: popq %rbp
0xffffff7f92f2d15f: retq
0xffffff7f92f2d160: pushq %rbp
0xffffff7f92f2d161: movq %rsp, %rbp
0xffffff7f92f2d164: pushq %rbx
0xffffff7f92f2d165: pushq %rax
0xffffff7f92f2d166: leaq -0xd(%rbp), %rsi
0xffffff7f92f2d16a: leaq -0xc(%rbp), %rdx
0xffffff7f92f2d16e: leaq -0xf(%rbp), %rcx
0xffffff7f92f2d172: movl $0x7a4d4f4a, %edi ; imm = 0x7A4D4F4A
0xffffff7f92f2d177: callq 0xffffff7f92f2cdd4
0xffffff7f92f2d17c: xorl %ebx, %ebx
0xffffff7f92f2d17e: testl %eax, %eax
0xffffff7f92f2d180: je 0xffffff7f92f2d1bf
0xffffff7f92f2d182: leaq -0xd(%rbp), %rsi
0xffffff7f92f2d186: leaq -0xc(%rbp), %rdx
0xffffff7f92f2d18a: leaq -0xf(%rbp), %rcx
0xffffff7f92f2d18e: movl $0x4d4f4a4f, %edi ; imm = 0x4D4F4A4F
0xffffff7f92f2d193: callq 0xffffff7f92f2cdd4
0xffffff7f92f2d198: testl %eax, %eax
0xffffff7f92f2d19a: je 0xffffff7f92f2d1bf
0xffffff7f92f2d19c: movb $0x1, %al
0xffffff7f92f2d19e: movb %al, -0xd(%rbp)
0xffffff7f92f2d1a1: movb %al, -0xe(%rbp)
0xffffff7f92f2d1a4: leaq -0xe(%rbp), %rdx
0xffffff7f92f2d1a8: movl $0x7a4d4f4a, %edi ; imm = 0x7A4D4F4A
0xffffff7f92f2d1ad: movl $0x1, %esi
0xffffff7f92f2d1b2: callq 0xffffff7f92f2d03a
0xffffff7f92f2d1b7: testl %eax, %eax
0xffffff7f92f2d1b9: setne %al
0xffffff7f92f2d1bc: movzbl %al, %ebx
0xffffff7f92f2d1bf: movl %ebx, %eax
0xffffff7f92f2d1c1: addq $0x8, %rsp
0xffffff7f92f2d1c5: popq %rbx
0xffffff7f92f2d1c6: popq %rbp
0xffffff7f92f2d1c7: retq
0xffffff7f92f2d1c8: pushq %rbp
0xffffff7f92f2d1c9: movq %rsp, %rbp
0xffffff7f92f2d1cc: pushq %r15
0xffffff7f92f2d1ce: pushq %r14
0xffffff7f92f2d1d0: pushq %r12
0xffffff7f92f2d1d2: pushq %rbx
0xffffff7f92f2d1d3: subq $0x10, %rsp
0xffffff7f92f2d1d7: movq %rdi, %r15
0xffffff7f92f2d1da: leaq -0x25(%rbp), %rdx
0xffffff7f92f2d1de: movl $0x7a444247, %edi ; imm = 0x7A444247
0xffffff7f92f2d1e3: movl $0x1, %esi
0xffffff7f92f2d1e8: callq 0xffffff7f92f2cf7b
0xffffff7f92f2d1ed: xorl %r14d, %r14d
0xffffff7f92f2d1f0: testl %eax, %eax
0xffffff7f92f2d1f2: je 0xffffff7f92f2d2ed
0xffffff7f92f2d1f8: movzbl -0x25(%rbp), %eax
0xffffff7f92f2d1fc: cmpl $0x1, %eax
0xffffff7f92f2d1ff: je 0xffffff7f92f2d2ed
0xffffff7f92f2d205: callq 0xffffff7f92f2d160
0xffffff7f92f2d20a: testl %eax, %eax
0xffffff7f92f2d20c: movl $0x0, %ebx
0xffffff7f92f2d211: je 0xffffff7f92f2d2ef
0xffffff7f92f2d217: cmpb $0x0, -0x25(%rbp)
0xffffff7f92f2d21b: sete %al
0xffffff7f92f2d21e: movzbl %al, %eax
0xffffff7f92f2d221: movl %eax, (%r15)
0xffffff7f92f2d224: movb $0x1, -0x25(%rbp)
0xffffff7f92f2d228: movl $0x1, %r14d
0xffffff7f92f2d22e: leaq -0x25(%rbp), %rdx
0xffffff7f92f2d232: movl $0x4d4f4a4f, %edi ; imm = 0x4D4F4A4F
0xffffff7f92f2d237: movl $0x1, %esi
0xffffff7f92f2d23c: callq 0xffffff7f92f2d03a
0xffffff7f92f2d241: testl %eax, %eax
0xffffff7f92f2d243: je 0xffffff7f92f2d2ae
0xffffff7f92f2d245: leaq -0x24(%rbp), %r12
0xffffff7f92f2d249: leaq 0xcd4(%rip), %r15
0xffffff7f92f2d250: leaq -0x25(%rbp), %rbx
0xffffff7f92f2d254: movl $0x7a120, %edi ; imm = 0x7A120
0xffffff7f92f2d259: callq 0xffffff800f883770 ; ::IODelay(unsigned int) at IOLib.cpp:1131
0xffffff7f92f2d25e: movl $0x5354444b, %edi ; imm = 0x5354444B
0xffffff7f92f2d263: movl $0x2, %esi
0xffffff7f92f2d268: movq %r12, %rdx
0xffffff7f92f2d26b: callq 0xffffff7f92f2cf7b
0xffffff7f92f2d270: testl %eax, %eax
0xffffff7f92f2d272: je 0xffffff7f92f2d280
0xffffff7f92f2d274: cmpw $0x0, -0x24(%rbp)
0xffffff7f92f2d279: je 0xffffff7f92f2d28a
0xffffff7f92f2d27b: jmp 0xffffff7f92f2d311
0xffffff7f92f2d280: xorl %eax, %eax
0xffffff7f92f2d282: movq %r15, %rdi
0xffffff7f92f2d285: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2d28a: movl $0x7a120, %edi ; imm = 0x7A120
0xffffff7f92f2d28f: callq 0xffffff800f883770 ; ::IODelay(unsigned int) at IOLib.cpp:1131
0xffffff7f92f2d294: movb $0x1, -0x25(%rbp)
0xffffff7f92f2d298: movl $0x4d4f4a4f, %edi ; imm = 0x4D4F4A4F
0xffffff7f92f2d29d: movl $0x1, %esi
0xffffff7f92f2d2a2: movq %rbx, %rdx
0xffffff7f92f2d2a5: callq 0xffffff7f92f2d03a
0xffffff7f92f2d2aa: testl %eax, %eax
0xffffff7f92f2d2ac: jne 0xffffff7f92f2d254
0xffffff7f92f2d2ae: leaq 0xc59(%rip), %rdi
0xffffff7f92f2d2b5: xorl %ebx, %ebx
0xffffff7f92f2d2b7: xorl %eax, %eax
0xffffff7f92f2d2b9: callq 0xffffff800f883790 ; ::IOLog(const char *, ...) at IOLib.cpp:1154
0xffffff7f92f2d2be: movb $0x0, -0x21(%rbp)
0xffffff7f92f2d2c2: leaq -0x21(%rbp), %rdx
0xffffff7f92f2d2c6: movl $0x7a4d4f4a, %edi ; imm = 0x7A4D4F4A
0xffffff7f92f2d2cb: movl $0x1, %esi
0xffffff7f92f2d2d0: callq 0xffffff7f92f2d03a
0xffffff7f92f2d2d5: testl %eax, %eax
0xffffff7f92f2d2d7: setne %al
0xffffff7f92f2d2da: movzbl %al, %esi
0xffffff7f92f2d2dd: leaq 0xc14(%rip), %rdi
0xffffff7f92f2d2e4: xorl %eax, %eax
0xffffff7f92f2d2e6: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2d2eb: jmp 0xffffff7f92f2d2ef
0xffffff7f92f2d2ed: xorl %ebx, %ebx
0xffffff7f92f2d2ef: leaq 0xbde(%rip), %rdi
0xffffff7f92f2d2f6: xorl %eax, %eax
0xffffff7f92f2d2f8: movl %ebx, %esi
0xffffff7f92f2d2fa: movl %r14d, %edx
0xffffff7f92f2d2fd: callq 0xffffff800f919b70 ; kprintf at pe_kprintf.c:109
0xffffff7f92f2d302: movl %ebx, %eax
0xffffff7f92f2d304: addq $0x10, %rsp
0xffffff7f92f2d308: popq %rbx
0xffffff7f92f2d309: popq %r12
0xffffff7f92f2d30b: popq %r14
0xffffff7f92f2d30d: popq %r15
0xffffff7f92f2d30f: popq %rbp
0xffffff7f92f2d310: retq
0xffffff7f92f2d311: callq 0xffffff7f92f2d346
0xffffff7f92f2d316: callq 0xffffff7f92f2d328
0xffffff7f92f2d31b: movl $0x1, %r14d
0xffffff7f92f2d321: movl $0x1, %ebx
0xffffff7f92f2d326: jmp 0xffffff7f92f2d2ef
0xffffff7f92f2d328: pushq %rbp
0xffffff7f92f2d329: movq %rsp, %rbp
0xffffff7f92f2d32c: movl $0x3fa, %edi ; imm = 0x3FA
0xffffff7f92f2d331: callq 0xffffff7f92f2d49f
0xffffff7f92f2d336: orb $0x2, %al
0xffffff7f92f2d338: movzbl %al, %esi
0xffffff7f92f2d33b: movl $0x3fa, %edi ; imm = 0x3FA
0xffffff7f92f2d340: popq %rbp
0xffffff7f92f2d341: jmp 0xffffff7f92f2d4c4
0xffffff7f92f2d346: pushq %rbp
0xffffff7f92f2d347: movq %rsp, %rbp
0xffffff7f92f2d34a: movl $0x3fa, %edi ; imm = 0x3FA
0xffffff7f92f2d34f: callq 0xffffff7f92f2d49f
0xffffff7f92f2d354: orb $0x4, %al
0xffffff7f92f2d356: movzbl %al, %esi
0xffffff7f92f2d359: movl $0x3fa, %edi ; imm = 0x3FA
0xffffff7f92f2d35e: popq %rbp
0xffffff7f92f2d35f: jmp 0xffffff7f92f2d4c4
0xffffff7f92f2d364: pushq %rbp
0xffffff7f92f2d365: movq %rsp, %rbp
0xffffff7f92f2d368: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2d36d: movl $0x21, %esi
0xffffff7f92f2d372: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d377: movl $0x3ff, %edi ; imm = 0x3FF
0xffffff7f92f2d37c: callq 0xffffff7f92f2d49f
0xffffff7f92f2d381: movzbl %al, %eax
0xffffff7f92f2d384: cmpl $0x21, %eax
0xffffff7f92f2d387: sete %al
0xffffff7f92f2d38a: movzbl %al, %eax
0xffffff7f92f2d38d: popq %rbp
0xffffff7f92f2d38e: retq
0xffffff7f92f2d38f: pushq %rbp
0xffffff7f92f2d390: movq %rsp, %rbp
0xffffff7f92f2d393: movl $0x3fb, %edi ; imm = 0x3FB
0xffffff7f92f2d398: movl $0x80, %esi
0xffffff7f92f2d39d: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d3a2: movl $0x3f9, %edi ; imm = 0x3F9
0xffffff7f92f2d3a7: xorl %esi, %esi
0xffffff7f92f2d3a9: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d3ae: movl $0x3f8, %edi ; imm = 0x3F8
0xffffff7f92f2d3b3: movl $0x1, %esi
0xffffff7f92f2d3b8: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d3bd: movl $0x3fa, %edi ; imm = 0x3FA
0xffffff7f92f2d3c2: movl $0x1, %esi
0xffffff7f92f2d3c7: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d3cc: movl $0x3fb, %edi ; imm = 0x3FB
0xffffff7f92f2d3d1: movl $0x3, %esi
0xffffff7f92f2d3d6: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d3db: movl $0x3fc, %edi ; imm = 0x3FC
0xffffff7f92f2d3e0: movl $0x3, %esi
0xffffff7f92f2d3e5: popq %rbp
0xffffff7f92f2d3e6: jmp 0xffffff7f92f2d4c4
0xffffff7f92f2d3eb: pushq %rbp
0xffffff7f92f2d3ec: movq %rsp, %rbp
0xffffff7f92f2d3ef: pushq %rbx
0xffffff7f92f2d3f0: pushq %rax
0xffffff7f92f2d3f1: movq %rdi, %rbx
0xffffff7f92f2d3f4: movl $0x3fd, %edi ; imm = 0x3FD
0xffffff7f92f2d3f9: callq 0xffffff7f92f2d49f
0xffffff7f92f2d3fe: movb %al, %cl
0xffffff7f92f2d400: xorl %eax, %eax
0xffffff7f92f2d402: testb $0x1, %cl
0xffffff7f92f2d405: je 0xffffff7f92f2d418
0xffffff7f92f2d407: movl $0x3f8, %edi ; imm = 0x3F8
0xffffff7f92f2d40c: callq 0xffffff7f92f2d49f
0xffffff7f92f2d411: movb %al, (%rbx)
0xffffff7f92f2d413: movl $0x1, %eax
0xffffff7f92f2d418: addq $0x8, %rsp
0xffffff7f92f2d41c: popq %rbx
0xffffff7f92f2d41d: popq %rbp
0xffffff7f92f2d41e: retq
0xffffff7f92f2d41f: pushq %rbp
0xffffff7f92f2d420: movq %rsp, %rbp
0xffffff7f92f2d423: pushq %rbx
0xffffff7f92f2d424: pushq %rax
0xffffff7f92f2d425: movq %rdi, %rbx
0xffffff7f92f2d428: movq %rbx, %rdi
0xffffff7f92f2d42b: callq 0xffffff7f92f2d3eb
0xffffff7f92f2d430: testl %eax, %eax
0xffffff7f92f2d432: je 0xffffff7f92f2d428
0xffffff7f92f2d434: addq $0x8, %rsp
0xffffff7f92f2d438: popq %rbx
0xffffff7f92f2d439: popq %rbp
0xffffff7f92f2d43a: retq
0xffffff7f92f2d43b: pushq %rbp
0xffffff7f92f2d43c: movq %rsp, %rbp
0xffffff7f92f2d43f: movl %edi, %eax
0xffffff7f92f2d441: movl $0x3f8, %edi ; imm = 0x3F8
0xffffff7f92f2d446: movl %eax, %esi
0xffffff7f92f2d448: callq 0xffffff7f92f2d4c4
0xffffff7f92f2d44d: movl $0x3fd, %edi ; imm = 0x3FD
0xffffff7f92f2d452: callq 0xffffff7f92f2d49f
0xffffff7f92f2d457: testb $0x40, %al
0xffffff7f92f2d459: je 0xffffff7f92f2d44d
0xffffff7f92f2d45b: popq %rbp
0xffffff7f92f2d45c: retq
0xffffff7f92f2d45d: pushq %rbp
0xffffff7f92f2d45e: movq %rsp, %rbp
0xffffff7f92f2d461: pushq %rbx
0xffffff7f92f2d462: pushq %rax
0xffffff7f92f2d463: movq %rdi, %rbx
0xffffff7f92f2d466: testq %rbx, %rbx
0xffffff7f92f2d469: je 0xffffff7f92f2d498
0xffffff7f92f2d46b: movb (%rbx), %al
0xffffff7f92f2d46d: testb %al, %al
0xffffff7f92f2d46f: je 0xffffff7f92f2d498
0xffffff7f92f2d471: incq %rbx
0xffffff7f92f2d474: movzbl %al, %edi
0xffffff7f92f2d477: callq 0xffffff7f92f2d43b
0xffffff7f92f2d47c: movzbl -0x1(%rbx), %eax
0xffffff7f92f2d480: cmpl $0xa, %eax
0xffffff7f92f2d483: jne 0xffffff7f92f2d48f
0xffffff7f92f2d485: movl $0xd, %edi
0xffffff7f92f2d48a: callq 0xffffff7f92f2d43b
0xffffff7f92f2d48f: movb (%rbx), %al
0xffffff7f92f2d491: incq %rbx
0xffffff7f92f2d494: testb %al, %al
0xffffff7f92f2d496: jne 0xffffff7f92f2d474
0xffffff7f92f2d498: addq $0x8, %rsp
0xffffff7f92f2d49c: popq %rbx
0xffffff7f92f2d49d: popq %rbp
0xffffff7f92f2d49e: retq
0xffffff7f92f2d49f: pushq %rbp
0xffffff7f92f2d4a0: movq %rsp, %rbp
0xffffff7f92f2d4a3: movw %di, %dx
0xffffff7f92f2d4a6: inb %dx, %al
0xffffff7f92f2d4a7: movzbl %al, %eax
0xffffff7f92f2d4aa: popq %rbp
0xffffff7f92f2d4ab: retq
0xffffff7f92f2d4ac: pushq %rbp
0xffffff7f92f2d4ad: movq %rsp, %rbp
0xffffff7f92f2d4b0: movw %di, %dx
0xffffff7f92f2d4b3: inw %dx, %ax
0xffffff7f92f2d4b5: movzwl %ax, %eax
0xffffff7f92f2d4b8: popq %rbp
0xffffff7f92f2d4b9: retq
0xffffff7f92f2d4ba: pushq %rbp
0xffffff7f92f2d4bb: movq %rsp, %rbp
0xffffff7f92f2d4be: movw %di, %dx
0xffffff7f92f2d4c1: inl %dx, %eax
0xffffff7f92f2d4c2: popq %rbp
0xffffff7f92f2d4c3: retq
0xffffff7f92f2d4c4: pushq %rbp
0xffffff7f92f2d4c5: movq %rsp, %rbp
0xffffff7f92f2d4c8: movb %sil, %al
0xffffff7f92f2d4cb: movw %di, %dx
0xffffff7f92f2d4ce: outb %al, %dx
0xffffff7f92f2d4cf: popq %rbp
0xffffff7f92f2d4d0: retq
0xffffff7f92f2d4d1: pushq %rbp
0xffffff7f92f2d4d2: movq %rsp, %rbp
0xffffff7f92f2d4d5: movw %si, %ax
0xffffff7f92f2d4d8: movw %di, %dx
0xffffff7f92f2d4db: outw %ax, %dx
0xffffff7f92f2d4dd: popq %rbp
0xffffff7f92f2d4de: retq
0xffffff7f92f2d4df: pushq %rbp
0xffffff7f92f2d4e0: movq %rsp, %rbp
0xffffff7f92f2d4e3: movl %esi, %eax
0xffffff7f92f2d4e5: movw %di, %dx
0xffffff7f92f2d4e8: outl %eax, %dx
0xffffff7f92f2d4e9: popq %rbp
0xffffff7f92f2d4ea: retq
0xffffff7f92f2d4eb: nop
0xffffff7f92f2d4ec: pushq %rbp
0xffffff7f92f2d4ed: movq %rsp, %rbp
0xffffff7f92f2d4f0: pushq %rbx
0xffffff7f92f2d4f1: pushq %rax
0xffffff7f92f2d4f2: movq %rdi, %rbx
0xffffff7f92f2d4f5: leaq 0xa3d(%rip), %rsi
0xffffff7f92f2d4fc: movq 0xafd(%rip), %rdx
0xffffff7f92f2d503: movl $0x88, %ecx
0xffffff7f92f2d508: callq 0xffffff800f833990 ; OSMetaClass::OSMetaClass at OSMetaClass.cpp:387
0xffffff7f92f2d50d: leaq 0x139c(%rip), %rax
0xffffff7f92f2d514: movq %rax, (%rbx)
0xffffff7f92f2d517: addq $0x8, %rsp
0xffffff7f92f2d51b: popq %rbx
0xffffff7f92f2d51c: popq %rbp
0xffffff7f92f2d51d: retq
0xffffff7f92f2d51e: pushq %rbp
0xffffff7f92f2d51f: movq %rsp, %rbp
0xffffff7f92f2d522: popq %rbp
0xffffff7f92f2d523: jmp 0xffffff800f8340b0 ; OSMetaClass::~OSMetaClass at OSMetaClass.cpp:452
0xffffff7f92f2d528: pushq %rbp
0xffffff7f92f2d529: movq %rsp, %rbp
0xffffff7f92f2d52c: pushq %rbx
0xffffff7f92f2d52d: pushq %rax
0xffffff7f92f2d52e: movq %rdi, %rbx
0xffffff7f92f2d531: callq 0xffffff800f89b7e0 ; IOService::IOService at IOService.cpp:77
0xffffff7f92f2d536: leaq 0xb0b(%rip), %rax
0xffffff7f92f2d53d: movq %rax, (%rbx)
0xffffff7f92f2d540: addq $0x8, %rsp
0xffffff7f92f2d544: popq %rbx
0xffffff7f92f2d545: popq %rbp
0xffffff7f92f2d546: retq
0xffffff7f92f2d547: nop
0xffffff7f92f2d548: pushq %rbp
0xffffff7f92f2d549: movq %rsp, %rbp
0xffffff7f92f2d54c: pushq %rbx
0xffffff7f92f2d54d: pushq %rax
0xffffff7f92f2d54e: movq %rdi, %rbx
0xffffff7f92f2d551: callq 0xffffff800f89b7e0 ; IOService::IOService at IOService.cpp:77
0xffffff7f92f2d556: leaq 0xaeb(%rip), %rax
0xffffff7f92f2d55d: movq %rax, (%rbx)
0xffffff7f92f2d560: addq $0x8, %rsp
0xffffff7f92f2d564: popq %rbx
0xffffff7f92f2d565: popq %rbp
0xffffff7f92f2d566: retq
0xffffff7f92f2d567: nop
0xffffff7f92f2d568: pushq %rbp
0xffffff7f92f2d569: movq %rsp, %rbp
0xffffff7f92f2d56c: popq %rbp
0xffffff7f92f2d56d: jmp 0xffffff800f89b820 ; IOService::~IOService at IOService.cpp:77
0xffffff7f92f2d572: pushq %rbp
0xffffff7f92f2d573: movq %rsp, %rbp
0xffffff7f92f2d576: popq %rbp
0xffffff7f92f2d577: jmp 0xffffff800f89b820 ; IOService::~IOService at IOService.cpp:77
0xffffff7f92f2d57c: pushq %rbp
0xffffff7f92f2d57d: movq %rsp, %rbp
0xffffff7f92f2d580: pushq %rbx
0xffffff7f92f2d581: pushq %rax
0xffffff7f92f2d582: movq %rdi, %rbx
0xffffff7f92f2d585: callq 0xffffff800f89b820 ; IOService::~IOService at IOService.cpp:77
0xffffff7f92f2d58a: movl $0x88, %esi
0xffffff7f92f2d58f: movq %rbx, %rdi
0xffffff7f92f2d592: addq $0x8, %rsp
0xffffff7f92f2d596: popq %rbx
0xffffff7f92f2d597: popq %rbp
0xffffff7f92f2d598: jmp 0xffffff800f835d40 ; OSObject::operator delete at OSObject.cpp:268
0xffffff7f92f2d59d: nop
0xffffff7f92f2d59e: pushq %rbp
0xffffff7f92f2d59f: movq %rsp, %rbp
0xffffff7f92f2d5a2: leaq 0x14cf(%rip), %rax
0xffffff7f92f2d5a9: popq %rbp
0xffffff7f92f2d5aa: retq
0xffffff7f92f2d5ab: nop
0xffffff7f92f2d5ac: pushq %rbp
0xffffff7f92f2d5ad: movq %rsp, %rbp
0xffffff7f92f2d5b0: pushq %rbx
0xffffff7f92f2d5b1: pushq %rax
0xffffff7f92f2d5b2: movq %rdi, %rbx
0xffffff7f92f2d5b5: leaq 0x97d(%rip), %rsi
0xffffff7f92f2d5bc: movq 0xa3d(%rip), %rdx
0xffffff7f92f2d5c3: movl $0x88, %ecx
0xffffff7f92f2d5c8: callq 0xffffff800f833990 ; OSMetaClass::OSMetaClass at OSMetaClass.cpp:387
0xffffff7f92f2d5cd: leaq 0x12dc(%rip), %rax
0xffffff7f92f2d5d4: movq %rax, (%rbx)
0xffffff7f92f2d5d7: addq $0x8, %rsp
0xffffff7f92f2d5db: popq %rbx
0xffffff7f92f2d5dc: popq %rbp
0xffffff7f92f2d5dd: retq
0xffffff7f92f2d5de: pushq %rbp
0xffffff7f92f2d5df: movq %rsp, %rbp
0xffffff7f92f2d5e2: pushq %r14
0xffffff7f92f2d5e4: pushq %rbx
0xffffff7f92f2d5e5: movl $0x88, %edi
0xffffff7f92f2d5ea: callq 0xffffff800f835dc0 ; OSObject::operator new at OSObject.cpp:254
0xffffff7f92f2d5ef: movq %rax, %rbx
0xffffff7f92f2d5f2: leaq 0x147f(%rip), %r14
0xffffff7f92f2d5f9: movq %rbx, %rdi
0xffffff7f92f2d5fc: movq %r14, %rsi
0xffffff7f92f2d5ff: callq 0xffffff800f89b7e0 ; IOService::IOService at IOService.cpp:77
0xffffff7f92f2d604: leaq 0xa3d(%rip), %rax
0xffffff7f92f2d60b: movq %rax, (%rbx)
0xffffff7f92f2d60e: movq %r14, %rdi
0xffffff7f92f2d611: callq 0xffffff800f834780 ; OSMetaClass::instanceConstructed at OSMetaClass.cpp:749
0xffffff7f92f2d616: movq %rbx, %rax
0xffffff7f92f2d619: popq %rbx
0xffffff7f92f2d61a: popq %r14
0xffffff7f92f2d61c: popq %rbp
0xffffff7f92f2d61d: retq