402dfb:	53                   	push   %ebx
402dfc:	e8 8f e4 ff ff       	call   0x401290
402e01:	48                   	dec    %eax
402e02:	0f 94 c0             	sete   %al
402e05:	5b                   	pop    %ebx
402e06:	c3                   	ret
402e07:	90                   	nop
402e08:	53                   	push   %ebx
402e09:	8b d8                	mov    %eax,%ebx
402e0b:	66 c7 43 04 b0 d7    	movw   $0xd7b0,0x4(%ebx)
402e11:	8b 03                	mov    (%ebx),%eax
402e13:	e8 e0 ff ff ff       	call   0x402df8
402e18:	84 c0                	test   %al,%al
402e1a:	75 07                	jne    0x402e23
402e1c:	e8 27 e5 ff ff       	call   0x401348
402e21:	5b                   	pop    %ebx
402e22:	c3                   	ret
402e23:	33 c0                	xor    %eax,%eax
402e25:	5b                   	pop    %ebx
402e26:	c3                   	ret
402e27:	90                   	nop
402e28:	56                   	push   %esi
402e29:	89 c6                	mov    %eax,%esi
402e2b:	31 c0                	xor    %eax,%eax
402e2d:	89 46 0c             	mov    %eax,0xc(%esi)
402e30:	89 46 10             	mov    %eax,0x10(%esi)
402e33:	66 8b 46 04          	mov    0x4(%esi),%ax
402e37:	2d b1 d7 00 00       	sub    $0xd7b1,%eax
402e3c:	74 0b                	je     0x402e49
402e3e:	48                   	dec    %eax
402e3f:	74 20                	je     0x402e61
402e41:	48                   	dec    %eax
402e42:	74 2e                	je     0x402e72
402e44:	e9 67 01 00 00       	jmp    0x402fb0
402e49:	b8 00 00 00 80       	mov    $0x80000000,%eax
402e4e:	ba 01 00 00 00       	mov    $0x1,%edx
402e53:	b9 03 00 00 00       	mov    $0x3,%ecx
402e58:	c7 46 1c 7c 2d 40 00 	movl   $0x402d7c,0x1c(%esi)
402e5f:	eb 27                	jmp    0x402e88
402e61:	b8 00 00 00 40       	mov    $0x40000000,%eax
402e66:	ba 01 00 00 00       	mov    $0x1,%edx
402e6b:	b9 02 00 00 00       	mov    $0x2,%ecx
402e70:	eb 0f                	jmp    0x402e81
402e72:	b8 00 00 00 c0       	mov    $0xc0000000,%eax
402e77:	ba 01 00 00 00       	mov    $0x1,%edx
402e7c:	b9 03 00 00 00       	mov    $0x3,%ecx
402e81:	c7 46 1c bc 2d 40 00 	movl   $0x402dbc,0x1c(%esi)
402e88:	c7 46 24 08 2e 40 00 	movl   $0x402e08,0x24(%esi)
402e8f:	c7 46 20 b8 2d 40 00 	movl   $0x402db8,0x20(%esi)
402e96:	80 7e 48 00          	cmpb   $0x0,0x48(%esi)
402e9a:	0f 84 b2 00 00 00    	je     0x402f52
402ea0:	6a 00                	push   $0x0
402ea2:	68 80 00 00 00       	push   $0x80
402ea7:	51                   	push   %ecx
402ea8:	6a 00                	push   $0x0
402eaa:	52                   	push   %edx
402eab:	50                   	push   %eax
402eac:	8d 46 48             	lea    0x48(%esi),%eax
402eaf:	50                   	push   %eax
402eb0:	e8 e3 e3 ff ff       	call   0x401298
402eb5:	83 f8 ff             	cmp    $0xffffffff,%eax
402eb8:	0f 84 08 01 00 00    	je     0x402fc6
402ebe:	89 06                	mov    %eax,(%esi)
402ec0:	66 81 7e 04 b3 d7    	cmpw   $0xd7b3,0x4(%esi)
402ec6:	0f 85 c3 00 00 00    	jne    0x402f8f
402ecc:	66 ff 4e 04          	decw   0x4(%esi)
402ed0:	6a 00                	push   $0x0
402ed2:	ff 36                	push   (%esi)
402ed4:	e8 d7 e3 ff ff       	call   0x4012b0
402ed9:	40                   	inc    %eax
402eda:	0f 84 e6 00 00 00    	je     0x402fc6
402ee0:	2d 81 00 00 00       	sub    $0x81,%eax
402ee5:	73 02                	jae    0x402ee9
402ee7:	31 c0                	xor    %eax,%eax
402ee9:	6a 00                	push   $0x0
402eeb:	6a 00                	push   $0x0
402eed:	50                   	push   %eax
402eee:	ff 36                	push   (%esi)
402ef0:	e8 eb e3 ff ff       	call   0x4012e0
402ef5:	40                   	inc    %eax
402ef6:	0f 84 ca 00 00 00    	je     0x402fc6
402efc:	6a 00                	push   $0x0
402efe:	89 e2                	mov    %esp,%edx
402f00:	6a 00                	push   $0x0
402f02:	52                   	push   %edx
402f03:	68 80 00 00 00       	push   $0x80
402f08:	8d 96 4c 01 00 00    	lea    0x14c(%esi),%edx
402f0e:	52                   	push   %edx
402f0f:	ff 36                	push   (%esi)
402f11:	e8 b2 e3 ff ff       	call   0x4012c8
402f16:	5a                   	pop    %edx
402f17:	48                   	dec    %eax
402f18:	0f 85 a8 00 00 00    	jne    0x402fc6
402f1e:	31 c0                	xor    %eax,%eax
402f20:	39 d0                	cmp    %edx,%eax
402f22:	73 6b                	jae    0x402f8f
402f24:	80 bc 06 4c 01 00 00 	cmpb   $0xe,0x14c(%esi,%eax,1)
402f2b:	0e
402f2c:	74 03                	je     0x402f31
402f2e:	40                   	inc    %eax
402f2f:	eb ef                	jmp    0x402f20
402f31:	6a 02                	push   $0x2
402f33:	6a 00                	push   $0x0
402f35:	29 d0                	sub    %edx,%eax
402f37:	50                   	push   %eax
402f38:	ff 36                	push   (%esi)
402f3a:	e8 a1 e3 ff ff       	call   0x4012e0
402f3f:	40                   	inc    %eax
402f40:	0f 84 80 00 00 00    	je     0x402fc6
402f46:	ff 36                	push   (%esi)
402f48:	e8 8b e3 ff ff       	call   0x4012d8
402f4d:	48                   	dec    %eax
402f4e:	75 76                	jne    0x402fc6
402f50:	eb 3d                	jmp    0x402f8f
402f52:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
402f58:	c7 46 08 80 00 00 00 	movl   $0x80,0x8(%esi)
402f5f:	c7 46 24 b8 2d 40 00 	movl   $0x402db8,0x24(%esi)
402f66:	89 46 14             	mov    %eax,0x14(%esi)
402f69:	66 81 7e 04 b2 d7    	cmpw   $0xd7b2,0x4(%esi)
402f6f:	74 04                	je     0x402f75
402f71:	6a f6                	push   $0xfffffff6
402f73:	eb 0e                	jmp    0x402f83
402f75:	81 fe e8 83 6a 00    	cmp    $0x6a83e8,%esi
402f7b:	75 04                	jne    0x402f81
402f7d:	6a f4                	push   $0xfffffff4
402f7f:	eb 02                	jmp    0x402f83
402f81:	6a f5                	push   $0xfffffff5
402f83:	e8 30 e3 ff ff       	call   0x4012b8
402f88:	83 f8 ff             	cmp    $0xffffffff,%eax
402f8b:	74 39                	je     0x402fc6
402f8d:	89 06                	mov    %eax,(%esi)
402f8f:	66 81 7e 04 b1 d7    	cmpw   $0xd7b1,0x4(%esi)
402f95:	74 17                	je     0x402fae
402f97:	ff 36                	push   (%esi)
402f99:	e8 02 e3 ff ff       	call   0x4012a0
402f9e:	85 c0                	test   %eax,%eax
402fa0:	74 10                	je     0x402fb2
402fa2:	83 f8 02             	cmp    $0x2,%eax
402fa5:	75 07                	jne    0x402fae
402fa7:	c7 46 20 bc 2d 40 00 	movl   $0x402dbc,0x20(%esi)
402fae:	31 c0                	xor    %eax,%eax
402fb0:	5e                   	pop    %esi
402fb1:	c3                   	ret
402fb2:	ff 36                	push   (%esi)
402fb4:	e8 d7 e2 ff ff       	call   0x401290
402fb9:	66 c7 46 04 b0 d7    	movw   $0xd7b0,0x4(%esi)
402fbf:	b8 69 00 00 00       	mov    $0x69,%eax
402fc4:	eb ea                	jmp    0x402fb0
402fc6:	66 c7 46 04 b0 d7    	movw   $0xd7b0,0x4(%esi)
402fcc:	e8 77 e3 ff ff       	call   0x401348
402fd1:	eb dd                	jmp    0x402fb0
402fd3:	c3                   	ret
402fd4:	53                   	push   %ebx
402fd5:	56                   	push   %esi
402fd6:	8b f2                	mov    %edx,%esi
402fd8:	8b d8                	mov    %eax,%ebx
402fda:	8b c3                	mov    %ebx,%eax
402fdc:	33 c9                	xor    %ecx,%ecx
402fde:	ba 4c 01 00 00       	mov    $0x14c,%edx
402fe3:	e8 58 02 00 00       	call   0x403240
402fe8:	8d 83 4c 01 00 00    	lea    0x14c(%ebx),%eax
402fee:	89 43 14             	mov    %eax,0x14(%ebx)
402ff1:	66 c7 43 04 b0 d7    	movw   $0xd7b0,0x4(%ebx)
402ff7:	33 c0                	xor    %eax,%eax
402ff9:	a0 24 a0 68 00       	mov    0x68a024,%al
402ffe:	66 89 43 06          	mov    %ax,0x6(%ebx)
403002:	c7 43 08 80 00 00 00 	movl   $0x80,0x8(%ebx)
403009:	c7 43 18 28 2e 40 00 	movl   $0x402e28,0x18(%ebx)
403010:	8b c6                	mov    %esi,%eax
403012:	e8 09 1b 00 00       	call   0x404b20
403017:	50                   	push   %eax
403018:	8b c6                	mov    %esi,%eax
40301a:	e8 f9 1c 00 00       	call   0x404d18
40301f:	8d 53 48             	lea    0x48(%ebx),%edx
403022:	59                   	pop    %ecx
403023:	e8 f8 f9 ff ff       	call   0x402a20
403028:	8b c6                	mov    %esi,%eax
40302a:	e8 f1 1a 00 00       	call   0x404b20
40302f:	c6 44 03 48 00       	movb   $0x0,0x48(%ebx,%eax,1)
403034:	33 c0                	xor    %eax,%eax
403036:	5e                   	pop    %esi
403037:	5b                   	pop    %ebx
403038:	c3                   	ret
403039:	8d 40 00             	lea    0x0(%eax),%eax
40303c:	53                   	push   %ebx
40303d:	66 8b 48 04          	mov    0x4(%eax),%cx
403041:	66 81 e9 b1 d7       	sub    $0xd7b1,%cx
403046:	74 0f                	je     0x403057
403048:	49                   	dec    %ecx
403049:	66 83 e9 02          	sub    $0x2,%cx
40304d:	73 0c                	jae    0x40305b
40304f:	8b da                	mov    %edx,%ebx
403051:	ff d3                	call   *%ebx
403053:	8b d8                	mov    %eax,%ebx
403055:	eb 1b                	jmp    0x403072
403057:	33 db                	xor    %ebx,%ebx
403059:	eb 17                	jmp    0x403072
40305b:	3d 1c 82 6a 00       	cmp    $0x6a821c,%eax
403060:	74 07                	je     0x403069
403062:	3d e8 83 6a 00       	cmp    $0x6a83e8,%eax
403067:	75 04                	jne    0x40306d
403069:	33 db                	xor    %ebx,%ebx
40306b:	eb 05                	jmp    0x403072
40306d:	bb 67 00 00 00       	mov    $0x67,%ebx
403072:	85 db                	test   %ebx,%ebx
403074:	74 07                	je     0x40307d
403076:	8b c3                	mov    %ebx,%eax
403078:	e8 b7 f8 ff ff       	call   0x402934
40307d:	8b c3                	mov    %ebx,%eax
40307f:	5b                   	pop    %ebx
403080:	c3                   	ret
403081:	8d 40 00             	lea    0x0(%eax),%eax
403084:	8b 50 1c             	mov    0x1c(%eax),%edx
403087:	e8 b0 ff ff ff       	call   0x40303c
40308c:	c3                   	ret
40308d:	8d 40 00             	lea    0x0(%eax),%eax
403090:	8b 50 20             	mov    0x20(%eax),%edx
403093:	e8 a4 ff ff ff       	call   0x40303c
403098:	c3                   	ret
403099:	8d 40 00             	lea    0x0(%eax),%eax
40309c:	53                   	push   %ebx
40309d:	56                   	push   %esi
40309e:	8b d8                	mov    %eax,%ebx
4030a0:	33 f6                	xor    %esi,%esi
4030a2:	66 8b 43 04          	mov    0x4(%ebx),%ax
4030a6:	66 3d b1 d7          	cmp    $0xd7b1,%ax
4030aa:	72 2f                	jb     0x4030db
4030ac:	66 3d b3 d7          	cmp    $0xd7b3,%ax
4030b0:	77 29                	ja     0x4030db
4030b2:	66 25 b2 d7          	and    $0xd7b2,%ax
4030b6:	66 3d b2 d7          	cmp    $0xd7b2,%ax
4030ba:	75 07                	jne    0x4030c3
4030bc:	8b c3                	mov    %ebx,%eax
4030be:	ff 53 1c             	call   *0x1c(%ebx)
4030c1:	8b f0                	mov    %eax,%esi
4030c3:	85 f6                	test   %esi,%esi
4030c5:	75 07                	jne    0x4030ce
4030c7:	8b c3                	mov    %ebx,%eax
4030c9:	ff 53 24             	call   *0x24(%ebx)
4030cc:	8b f0                	mov    %eax,%esi
4030ce:	85 f6                	test   %esi,%esi
4030d0:	74 1b                	je     0x4030ed
4030d2:	8b c6                	mov    %esi,%eax
4030d4:	e8 5b f8 ff ff       	call   0x402934
4030d9:	eb 12                	jmp    0x4030ed
4030db:	81 fb 50 80 6a 00    	cmp    $0x6a8050,%ebx
4030e1:	74 0a                	je     0x4030ed
4030e3:	b8 67 00 00 00       	mov    $0x67,%eax
4030e8:	e8 47 f8 ff ff       	call   0x402934
4030ed:	8b c6                	mov    %esi,%eax
4030ef:	5e                   	pop    %esi
4030f0:	5b                   	pop    %ebx
4030f1:	c3                   	ret
4030f2:	8b c0                	mov    %eax,%eax
4030f4:	56                   	push   %esi
4030f5:	57                   	push   %edi
4030f6:	89 c7                	mov    %eax,%edi
4030f8:	31 c0                	xor    %eax,%eax
4030fa:	8a 07                	mov    (%edi),%al
4030fc:	89 d6                	mov    %edx,%esi
4030fe:	31 d2                	xor    %edx,%edx
403100:	8a 16                	mov    (%esi),%dl
403102:	46                   	inc    %esi
403103:	00 d0                	add    %dl,%al
403105:	72 12                	jb     0x403119
403107:	38 c8                	cmp    %cl,%al
403109:	77 0e                	ja     0x403119
40310b:	89 d1                	mov    %edx,%ecx
40310d:	8a 17                	mov    (%edi),%dl
40310f:	88 07                	mov    %al,(%edi)
403111:	47                   	inc    %edi
403112:	01 d7                	add    %edx,%edi
403114:	f3 a4                	rep movsb %ds:(%esi),%es:(%edi)
403116:	5f                   	pop    %edi
403117:	5e                   	pop    %esi
403118:	c3                   	ret
403119:	88 c8                	mov    %cl,%al
40311b:	2a 0f                	sub    (%edi),%cl
40311d:	76 f7                	jbe    0x403116
40311f:	88 ca                	mov    %cl,%dl
403121:	eb e8                	jmp    0x40310b
403123:	c3                   	ret
403124:	33 c9                	xor    %ecx,%ecx
403126:	8a 0a                	mov    (%edx),%cl
403128:	41                   	inc    %ecx
403129:	92                   	xchg   %eax,%edx
40312a:	e8 f1 f8 ff ff       	call   0x402a20
40312f:	c3                   	ret
403130:	53                   	push   %ebx
403131:	8a 1a                	mov    (%edx),%bl
403133:	3a cb                	cmp    %bl,%cl
403135:	76 02                	jbe    0x403139
403137:	8b cb                	mov    %ebx,%ecx
403139:	88 08                	mov    %cl,(%eax)
40313b:	42                   	inc    %edx
40313c:	40                   	inc    %eax
40313d:	81 e1 ff 00 00 00    	and    $0xff,%ecx
403143:	92                   	xchg   %eax,%edx
403144:	e8 d7 f8 ff ff       	call   0x402a20
403149:	5b                   	pop    %ebx
40314a:	c3                   	ret
40314b:	90                   	nop
40314c:	53                   	push   %ebx
40314d:	56                   	push   %esi
40314e:	57                   	push   %edi
40314f:	89 c6                	mov    %eax,%esi
403151:	89 d7                	mov    %edx,%edi
403153:	31 c0                	xor    %eax,%eax
403155:	31 d2                	xor    %edx,%edx
403157:	8a 06                	mov    (%esi),%al
403159:	8a 17                	mov    (%edi),%dl
40315b:	46                   	inc    %esi
40315c:	47                   	inc    %edi
40315d:	29 d0                	sub    %edx,%eax
40315f:	77 02                	ja     0x403163
403161:	01 c2                	add    %eax,%edx
403163:	52                   	push   %edx
403164:	c1 ea 02             	shr    $0x2,%edx
403167:	74 26                	je     0x40318f
403169:	8b 0e                	mov    (%esi),%ecx
40316b:	8b 1f                	mov    (%edi),%ebx
40316d:	39 d9                	cmp    %ebx,%ecx
40316f:	75 44                	jne    0x4031b5
403171:	4a                   	dec    %edx
403172:	74 15                	je     0x403189
403174:	8b 4e 04             	mov    0x4(%esi),%ecx
403177:	8b 5f 04             	mov    0x4(%edi),%ebx
40317a:	39 d9                	cmp    %ebx,%ecx
40317c:	75 37                	jne    0x4031b5
40317e:	83 c6 08             	add    $0x8,%esi
403181:	83 c7 08             	add    $0x8,%edi
403184:	4a                   	dec    %edx
403185:	75 e2                	jne    0x403169
403187:	eb 06                	jmp    0x40318f
403189:	83 c6 04             	add    $0x4,%esi
40318c:	83 c7 04             	add    $0x4,%edi
40318f:	5a                   	pop    %edx
403190:	83 e2 03             	and    $0x3,%edx
403193:	74 1c                	je     0x4031b1
403195:	8a 0e                	mov    (%esi),%cl
403197:	3a 0f                	cmp    (%edi),%cl
403199:	75 2f                	jne    0x4031ca
40319b:	4a                   	dec    %edx
40319c:	74 13                	je     0x4031b1
40319e:	8a 4e 01             	mov    0x1(%esi),%cl
4031a1:	3a 4f 01             	cmp    0x1(%edi),%cl
4031a4:	75 24                	jne    0x4031ca
4031a6:	4a                   	dec    %edx
4031a7:	74 08                	je     0x4031b1
4031a9:	8a 4e 02             	mov    0x2(%esi),%cl