405149:	a4                   	movsb  %ds:(%esi),%es:(%edi)
40514a:	76 00                	jbe    0x40514c
40514c:	70 6f                	jo     0x4051bd
40514e:	4b                   	dec    %ebx
40514f:	00 00                	add    %al,(%eax)
405151:	0a 00                	or     (%eax),%al
405153:	02 7b 3f             	add    0x3f(%ebx),%bh
405156:	00 00                	add    %al,(%eax)
405158:	04 1f                	add    $0x1f,%al
40515a:	47                   	inc    %edi
40515b:	1f                   	pop    %ds
40515c:	15 73 43 00 00       	adc    $0x4373,%eax
405161:	0a 6f 4c             	or     0x4c(%edi),%ch
405164:	00 00                	add    %al,(%eax)
405166:	0a 00                	or     (%eax),%al
405168:	02 7b 3f             	add    0x3f(%ebx),%bh
40516b:	00 00                	add    %al,(%eax)
40516d:	04 1e                	add    $0x1e,%al
40516f:	6f                   	outsl  %ds:(%esi),(%dx)
405170:	55                   	push   %ebp
405171:	00 00                	add    %al,(%eax)
405173:	0a 00                	or     (%eax),%al
405175:	02 7b 3f             	add    0x3f(%ebx),%bh
405178:	00 00                	add    %al,(%eax)
40517a:	04 72                	add    $0x72,%al
40517c:	ca 76 00             	lret   $0x76
40517f:	70 6f                	jo     0x4051f0
405181:	2d 00 00 0a 00       	sub    $0xa0000,%eax
405186:	02 7b 40             	add    0x40(%ebx),%bh
405189:	00 00                	add    %al,(%eax)
40518b:	04 17                	add    $0x17,%al
40518d:	6f                   	outsl  %ds:(%esi),(%dx)
40518e:	52                   	push   %edx
40518f:	00 00                	add    %al,(%eax)
405191:	0a 00                	or     (%eax),%al
405193:	02 7b 40             	add    0x40(%ebx),%bh
405196:	00 00                	add    %al,(%eax)
405198:	04 72                	add    $0x72,%al
40519a:	4e                   	dec    %esi
40519b:	73 00                	jae    0x40519d
40519d:	70 22                	jo     0x4051c1
40519f:	00 00                	add    %al,(%eax)
4051a1:	60                   	pusha
4051a2:	41                   	inc    %ecx
4051a3:	73 53                	jae    0x4051f8
4051a5:	00 00                	add    %al,(%eax)
4051a7:	0a 6f 54             	or     0x54(%edi),%ch
4051aa:	00 00                	add    %al,(%eax)
4051ac:	0a 00                	or     (%eax),%al
4051ae:	02 7b 40             	add    0x40(%ebx),%bh
4051b1:	00 00                	add    %al,(%eax)
4051b3:	04 20                	add    $0x20,%al
4051b5:	0e                   	push   %cs
4051b6:	01 00                	add    %eax,(%eax)
4051b8:	00 1f                	add    %bl,(%edi)
4051ba:	1e                   	push   %ds
4051bb:	73 47                	jae    0x405204
4051bd:	00 00                	add    %al,(%eax)
4051bf:	0a 6f 48             	or     0x48(%edi),%ch
4051c2:	00 00                	add    %al,(%eax)
4051c4:	0a 00                	or     (%eax),%al
4051c6:	02 7b 40             	add    0x40(%ebx),%bh
4051c9:	00 00                	add    %al,(%eax)
4051cb:	04 72                	add    $0x72,%al
4051cd:	da 76 00             	fidivl 0x0(%esi)
4051d0:	70 6f                	jo     0x405241
4051d2:	4b                   	dec    %ebx
4051d3:	00 00                	add    %al,(%eax)
4051d5:	0a 00                	or     (%eax),%al
4051d7:	02 7b 40             	add    0x40(%ebx),%bh
4051da:	00 00                	add    %al,(%eax)
4051dc:	04 1f                	add    $0x1f,%al
4051de:	13 1f                	adc    (%edi),%ebx
4051e0:	15 73 43 00 00       	adc    $0x4373,%eax
4051e5:	0a 6f 4c             	or     0x4c(%edi),%ch
4051e8:	00 00                	add    %al,(%eax)
4051ea:	0a 00                	or     (%eax),%al
4051ec:	02 7b 40             	add    0x40(%ebx),%bh
4051ef:	00 00                	add    %al,(%eax)
4051f1:	04 1f                	add    $0x1f,%al
4051f3:	09 6f 55             	or     %ebp,0x55(%edi)
4051f6:	00 00                	add    %al,(%eax)
4051f8:	0a 00                	or     (%eax),%al
4051fa:	02 7b 40             	add    0x40(%ebx),%bh
4051fd:	00 00                	add    %al,(%eax)
4051ff:	04 72                	add    $0x72,%al
405201:	04 77                	add    $0x77,%al
405203:	00 70 6f             	add    %dh,0x6f(%eax)
405206:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40520b:	02 7b 41             	add    0x41(%ebx),%bh
40520e:	00 00                	add    %al,(%eax)
405210:	04 17                	add    $0x17,%al
405212:	6f                   	outsl  %ds:(%esi),(%dx)
405213:	52                   	push   %edx
405214:	00 00                	add    %al,(%eax)
405216:	0a 00                	or     (%eax),%al
405218:	02 7b 41             	add    0x41(%ebx),%bh
40521b:	00 00                	add    %al,(%eax)
40521d:	04 72                	add    $0x72,%al
40521f:	4e                   	dec    %esi
405220:	73 00                	jae    0x405222
405222:	70 22                	jo     0x405246
405224:	00 00                	add    %al,(%eax)
405226:	60                   	pusha
405227:	41                   	inc    %ecx
405228:	73 53                	jae    0x40527d
40522a:	00 00                	add    %al,(%eax)
40522c:	0a 6f 54             	or     0x54(%edi),%ch
40522f:	00 00                	add    %al,(%eax)
405231:	0a 00                	or     (%eax),%al
405233:	02 7b 41             	add    0x41(%ebx),%bh
405236:	00 00                	add    %al,(%eax)
405238:	04 28                	add    $0x28,%al
40523a:	64 00 00             	add    %al,%fs:(%eax)
40523d:	0a 6f 65             	or     0x65(%edi),%ch
405240:	00 00                	add    %al,(%eax)
405242:	0a 00                	or     (%eax),%al
405244:	02 7b 41             	add    0x41(%ebx),%bh
405247:	00 00                	add    %al,(%eax)
405249:	04 20                	add    $0x20,%al
40524b:	cc                   	int3
40524c:	00 00                	add    %al,(%eax)
40524e:	00 1f                	add    %bl,(%edi)
405250:	33 73 47             	xor    0x47(%ebx),%esi
405253:	00 00                	add    %al,(%eax)
405255:	0a 6f 48             	or     0x48(%edi),%ch
405258:	00 00                	add    %al,(%eax)
40525a:	0a 00                	or     (%eax),%al
40525c:	02 7b 41             	add    0x41(%ebx),%bh
40525f:	00 00                	add    %al,(%eax)
405261:	04 72                	add    $0x72,%al
405263:	08 77 00             	or     %dh,0x0(%edi)
405266:	70 6f                	jo     0x4052d7
405268:	4b                   	dec    %ebx
405269:	00 00                	add    %al,(%eax)
40526b:	0a 00                	or     (%eax),%al
40526d:	02 7b 41             	add    0x41(%ebx),%bh
405270:	00 00                	add    %al,(%eax)
405272:	04 20                	add    $0x20,%al
405274:	8b 00                	mov    (%eax),%eax
405276:	00 00                	add    %al,(%eax)
405278:	1f                   	pop    %ds
405279:	15 73 43 00 00       	adc    $0x4373,%eax
40527e:	0a 6f 4c             	or     0x4c(%edi),%ch
405281:	00 00                	add    %al,(%eax)
405283:	0a 00                	or     (%eax),%al
405285:	02 7b 41             	add    0x41(%ebx),%bh
405288:	00 00                	add    %al,(%eax)
40528a:	04 1f                	add    $0x1f,%al
40528c:	0a 6f 55             	or     0x55(%edi),%ch
40528f:	00 00                	add    %al,(%eax)
405291:	0a 00                	or     (%eax),%al
405293:	02 7b 41             	add    0x41(%ebx),%bh
405296:	00 00                	add    %al,(%eax)
405298:	04 72                	add    $0x72,%al
40529a:	2c 77                	sub    $0x77,%al
40529c:	00 70 6f             	add    %dh,0x6f(%eax)
40529f:	2d 00 00 0a 00       	sub    $0xa0000,%eax
4052a4:	02 7b 42             	add    0x42(%ebx),%bh
4052a7:	00 00                	add    %al,(%eax)
4052a9:	04 17                	add    $0x17,%al
4052ab:	6f                   	outsl  %ds:(%esi),(%dx)
4052ac:	52                   	push   %edx
4052ad:	00 00                	add    %al,(%eax)
4052af:	0a 00                	or     (%eax),%al
4052b1:	02 7b 42             	add    0x42(%ebx),%bh
4052b4:	00 00                	add    %al,(%eax)
4052b6:	04 72                	add    $0x72,%al
4052b8:	4e                   	dec    %esi
4052b9:	73 00                	jae    0x4052bb
4052bb:	70 22                	jo     0x4052df
4052bd:	00 00                	add    %al,(%eax)
4052bf:	60                   	pusha
4052c0:	41                   	inc    %ecx
4052c1:	73 53                	jae    0x405316
4052c3:	00 00                	add    %al,(%eax)
4052c5:	0a 6f 54             	or     0x54(%edi),%ch
4052c8:	00 00                	add    %al,(%eax)
4052ca:	0a 00                	or     (%eax),%al
4052cc:	02 7b 42             	add    0x42(%ebx),%bh
4052cf:	00 00                	add    %al,(%eax)
4052d1:	04 20                	add    $0x20,%al
4052d3:	cc                   	int3
4052d4:	00 00                	add    %al,(%eax)
4052d6:	00 1f                	add    %bl,(%edi)
4052d8:	48                   	dec    %eax
4052d9:	73 47                	jae    0x405322
4052db:	00 00                	add    %al,(%eax)
4052dd:	0a 6f 48             	or     0x48(%edi),%ch
4052e0:	00 00                	add    %al,(%eax)
4052e2:	0a 00                	or     (%eax),%al
4052e4:	02 7b 42             	add    0x42(%ebx),%bh
4052e7:	00 00                	add    %al,(%eax)
4052e9:	04 72                	add    $0x72,%al
4052eb:	50                   	push   %eax
4052ec:	77 00                	ja     0x4052ee
4052ee:	70 6f                	jo     0x40535f
4052f0:	4b                   	dec    %ebx
4052f1:	00 00                	add    %al,(%eax)
4052f3:	0a 00                	or     (%eax),%al
4052f5:	02 7b 42             	add    0x42(%ebx),%bh
4052f8:	00 00                	add    %al,(%eax)
4052fa:	04 1f                	add    $0x1f,%al
4052fc:	49                   	dec    %ecx
4052fd:	1f                   	pop    %ds
4052fe:	15 73 43 00 00       	adc    $0x4373,%eax
405303:	0a 6f 4c             	or     0x4c(%edi),%ch
405306:	00 00                	add    %al,(%eax)
405308:	0a 00                	or     (%eax),%al
40530a:	02 7b 42             	add    0x42(%ebx),%bh
40530d:	00 00                	add    %al,(%eax)
40530f:	04 1f                	add    $0x1f,%al
405311:	0b 6f 55             	or     0x55(%edi),%ebp
405314:	00 00                	add    %al,(%eax)
405316:	0a 00                	or     (%eax),%al
405318:	02 7b 42             	add    0x42(%ebx),%bh
40531b:	00 00                	add    %al,(%eax)
40531d:	04 72                	add    $0x72,%al
40531f:	74 77                	je     0x405398
405321:	00 70 6f             	add    %dh,0x6f(%eax)
405324:	2d 00 00 0a 00       	sub    $0xa0000,%eax
405329:	02 7b 43             	add    0x43(%ebx),%bh
40532c:	00 00                	add    %al,(%eax)
40532e:	04 17                	add    $0x17,%al
405330:	6f                   	outsl  %ds:(%esi),(%dx)
405331:	52                   	push   %edx
405332:	00 00                	add    %al,(%eax)
405334:	0a 00                	or     (%eax),%al
405336:	02 7b 43             	add    0x43(%ebx),%bh
405339:	00 00                	add    %al,(%eax)
40533b:	04 72                	add    $0x72,%al
40533d:	4e                   	dec    %esi
40533e:	73 00                	jae    0x405340
405340:	70 22                	jo     0x405364
405342:	00 00                	add    %al,(%eax)
405344:	60                   	pusha
405345:	41                   	inc    %ecx
405346:	73 53                	jae    0x40539b
405348:	00 00                	add    %al,(%eax)
40534a:	0a 6f 54             	or     0x54(%edi),%ch
40534d:	00 00                	add    %al,(%eax)
40534f:	0a 00                	or     (%eax),%al
405351:	02 7b 43             	add    0x43(%ebx),%bh
405354:	00 00                	add    %al,(%eax)
405356:	04 20                	add    $0x20,%al
405358:	cc                   	int3
405359:	00 00                	add    %al,(%eax)
40535b:	00 1f                	add    %bl,(%edi)
40535d:	5d                   	pop    %ebp
40535e:	73 47                	jae    0x4053a7
405360:	00 00                	add    %al,(%eax)
405362:	0a 6f 48             	or     0x48(%edi),%ch
405365:	00 00                	add    %al,(%eax)
405367:	0a 00                	or     (%eax),%al
405369:	02 7b 43             	add    0x43(%ebx),%bh
40536c:	00 00                	add    %al,(%eax)
40536e:	04 72                	add    $0x72,%al
405370:	84 77 00             	test   %dh,0x0(%edi)
405373:	70 6f                	jo     0x4053e4
405375:	4b                   	dec    %ebx
405376:	00 00                	add    %al,(%eax)
405378:	0a 00                	or     (%eax),%al
40537a:	02 7b 43             	add    0x43(%ebx),%bh
40537d:	00 00                	add    %al,(%eax)
40537f:	04 1f                	add    $0x1f,%al
405381:	4b                   	dec    %ebx
405382:	1f                   	pop    %ds
405383:	15 73 43 00 00       	adc    $0x4373,%eax
405388:	0a 6f 4c             	or     0x4c(%edi),%ch
40538b:	00 00                	add    %al,(%eax)
40538d:	0a 00                	or     (%eax),%al
40538f:	02 7b 43             	add    0x43(%ebx),%bh
405392:	00 00                	add    %al,(%eax)
405394:	04 1f                	add    $0x1f,%al
405396:	0c 6f                	or     $0x6f,%al
405398:	55                   	push   %ebp
405399:	00 00                	add    %al,(%eax)
40539b:	0a 00                	or     (%eax),%al
40539d:	02 7b 43             	add    0x43(%ebx),%bh
4053a0:	00 00                	add    %al,(%eax)
4053a2:	04 72                	add    $0x72,%al
4053a4:	a4                   	movsb  %ds:(%esi),%es:(%edi)
4053a5:	74 00                	je     0x4053a7
4053a7:	70 6f                	jo     0x405418
4053a9:	2d 00 00 0a 00       	sub    $0xa0000,%eax
4053ae:	02 7b 44             	add    0x44(%ebx),%bh
4053b1:	00 00                	add    %al,(%eax)
4053b3:	04 17                	add    $0x17,%al
4053b5:	6f                   	outsl  %ds:(%esi),(%dx)
4053b6:	52                   	push   %edx
4053b7:	00 00                	add    %al,(%eax)
4053b9:	0a 00                	or     (%eax),%al
4053bb:	02 7b 44             	add    0x44(%ebx),%bh
4053be:	00 00                	add    %al,(%eax)
4053c0:	04 72                	add    $0x72,%al
4053c2:	4e                   	dec    %esi
4053c3:	73 00                	jae    0x4053c5
4053c5:	70 22                	jo     0x4053e9
4053c7:	00 00                	add    %al,(%eax)
4053c9:	60                   	pusha
4053ca:	41                   	inc    %ecx
4053cb:	73 53                	jae    0x405420
4053cd:	00 00                	add    %al,(%eax)
4053cf:	0a 6f 54             	or     0x54(%edi),%ch
4053d2:	00 00                	add    %al,(%eax)
4053d4:	0a 00                	or     (%eax),%al
4053d6:	02 7b 44             	add    0x44(%ebx),%bh
4053d9:	00 00                	add    %al,(%eax)
4053db:	04 20                	add    $0x20,%al
4053dd:	cc                   	int3
4053de:	00 00                	add    %al,(%eax)
4053e0:	00 20                	add    %ah,(%eax)
4053e2:	87 00                	xchg   %eax,(%eax)
4053e4:	00 00                	add    %al,(%eax)
4053e6:	73 47                	jae    0x40542f
4053e8:	00 00                	add    %al,(%eax)
4053ea:	0a 6f 48             	or     0x48(%edi),%ch
4053ed:	00 00                	add    %al,(%eax)
4053ef:	0a 00                	or     (%eax),%al
4053f1:	02 7b 44             	add    0x44(%ebx),%bh
4053f4:	00 00                	add    %al,(%eax)
4053f6:	04 72                	add    $0x72,%al
4053f8:	aa                   	stos   %al,%es:(%edi)
4053f9:	77 00                	ja     0x4053fb
4053fb:	70 6f                	jo     0x40546c
4053fd:	4b                   	dec    %ebx
4053fe:	00 00                	add    %al,(%eax)
405400:	0a 00                	or     (%eax),%al
405402:	02 7b 44             	add    0x44(%ebx),%bh
405405:	00 00                	add    %al,(%eax)
405407:	04 1f                	add    $0x1f,%al
405409:	3f                   	aas
40540a:	1f                   	pop    %ds
40540b:	15 73 43 00 00       	adc    $0x4373,%eax
405410:	0a 6f 4c             	or     0x4c(%edi),%ch
405413:	00 00                	add    %al,(%eax)
405415:	0a 00                	or     (%eax),%al
405417:	02 7b 44             	add    0x44(%ebx),%bh
40541a:	00 00                	add    %al,(%eax)
40541c:	04 1f                	add    $0x1f,%al
40541e:	0d 6f 55 00 00       	or     $0x556f,%eax
405423:	0a 00                	or     (%eax),%al
405425:	02 7b 44             	add    0x44(%ebx),%bh
405428:	00 00                	add    %al,(%eax)
40542a:	04 72                	add    $0x72,%al
40542c:	fc                   	cld
40542d:	74 00                	je     0x40542f
40542f:	70 6f                	jo     0x4054a0
405431:	2d 00 00 0a 00       	sub    $0xa0000,%eax
405436:	02 7b 45             	add    0x45(%ebx),%bh