411028:	56                   	push   %esi
411029:	57                   	push   %edi
41102a:	89 d6                	mov    %edx,%esi
41102c:	8b 56 10             	mov    0x10(%esi),%edx
41102f:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
411035:	75 02                	jne    0x411039
411037:	89 ca                	mov    %ecx,%edx
411039:	8b 7e 08             	mov    0x8(%esi),%edi
41103c:	80 7e 0b fe          	cmpb   $0xfe,0xb(%esi)
411040:	77 11                	ja     0x411053
411042:	72 0a                	jb     0x41104e
411044:	0f bf ff             	movswl %di,%edi
411047:	03 38                	add    (%eax),%edi
411049:	ff 17                	call   *(%edi)
41104b:	5f                   	pop    %edi
41104c:	5e                   	pop    %esi
41104d:	c3                   	ret
41104e:	ff d7                	call   *%edi
411050:	5f                   	pop    %edi
411051:	5e                   	pop    %esi
411052:	c3                   	ret
411053:	81 e7 ff ff ff 00    	and    $0xffffff,%edi
411059:	01 f8                	add    %edi,%eax
41105b:	89 ca                	mov    %ecx,%edx
41105d:	e8 b2 ff ff ff       	call   0x411014
411062:	5f                   	pop    %edi
411063:	5e                   	pop    %esi
411064:	c3                   	ret
411065:	8d 40 00             	lea    0x0(%eax),%eax
411068:	55                   	push   %ebp
411069:	8b ec                	mov    %esp,%ebp
41106b:	6a 00                	push   $0x0
41106d:	53                   	push   %ebx
41106e:	56                   	push   %esi
41106f:	57                   	push   %edi
411070:	8b f9                	mov    %ecx,%edi
411072:	8b f2                	mov    %edx,%esi
411074:	8b d8                	mov    %eax,%ebx
411076:	33 c0                	xor    %eax,%eax
411078:	55                   	push   %ebp
411079:	68 b0 10 41 00       	push   $0x4110b0
41107e:	64 ff 30             	push   %fs:(%eax)
411081:	64 89 20             	mov    %esp,%fs:(%eax)
411084:	8d 45 fc             	lea    -0x4(%ebp),%eax
411087:	8b d7                	mov    %edi,%edx
411089:	e8 0e 3d ff ff       	call   0x404d9c
41108e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
411091:	8b d6                	mov    %esi,%edx
411093:	8b c3                	mov    %ebx,%eax
411095:	e8 52 00 00 00       	call   0x4110ec
41109a:	33 c0                	xor    %eax,%eax
41109c:	5a                   	pop    %edx
41109d:	59                   	pop    %ecx
41109e:	59                   	pop    %ecx
41109f:	64 89 10             	mov    %edx,%fs:(%eax)
4110a2:	68 b7 10 41 00       	push   $0x4110b7
4110a7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4110aa:	e8 a1 3b ff ff       	call   0x404c50
4110af:	c3                   	ret
4110b0:	e9 97 2e ff ff       	jmp    0x403f4c
4110b5:	eb f0                	jmp    0x4110a7
4110b7:	5f                   	pop    %edi
4110b8:	5e                   	pop    %esi
4110b9:	5b                   	pop    %ebx
4110ba:	59                   	pop    %ecx
4110bb:	5d                   	pop    %ebp
4110bc:	c3                   	ret
4110bd:	8d 40 00             	lea    0x0(%eax),%eax
4110c0:	53                   	push   %ebx
4110c1:	8b 1a                	mov    (%edx),%ebx
4110c3:	8b 1b                	mov    (%ebx),%ebx
4110c5:	8a 1b                	mov    (%ebx),%bl
4110c7:	80 eb 05             	sub    $0x5,%bl
4110ca:	74 0b                	je     0x4110d7
4110cc:	80 eb 05             	sub    $0x5,%bl
4110cf:	74 0d                	je     0x4110de
4110d1:	fe cb                	dec    %bl
4110d3:	74 10                	je     0x4110e5
4110d5:	eb 13                	jmp    0x4110ea
4110d7:	e8 04 ff ff ff       	call   0x410fe0
4110dc:	5b                   	pop    %ebx
4110dd:	c3                   	ret
4110de:	e8 45 ff ff ff       	call   0x411028
4110e3:	5b                   	pop    %ebx
4110e4:	c3                   	ret
4110e5:	e8 7e ff ff ff       	call   0x411068
4110ea:	5b                   	pop    %ebx
4110eb:	c3                   	ret
4110ec:	55                   	push   %ebp
4110ed:	8b ec                	mov    %esp,%ebp
4110ef:	83 c4 f0             	add    $0xfffffff0,%esp
4110f2:	53                   	push   %ebx
4110f3:	56                   	push   %esi
4110f4:	57                   	push   %edi
4110f5:	33 db                	xor    %ebx,%ebx
4110f7:	89 5d f0             	mov    %ebx,-0x10(%ebp)
4110fa:	8b f9                	mov    %ecx,%edi
4110fc:	8b da                	mov    %edx,%ebx
4110fe:	8b f0                	mov    %eax,%esi
411100:	33 c0                	xor    %eax,%eax
411102:	55                   	push   %ebp
411103:	68 b3 11 41 00       	push   $0x4111b3
411108:	64 ff 30             	push   %fs:(%eax)
41110b:	64 89 20             	mov    %esp,%fs:(%eax)
41110e:	8b 03                	mov    (%ebx),%eax
411110:	8b 00                	mov    (%eax),%eax
411112:	8a 00                	mov    (%eax),%al
411114:	2c 05                	sub    $0x5,%al
411116:	74 0a                	je     0x411122
411118:	2c 05                	sub    $0x5,%al
41111a:	74 06                	je     0x411122
41111c:	fe c8                	dec    %al
41111e:	74 1a                	je     0x41113a
411120:	eb 7b                	jmp    0x41119d
411122:	8d 45 f0             	lea    -0x10(%ebp),%eax
411125:	8b d7                	mov    %edi,%edx
411127:	e8 cc 36 ff ff       	call   0x4047f8
41112c:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41112f:	8b d3                	mov    %ebx,%edx
411131:	8b c6                	mov    %esi,%eax
411133:	e8 88 ff ff ff       	call   0x4110c0
411138:	eb 63                	jmp    0x41119d
41113a:	8b 43 08             	mov    0x8(%ebx),%eax
41113d:	8b d0                	mov    %eax,%edx
41113f:	81 e2 00 00 00 ff    	and    $0xff000000,%edx
411145:	81 fa 00 00 00 ff    	cmp    $0xff000000,%edx
41114b:	75 16                	jne    0x411163
41114d:	25 ff ff ff 00       	and    $0xffffff,%eax
411152:	03 c6                	add    %esi,%eax
411154:	89 45 fc             	mov    %eax,-0x4(%ebp)
411157:	8b 45 fc             	mov    -0x4(%ebp),%eax
41115a:	8b d7                	mov    %edi,%edx
41115c:	e8 2b 3b ff ff       	call   0x404c8c
411161:	eb 3a                	jmp    0x41119d
411163:	81 fa 00 00 00 fe    	cmp    $0xfe000000,%edx
411169:	75 0e                	jne    0x411179
41116b:	8b 16                	mov    (%esi),%edx
41116d:	0f bf c0             	movswl %ax,%eax
411170:	03 d0                	add    %eax,%edx
411172:	8b 02                	mov    (%edx),%eax
411174:	89 45 f4             	mov    %eax,-0xc(%ebp)
411177:	eb 03                	jmp    0x41117c
411179:	89 45 f4             	mov    %eax,-0xc(%ebp)
41117c:	89 75 f8             	mov    %esi,-0x8(%ebp)
41117f:	8b 43 10             	mov    0x10(%ebx),%eax
411182:	3d 00 00 00 80       	cmp    $0x80000000,%eax
411187:	75 0a                	jne    0x411193
411189:	8b d7                	mov    %edi,%edx
41118b:	8b 45 f8             	mov    -0x8(%ebp),%eax
41118e:	ff 55 f4             	call   *-0xc(%ebp)
411191:	eb 0a                	jmp    0x41119d
411193:	8b cf                	mov    %edi,%ecx
411195:	8b d0                	mov    %eax,%edx
411197:	8b 45 f8             	mov    -0x8(%ebp),%eax
41119a:	ff 55 f4             	call   *-0xc(%ebp)
41119d:	33 c0                	xor    %eax,%eax
41119f:	5a                   	pop    %edx
4111a0:	59                   	pop    %ecx
4111a1:	59                   	pop    %ecx
4111a2:	64 89 10             	mov    %edx,%fs:(%eax)
4111a5:	68 ba 11 41 00       	push   $0x4111ba
4111aa:	8d 45 f0             	lea    -0x10(%ebp),%eax
4111ad:	e8 be 33 ff ff       	call   0x404570
4111b2:	c3                   	ret
4111b3:	e9 94 2d ff ff       	jmp    0x403f4c
4111b8:	eb f0                	jmp    0x4111aa
4111ba:	5f                   	pop    %edi
4111bb:	5e                   	pop    %esi
4111bc:	5b                   	pop    %ebx
4111bd:	8b e5                	mov    %ebp,%esp
4111bf:	5d                   	pop    %ebp
4111c0:	c3                   	ret
4111c1:	8d 40 00             	lea    0x0(%eax),%eax
4111c4:	55                   	push   %ebp
4111c5:	8b ec                	mov    %esp,%ebp
4111c7:	83 c4 f4             	add    $0xfffffff4,%esp
4111ca:	53                   	push   %ebx
4111cb:	56                   	push   %esi
4111cc:	57                   	push   %edi
4111cd:	8b f2                	mov    %edx,%esi
4111cf:	8b f8                	mov    %eax,%edi
4111d1:	8b 5e 08             	mov    0x8(%esi),%ebx
4111d4:	8b 06                	mov    (%esi),%eax
4111d6:	8b 00                	mov    (%eax),%eax
4111d8:	e8 b3 fb ff ff       	call   0x410d90
4111dd:	8a 00                	mov    (%eax),%al
4111df:	8b d3                	mov    %ebx,%edx
4111e1:	81 e2 00 00 00 ff    	and    $0xff000000,%edx
4111e7:	81 fa 00 00 00 ff    	cmp    $0xff000000,%edx
4111ed:	0f 85 8b 00 00 00    	jne    0x41127e
4111f3:	81 e3 ff ff ff 00    	and    $0xffffff,%ebx
4111f9:	03 df                	add    %edi,%ebx
4111fb:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4111fe:	83 e0 7f             	and    $0x7f,%eax
411201:	83 f8 04             	cmp    $0x4,%eax
411204:	0f 87 b8 01 00 00    	ja     0x4113c2
41120a:	ff 24 85 11 12 41 00 	jmp    *0x411211(,%eax,4)
411211:	25 12 41 00 33       	and    $0x33004112,%eax
411216:	12 41 00             	adc    0x0(%ecx),%al
411219:	41                   	inc    %ecx
41121a:	12 41 00             	adc    0x0(%ecx),%al
41121d:	5c                   	pop    %esp
41121e:	12 41 00             	adc    0x0(%ecx),%al
411221:	6a 12                	push   $0x12
411223:	41                   	inc    %ecx
411224:	00 db                	add    %bl,%bl
411226:	6d                   	insl   (%dx),%es:(%edi)
411227:	08 8b 45 fc d9 18    	or     %cl,0x18d9fc45(%ebx)
41122d:	9b                   	fwait
41122e:	e9 8f 01 00 00       	jmp    0x4113c2
411233:	db 6d 08             	fldt   0x8(%ebp)
411236:	8b 45 fc             	mov    -0x4(%ebp),%eax
411239:	dd 18                	fstpl  (%eax)
41123b:	9b                   	fwait
41123c:	e9 81 01 00 00       	jmp    0x4113c2
411241:	8b 45 fc             	mov    -0x4(%ebp),%eax
411244:	8b 55 08             	mov    0x8(%ebp),%edx
411247:	89 10                	mov    %edx,(%eax)
411249:	8b 55 0c             	mov    0xc(%ebp),%edx
41124c:	89 50 04             	mov    %edx,0x4(%eax)
41124f:	66 8b 55 10          	mov    0x10(%ebp),%dx
411253:	66 89 50 08          	mov    %dx,0x8(%eax)
411257:	e9 66 01 00 00       	jmp    0x4113c2
41125c:	db 6d 08             	fldt   0x8(%ebp)
41125f:	8b 45 fc             	mov    -0x4(%ebp),%eax
411262:	df 38                	fistpll (%eax)
411264:	9b                   	fwait
411265:	e9 58 01 00 00       	jmp    0x4113c2
41126a:	db 6d 08             	fldt   0x8(%ebp)
41126d:	d8 0d cc 13 41 00    	fmuls  0x4113cc
411273:	8b 45 fc             	mov    -0x4(%ebp),%eax
411276:	df 38                	fistpll (%eax)
411278:	9b                   	fwait
411279:	e9 44 01 00 00       	jmp    0x4113c2
41127e:	81 fa 00 00 00 fe    	cmp    $0xfe000000,%edx
411284:	75 0e                	jne    0x411294
411286:	8b 17                	mov    (%edi),%edx
411288:	0f bf cb             	movswl %bx,%ecx
41128b:	03 d1                	add    %ecx,%edx
41128d:	8b 12                	mov    (%edx),%edx
41128f:	89 55 f4             	mov    %edx,-0xc(%ebp)
411292:	eb 03                	jmp    0x411297
411294:	89 5d f4             	mov    %ebx,-0xc(%ebp)
411297:	89 7d f8             	mov    %edi,-0x8(%ebp)
41129a:	8b 56 10             	mov    0x10(%esi),%edx
41129d:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4112a3:	0f 85 97 00 00 00    	jne    0x411340
4112a9:	83 e0 7f             	and    $0x7f,%eax
4112ac:	83 f8 04             	cmp    $0x4,%eax
4112af:	0f 87 0d 01 00 00    	ja     0x4113c2
4112b5:	ff 24 85 bc 12 41 00 	jmp    *0x4112bc(,%eax,4)
4112bc:	d0 12                	rclb   $1,(%edx)
4112be:	41                   	inc    %ecx
4112bf:	00 e5                	add    %ah,%ch
4112c1:	12 41 00             	adc    0x0(%ecx),%al
4112c4:	fa                   	cli
4112c5:	12 41 00             	adc    0x0(%ecx),%al
4112c8:	10 13                	adc    %dl,(%ebx)
4112ca:	41                   	inc    %ecx
4112cb:	00 25 13 41 00 db    	add    %ah,0xdb004113
4112d1:	6d                   	insl   (%dx),%es:(%edi)
4112d2:	08 83 c4 fc d9 1c    	or     %al,0x1cd9fcc4(%ebx)
4112d8:	24 9b                	and    $0x9b,%al
4112da:	8b 45 f8             	mov    -0x8(%ebp),%eax
4112dd:	ff 55 f4             	call   *-0xc(%ebp)
4112e0:	e9 dd 00 00 00       	jmp    0x4113c2
4112e5:	db 6d 08             	fldt   0x8(%ebp)
4112e8:	83 c4 f8             	add    $0xfffffff8,%esp
4112eb:	dd 1c 24             	fstpl  (%esp)
4112ee:	9b                   	fwait
4112ef:	8b 45 f8             	mov    -0x8(%ebp),%eax
4112f2:	ff 55 f4             	call   *-0xc(%ebp)
4112f5:	e9 c8 00 00 00       	jmp    0x4113c2
4112fa:	66 8b 45 10          	mov    0x10(%ebp),%ax
4112fe:	50                   	push   %eax
4112ff:	ff 75 0c             	push   0xc(%ebp)
411302:	ff 75 08             	push   0x8(%ebp)
411305:	8b 45 f8             	mov    -0x8(%ebp),%eax
411308:	ff 55 f4             	call   *-0xc(%ebp)
41130b:	e9 b2 00 00 00       	jmp    0x4113c2
411310:	db 6d 08             	fldt   0x8(%ebp)
411313:	83 c4 f8             	add    $0xfffffff8,%esp
411316:	df 3c 24             	fistpll (%esp)
411319:	9b                   	fwait
41131a:	8b 45 f8             	mov    -0x8(%ebp),%eax
41131d:	ff 55 f4             	call   *-0xc(%ebp)
411320:	e9 9d 00 00 00       	jmp    0x4113c2
411325:	db 6d 08             	fldt   0x8(%ebp)
411328:	d8 0d cc 13 41 00    	fmuls  0x4113cc
41132e:	83 c4 f8             	add    $0xfffffff8,%esp
411331:	df 3c 24             	fistpll (%esp)
411334:	9b                   	fwait
411335:	8b 45 f8             	mov    -0x8(%ebp),%eax
411338:	ff 55 f4             	call   *-0xc(%ebp)
41133b:	e9 82 00 00 00       	jmp    0x4113c2
411340:	83 e0 7f             	and    $0x7f,%eax
411343:	83 f8 04             	cmp    $0x4,%eax
411346:	77 7a                	ja     0x4113c2
411348:	ff 24 85 4f 13 41 00 	jmp    *0x41134f(,%eax,4)
41134f:	63 13                	arpl   %edx,(%ebx)
411351:	41                   	inc    %ecx
411352:	00 75 13             	add    %dh,0x13(%ebp)
411355:	41                   	inc    %ecx
411356:	00 87 13 41 00 9a    	add    %al,-0x65ffbeed(%edi)
41135c:	13 41 00             	adc    0x0(%ecx),%eax
41135f:	ac                   	lods   %ds:(%esi),%al
411360:	13 41 00             	adc    0x0(%ecx),%eax
411363:	db 6d 08             	fldt   0x8(%ebp)
411366:	83 c4 fc             	add    $0xfffffffc,%esp
411369:	d9 1c 24             	fstps  (%esp)
41136c:	9b                   	fwait
41136d:	8b 45 f8             	mov    -0x8(%ebp),%eax
411370:	ff 55 f4             	call   *-0xc(%ebp)
411373:	eb 4d                	jmp    0x4113c2
411375:	db 6d 08             	fldt   0x8(%ebp)
411378:	83 c4 f8             	add    $0xfffffff8,%esp
41137b:	dd 1c 24             	fstpl  (%esp)
41137e:	9b                   	fwait
41137f:	8b 45 f8             	mov    -0x8(%ebp),%eax
411382:	ff 55 f4             	call   *-0xc(%ebp)
411385:	eb 3b                	jmp    0x4113c2
411387:	66 8b 45 10          	mov    0x10(%ebp),%ax
41138b:	50                   	push   %eax
41138c:	ff 75 0c             	push   0xc(%ebp)
41138f:	ff 75 08             	push   0x8(%ebp)
411392:	8b 45 f8             	mov    -0x8(%ebp),%eax
411395:	ff 55 f4             	call   *-0xc(%ebp)
411398:	eb 28                	jmp    0x4113c2
41139a:	db 6d 08             	fldt   0x8(%ebp)
41139d:	83 c4 f8             	add    $0xfffffff8,%esp
4113a0:	df 3c 24             	fistpll (%esp)
4113a3:	9b                   	fwait
4113a4:	8b 45 f8             	mov    -0x8(%ebp),%eax
4113a7:	ff 55 f4             	call   *-0xc(%ebp)
4113aa:	eb 16                	jmp    0x4113c2
4113ac:	db 6d 08             	fldt   0x8(%ebp)
4113af:	d8 0d cc 13 41 00    	fmuls  0x4113cc
4113b5:	83 c4 f8             	add    $0xfffffff8,%esp
4113b8:	df 3c 24             	fistpll (%esp)
4113bb:	9b                   	fwait
4113bc:	8b 45 f8             	mov    -0x8(%ebp),%eax
4113bf:	ff 55 f4             	call   *-0xc(%ebp)
4113c2:	5f                   	pop    %edi
4113c3:	5e                   	pop    %esi
4113c4:	5b                   	pop    %ebx
4113c5:	8b e5                	mov    %ebp,%esp
4113c7:	5d                   	pop    %ebp
4113c8:	c2 0c 00             	ret    $0xc
4113cb:	00 00                	add    %al,(%eax)
4113cd:	40                   	inc    %eax