5a923e:	6d                   	insl   (%dx),%es:(%edi)
5a923f:	0b 69 6d             	or     0x6d(%ecx),%ebp
5a9242:	61                   	popa
5a9243:	67 65 65 6e          	gs outsb %gs:(%si),(%dx)
5a9247:	70 72                	jo     0x5a92bb
5a9249:	6f                   	outsl  %ds:(%esi),(%dx)
5a924a:	63 90 98 92 5a 00    	arpl   %edx,0x5a9298(%eax)
5a926c:	98                   	cwtl
5a926d:	92                   	xchg   %eax,%edx
5a926e:	5a                   	pop    %edx
5a926f:	00 70 00             	add    %dh,0x0(%eax)
5a9272:	00 00                	add    %al,(%eax)
5a9274:	e8 10 40 00 c0       	call   0xc05ad289
5a9279:	3c 40                	cmp    $0x40,%al
5a927b:	00 cc                	add    %cl,%ah
5a927d:	3c 40                	cmp    $0x40,%al
5a927f:	00 d0                	add    %dl,%al
5a9281:	3c 40                	cmp    $0x40,%al
5a9283:	00 d4                	add    %dl,%ah
5a9285:	3c 40                	cmp    $0x40,%al
5a9287:	00 c8                	add    %cl,%al
5a9289:	3c 40                	cmp    $0x40,%al
5a928b:	00 10                	add    %dl,(%eax)
5a928d:	3a 40 00             	cmp    0x0(%eax),%al
5a9290:	2c 3a                	sub    $0x3a,%al
5a9292:	40                   	inc    %eax
5a9293:	00 20                	add    %ah,(%eax)
5a9295:	3e 5b                	ds pop %ebx
5a9297:	00 14 54             	add    %dl,(%esp,%edx,2)
5a929a:	49                   	dec    %ecx
5a929b:	45                   	inc    %ebp
5a929c:	54                   	push   %esp
5a929d:	72 61                	jb     0x5a9300
5a929f:	6e                   	outsb  %ds:(%esi),(%dx)
5a92a0:	73 69                	jae    0x5a930b
5a92a2:	74 69                	je     0x5a930d
5a92a4:	6f                   	outsl  %ds:(%esi),(%dx)
5a92a5:	6e                   	outsb  %ds:(%esi),(%dx)
5a92a6:	45                   	inc    %ebp
5a92a7:	66 66 65 63 74 73 8d 	data16 arpl %si,%gs:-0x73(%ebx,%esi,2)
5a92ae:	40                   	inc    %eax
5a92af:	00 55 8b             	add    %dl,-0x75(%ebp)
5a92b2:	ec                   	in     (%dx),%al
5a92b3:	53                   	push   %ebx
5a92b4:	db 6d 08             	fldt   0x8(%ebp)
5a92b7:	e8 10 9a e5 ff       	call   0x402ccc
5a92bc:	8b d8                	mov    %eax,%ebx
5a92be:	db 6d 08             	fldt   0x8(%ebp)
5a92c1:	e8 d6 99 e5 ff       	call   0x402c9c
5a92c6:	d8 1d dc 92 5a 00    	fcomps 0x5a92dc
5a92cc:	df e0                	fnstsw %ax
5a92ce:	9e                   	sahf
5a92cf:	76 01                	jbe    0x5a92d2
5a92d1:	43                   	inc    %ebx
5a92d2:	8b c3                	mov    %ebx,%eax
5a92d4:	5b                   	pop    %ebx
5a92d5:	5d                   	pop    %ebp
5a92d6:	c2 0c 00             	ret    $0xc
5a92d9:	00 00                	add    %al,(%eax)
5a92db:	00 00                	add    %al,(%eax)
5a92dd:	00 00                	add    %al,(%eax)
5a92df:	00 55 8b             	add    %dl,-0x75(%ebp)
5a92e2:	ec                   	in     (%dx),%al
5a92e3:	53                   	push   %ebx
5a92e4:	db 6d 08             	fldt   0x8(%ebp)
5a92e7:	e8 e0 99 e5 ff       	call   0x402ccc
5a92ec:	8b d8                	mov    %eax,%ebx
5a92ee:	db 6d 08             	fldt   0x8(%ebp)
5a92f1:	e8 a6 99 e5 ff       	call   0x402c9c
5a92f6:	d8 1d 0c 93 5a 00    	fcomps 0x5a930c
5a92fc:	df e0                	fnstsw %ax
5a92fe:	9e                   	sahf
5a92ff:	73 01                	jae    0x5a9302
5a9301:	4b                   	dec    %ebx
5a9302:	8b c3                	mov    %ebx,%eax
5a9304:	5b                   	pop    %ebx
5a9305:	5d                   	pop    %ebp
5a9306:	c2 0c 00             	ret    $0xc
5a9309:	00 00                	add    %al,(%eax)
5a930b:	00 00                	add    %al,(%eax)
5a930d:	00 00                	add    %al,(%eax)
5a930f:	00 55 8b             	add    %dl,-0x75(%ebp)
5a9312:	ec                   	in     (%dx),%al
5a9313:	56                   	push   %esi
5a9314:	8b 75 08             	mov    0x8(%ebp),%esi
5a9317:	88 46 02             	mov    %al,0x2(%esi)
5a931a:	88 56 01             	mov    %dl,0x1(%esi)
5a931d:	88 0e                	mov    %cl,(%esi)
5a931f:	5e                   	pop    %esi
5a9320:	5d                   	pop    %ebp
5a9321:	c2 04 00             	ret    $0x4
5a9324:	55                   	push   %ebp
5a9325:	8b ec                	mov    %esp,%ebp
5a9327:	33 c0                	xor    %eax,%eax
5a9329:	8a 45 0a             	mov    0xa(%ebp),%al
5a932c:	8b 15 24 72 6a 00    	mov    0x6a7224,%edx
5a9332:	f7 2a                	imull  (%edx)
5a9334:	33 d2                	xor    %edx,%edx
5a9336:	8a 55 09             	mov    0x9(%ebp),%dl
5a9339:	8b 0d 4c 71 6a 00    	mov    0x6a714c,%ecx
5a933f:	0f af 11             	imul   (%ecx),%edx
5a9342:	03 c2                	add    %edx,%eax
5a9344:	33 d2                	xor    %edx,%edx
5a9346:	8a 55 08             	mov    0x8(%ebp),%dl
5a9349:	8b 0d bc 6d 6a 00    	mov    0x6a6dbc,%ecx
5a934f:	0f af 11             	imul   (%ecx),%edx
5a9352:	03 c2                	add    %edx,%eax
5a9354:	b9 64 00 00 00       	mov    $0x64,%ecx
5a9359:	99                   	cltd
5a935a:	f7 f9                	idiv   %ecx
5a935c:	5d                   	pop    %ebp
5a935d:	c2 04 00             	ret    $0x4
5a9360:	55                   	push   %ebp
5a9361:	8b ec                	mov    %esp,%ebp
5a9363:	33 c0                	xor    %eax,%eax
5a9365:	8a 45 0a             	mov    0xa(%ebp),%al
5a9368:	33 d2                	xor    %edx,%edx
5a936a:	8a 55 09             	mov    0x9(%ebp),%dl
5a936d:	c1 e2 08             	shl    $0x8,%edx
5a9370:	0b c2                	or     %edx,%eax
5a9372:	33 d2                	xor    %edx,%edx
5a9374:	8a 55 08             	mov    0x8(%ebp),%dl
5a9377:	c1 e2 10             	shl    $0x10,%edx
5a937a:	0b c2                	or     %edx,%eax
5a937c:	5d                   	pop    %ebp
5a937d:	c2 04 00             	ret    $0x4
5a9380:	53                   	push   %ebx
5a9381:	8b da                	mov    %edx,%ebx
5a9383:	e8 50 e2 e7 ff       	call   0x4275d8
5a9388:	8b d0                	mov    %eax,%edx
5a938a:	80 e2 ff             	and    $0xff,%dl
5a938d:	88 53 02             	mov    %dl,0x2(%ebx)
5a9390:	8b d0                	mov    %eax,%edx
5a9392:	81 e2 00 ff 00 00    	and    $0xff00,%edx
5a9398:	c1 ea 08             	shr    $0x8,%edx
5a939b:	88 53 01             	mov    %dl,0x1(%ebx)
5a939e:	25 00 00 ff 00       	and    $0xff0000,%eax
5a93a3:	c1 e8 10             	shr    $0x10,%eax
5a93a6:	88 03                	mov    %al,(%ebx)
5a93a8:	5b                   	pop    %ebx
5a93a9:	c3                   	ret
5a93aa:	8b c0                	mov    %eax,%eax
5a93ac:	55                   	push   %ebp
5a93ad:	8b ec                	mov    %esp,%ebp
5a93af:	83 c4 f8             	add    $0xfffffff8,%esp
5a93b2:	dd 45 10             	fldl   0x10(%ebp)
5a93b5:	dc 5d 08             	fcompl 0x8(%ebp)
5a93b8:	df e0                	fnstsw %ax
5a93ba:	9e                   	sahf
5a93bb:	73 0e                	jae    0x5a93cb
5a93bd:	8b 45 10             	mov    0x10(%ebp),%eax
5a93c0:	89 45 f8             	mov    %eax,-0x8(%ebp)
5a93c3:	8b 45 14             	mov    0x14(%ebp),%eax
5a93c6:	89 45 fc             	mov    %eax,-0x4(%ebp)
5a93c9:	eb 0c                	jmp    0x5a93d7
5a93cb:	8b 45 08             	mov    0x8(%ebp),%eax
5a93ce:	89 45 f8             	mov    %eax,-0x8(%ebp)
5a93d1:	8b 45 0c             	mov    0xc(%ebp),%eax
5a93d4:	89 45 fc             	mov    %eax,-0x4(%ebp)
5a93d7:	dd 45 f8             	fldl   -0x8(%ebp)
5a93da:	59                   	pop    %ecx
5a93db:	59                   	pop    %ecx
5a93dc:	5d                   	pop    %ebp
5a93dd:	c2 10 00             	ret    $0x10
5a93e0:	55                   	push   %ebp
5a93e1:	8b ec                	mov    %esp,%ebp
5a93e3:	83 c4 f8             	add    $0xfffffff8,%esp
5a93e6:	dd 45 10             	fldl   0x10(%ebp)
5a93e9:	dc 5d 08             	fcompl 0x8(%ebp)
5a93ec:	df e0                	fnstsw %ax
5a93ee:	9e                   	sahf
5a93ef:	76 0e                	jbe    0x5a93ff
5a93f1:	8b 45 10             	mov    0x10(%ebp),%eax
5a93f4:	89 45 f8             	mov    %eax,-0x8(%ebp)
5a93f7:	8b 45 14             	mov    0x14(%ebp),%eax
5a93fa:	89 45 fc             	mov    %eax,-0x4(%ebp)
5a93fd:	eb 0c                	jmp    0x5a940b
5a93ff:	8b 45 08             	mov    0x8(%ebp),%eax
5a9402:	89 45 f8             	mov    %eax,-0x8(%ebp)
5a9405:	8b 45 0c             	mov    0xc(%ebp),%eax
5a9408:	89 45 fc             	mov    %eax,-0x4(%ebp)
5a940b:	dd 45 f8             	fldl   -0x8(%ebp)
5a940e:	59                   	pop    %ecx
5a940f:	59                   	pop    %ecx
5a9410:	5d                   	pop    %ebp
5a9411:	c2 10 00             	ret    $0x10
5a9414:	39 c2                	cmp    %eax,%edx
5a9416:	7e 02                	jle    0x5a941a
5a9418:	89 d0                	mov    %edx,%eax
5a941a:	c3                   	ret
5a941b:	90                   	nop
5a941c:	39 d0                	cmp    %edx,%eax
5a941e:	7e 02                	jle    0x5a9422
5a9420:	89 d0                	mov    %edx,%eax
5a9422:	c3                   	ret
5a9423:	90                   	nop
5a9424:	39 d0                	cmp    %edx,%eax
5a9426:	7f 03                	jg     0x5a942b
5a9428:	89 d0                	mov    %edx,%eax
5a942a:	c3                   	ret
5a942b:	39 c8                	cmp    %ecx,%eax
5a942d:	7c 03                	jl     0x5a9432
5a942f:	89 c8                	mov    %ecx,%eax
5a9431:	c3                   	ret
5a9432:	c3                   	ret
5a9433:	90                   	nop
5a9434:	09 c0                	or     %eax,%eax
5a9436:	79 03                	jns    0x5a943b
5a9438:	31 c0                	xor    %eax,%eax
5a943a:	c3                   	ret
5a943b:	3d ff 00 00 00       	cmp    $0xff,%eax
5a9440:	76 05                	jbe    0x5a9447
5a9442:	b8 ff 00 00 00       	mov    $0xff,%eax
5a9447:	c3                   	ret
5a9448:	53                   	push   %ebx
5a9449:	8b 08                	mov    (%eax),%ecx
5a944b:	8b 1a                	mov    (%edx),%ebx
5a944d:	89 0a                	mov    %ecx,(%edx)
5a944f:	89 18                	mov    %ebx,(%eax)
5a9451:	5b                   	pop    %ebx
5a9452:	c3                   	ret
5a9453:	90                   	nop
5a9454:	55                   	push   %ebp
5a9455:	8b ec                	mov    %esp,%ebp
5a9457:	8a 45 0e             	mov    0xe(%ebp),%al
5a945a:	3a 45 0a             	cmp    0xa(%ebp),%al
5a945d:	75 10                	jne    0x5a946f
5a945f:	8a 45 0d             	mov    0xd(%ebp),%al
5a9462:	3a 45 09             	cmp    0x9(%ebp),%al
5a9465:	75 08                	jne    0x5a946f
5a9467:	8a 45 0c             	mov    0xc(%ebp),%al
5a946a:	3a 45 08             	cmp    0x8(%ebp),%al
5a946d:	74 04                	je     0x5a9473
5a946f:	33 c0                	xor    %eax,%eax
5a9471:	eb 02                	jmp    0x5a9475
5a9473:	b0 01                	mov    $0x1,%al
5a9475:	5d                   	pop    %ebp
5a9476:	c2 08 00             	ret    $0x8
5a9479:	8d 40 00             	lea    0x0(%eax),%eax
5a947c:	8a 08                	mov    (%eax),%cl
5a947e:	8a 2a                	mov    (%edx),%ch
5a9480:	88 0a                	mov    %cl,(%edx)
5a9482:	88 28                	mov    %ch,(%eax)
5a9484:	c3                   	ret
5a9485:	8d 40 00             	lea    0x0(%eax),%eax
5a9488:	55                   	push   %ebp
5a9489:	8b ec                	mov    %esp,%ebp
5a948b:	53                   	push   %ebx
5a948c:	56                   	push   %esi
5a948d:	8b da                	mov    %edx,%ebx
5a948f:	8b 75 08             	mov    0x8(%ebp),%esi
5a9492:	8b 10                	mov    (%eax),%edx
5a9494:	3b 11                	cmp    (%ecx),%edx
5a9496:	7e 07                	jle    0x5a949f
5a9498:	8b d1                	mov    %ecx,%edx
5a949a:	e8 a9 ff ff ff       	call   0x5a9448
5a949f:	8b 03                	mov    (%ebx),%eax
5a94a1:	3b 06                	cmp    (%esi),%eax
5a94a3:	7e 09                	jle    0x5a94ae
5a94a5:	8b d6                	mov    %esi,%edx
5a94a7:	8b c3                	mov    %ebx,%eax
5a94a9:	e8 9a ff ff ff       	call   0x5a9448
5a94ae:	5e                   	pop    %esi
5a94af:	5b                   	pop    %ebx
5a94b0:	5d                   	pop    %ebp
5a94b1:	c2 04 00             	ret    $0x4
5a94b4:	53                   	push   %ebx
5a94b5:	56                   	push   %esi
5a94b6:	84 d2                	test   %dl,%dl
5a94b8:	74 08                	je     0x5a94c2
5a94ba:	83 c4 f0             	add    $0xfffffff0,%esp
5a94bd:	e8 1a a9 e5 ff       	call   0x403ddc
5a94c2:	8b da                	mov    %edx,%ebx
5a94c4:	8b f0                	mov    %eax,%esi
5a94c6:	33 d2                	xor    %edx,%edx
5a94c8:	8b c6                	mov    %esi,%eax
5a94ca:	e8 89 b1 e7 ff       	call   0x424658
5a94cf:	b2 01                	mov    $0x1,%dl
5a94d1:	a1 18 ff 5e 00       	mov    0x5eff18,%eax
5a94d6:	e8 c9 e0 04 00       	call   0x5f75a4
5a94db:	89 46 58             	mov    %eax,0x58(%esi)
5a94de:	c6 46 5c 01          	movb   $0x1,0x5c(%esi)
5a94e2:	c7 46 38 ff ff ff ff 	movl   $0xffffffff,0x38(%esi)
5a94e9:	33 c0                	xor    %eax,%eax
5a94eb:	89 46 48             	mov    %eax,0x48(%esi)
5a94ee:	89 46 4c             	mov    %eax,0x4c(%esi)
5a94f1:	33 c0                	xor    %eax,%eax
5a94f3:	89 46 78             	mov    %eax,0x78(%esi)
5a94f6:	33 c0                	xor    %eax,%eax
5a94f8:	89 46 34             	mov    %eax,0x34(%esi)
5a94fb:	33 c0                	xor    %eax,%eax
5a94fd:	89 46 50             	mov    %eax,0x50(%esi)
5a9500:	a0 9c 95 5a 00       	mov    0x5a959c,%al
5a9505:	88 46 41             	mov    %al,0x41(%esi)
5a9508:	33 c0                	xor    %eax,%eax
5a950a:	89 86 80 00 00 00    	mov    %eax,0x80(%esi)
5a9510:	89 86 84 00 00 00    	mov    %eax,0x84(%esi)
5a9516:	b2 01                	mov    $0x1,%dl
5a9518:	a1 24 94 41 00       	mov    0x419424,%eax
5a951d:	e8 26 a5 e5 ff       	call   0x403a48
5a9522:	89 46 60             	mov    %eax,0x60(%esi)
5a9525:	b2 01                	mov    $0x1,%dl
5a9527:	a1 24 94 41 00       	mov    0x419424,%eax
5a952c:	e8 17 a5 e5 ff       	call   0x403a48
5a9531:	89 46 70             	mov    %eax,0x70(%esi)
5a9534:	c6 46 64 01          	movb   $0x1,0x64(%esi)
5a9538:	c6 46 30 01          	movb   $0x1,0x30(%esi)
5a953c:	33 c0                	xor    %eax,%eax
5a953e:	89 46 3c             	mov    %eax,0x3c(%esi)
5a9541:	c6 46 40 00          	movb   $0x0,0x40(%esi)
5a9545:	b2 01                	mov    $0x1,%dl
5a9547:	a1 10 61 42 00       	mov    0x426110,%eax
5a954c:	e8 73 e3 e7 ff       	call   0x4278c4
5a9551:	89 46 44             	mov    %eax,0x44(%esi)
5a9554:	c7 46 68 01 00 00 00 	movl   $0x1,0x68(%esi)
5a955b:	b2 01                	mov    $0x1,%dl
5a955d:	a1 88 9a 41 00       	mov    0x419a88,%eax
5a9562:	e8 e1 a4 e5 ff       	call   0x403a48
5a9567:	89 46 6c             	mov    %eax,0x6c(%esi)
5a956a:	b2 01                	mov    $0x1,%dl
5a956c:	a1 88 9a 41 00       	mov    0x419a88,%eax
5a9571:	e8 d2 a4 e5 ff       	call   0x403a48
5a9576:	89 46 74             	mov    %eax,0x74(%esi)
5a9579:	8d 46 54             	lea    0x54(%esi),%eax
5a957c:	e8 e7 b2 e5 ff       	call   0x404868
5a9581:	8b c6                	mov    %esi,%eax
5a9583:	84 db                	test   %bl,%bl
5a9585:	74 0f                	je     0x5a9596
5a9587:	e8 a8 a8 e5 ff       	call   0x403e34
5a958c:	64 8f 05 00 00 00 00 	pop    %fs:0x0
5a9593:	83 c4 0c             	add    $0xc,%esp
5a9596:	8b c6                	mov    %esi,%eax
5a9598:	5e                   	pop    %esi
5a9599:	5b                   	pop    %ebx
5a959a:	c3                   	ret
5a959b:	00 00                	add    %al,(%eax)
5a959d:	00 00                	add    %al,(%eax)
5a959f:	00 53 56             	add    %dl,0x56(%ebx)
5a95a2:	e8 9d a8 e5 ff       	call   0x403e44
5a95a7:	8b da                	mov    %edx,%ebx
5a95a9:	8b f0                	mov    %eax,%esi
5a95ab:	8b 46 34             	mov    0x34(%esi),%eax
5a95ae:	85 c0                	test   %eax,%eax
5a95b0:	74 08                	je     0x5a95ba
5a95b2:	8b 56 38             	mov    0x38(%esi),%edx
5a95b5:	e8 d2 cb 01 00       	call   0x5c618c
5a95ba:	8b c6                	mov    %esi,%eax
5a95bc:	e8 97 00 00 00       	call   0x5a9658
5a95c1:	8b c6                	mov    %esi,%eax
5a95c3:	e8 c4 00 00 00       	call   0x5a968c