41de64:	c3                   	ret
41de65:	8b ff                	mov    %edi,%edi
41de67:	56                   	push   %esi
41de68:	8b f1                	mov    %ecx,%esi
41de6a:	8b 46 04             	mov    0x4(%esi),%eax
41de6d:	3b 46 08             	cmp    0x8(%esi),%eax
41de70:	74 03                	je     0x41de75
41de72:	89 46 08             	mov    %eax,0x8(%esi)
41de75:	8b 46 14             	mov    0x14(%esi),%eax
41de78:	8d 4e 10             	lea    0x10(%esi),%ecx
41de7b:	3b 46 18             	cmp    0x18(%esi),%eax
41de7e:	74 03                	je     0x41de83
41de80:	89 46 18             	mov    %eax,0x18(%esi)
41de83:	e8 88 fa ff ff       	call   0x41d910
41de88:	8b ce                	mov    %esi,%ecx
41de8a:	5e                   	pop    %esi
41de8b:	e9 80 fa ff ff       	jmp    0x41d910
41de90:	8b ff                	mov    %edi,%edi
41de92:	55                   	push   %ebp
41de93:	8b ec                	mov    %esp,%ebp
41de95:	51                   	push   %ecx
41de96:	51                   	push   %ecx
41de97:	53                   	push   %ebx
41de98:	8b 5d 08             	mov    0x8(%ebp),%ebx
41de9b:	56                   	push   %esi
41de9c:	57                   	push   %edi
41de9d:	8b f9                	mov    %ecx,%edi
41de9f:	3b fb                	cmp    %ebx,%edi
41dea1:	0f 84 4c 01 00 00    	je     0x41dff3
41dea7:	8b 4b 04             	mov    0x4(%ebx),%ecx
41deaa:	85 c9                	test   %ecx,%ecx
41deac:	0f 84 36 01 00 00    	je     0x41dfe8
41deb2:	8b 43 08             	mov    0x8(%ebx),%eax
41deb5:	8b d0                	mov    %eax,%edx
41deb7:	2b d1                	sub    %ecx,%edx
41deb9:	c1 fa 02             	sar    $0x2,%edx
41debc:	89 55 fc             	mov    %edx,-0x4(%ebp)
41debf:	85 d2                	test   %edx,%edx
41dec1:	0f 84 21 01 00 00    	je     0x41dfe8
41dec7:	8b 57 04             	mov    0x4(%edi),%edx
41deca:	33 f6                	xor    %esi,%esi
41decc:	85 d2                	test   %edx,%edx
41dece:	75 05                	jne    0x41ded5
41ded0:	89 75 f8             	mov    %esi,-0x8(%ebp)
41ded3:	eb 0b                	jmp    0x41dee0
41ded5:	8b 5f 08             	mov    0x8(%edi),%ebx
41ded8:	2b da                	sub    %edx,%ebx
41deda:	c1 fb 02             	sar    $0x2,%ebx
41dedd:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41dee0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41dee3:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
41dee6:	8b 5d 08             	mov    0x8(%ebp),%ebx
41dee9:	77 31                	ja     0x41df1c
41deeb:	8b 45 fc             	mov    -0x4(%ebp),%eax
41deee:	85 c0                	test   %eax,%eax
41def0:	7e 16                	jle    0x41df08
41def2:	c1 e0 02             	shl    $0x2,%eax
41def5:	50                   	push   %eax
41def6:	51                   	push   %ecx
41def7:	50                   	push   %eax
41def8:	52                   	push   %edx
41def9:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41deff:	8b 4b 04             	mov    0x4(%ebx),%ecx
41df02:	83 c4 10             	add    $0x10,%esp
41df05:	8b 57 04             	mov    0x4(%edi),%edx
41df08:	85 c9                	test   %ecx,%ecx
41df0a:	74 08                	je     0x41df14
41df0c:	8b 73 08             	mov    0x8(%ebx),%esi
41df0f:	2b f1                	sub    %ecx,%esi
41df11:	c1 fe 02             	sar    $0x2,%esi
41df14:	8d 04 b2             	lea    (%edx,%esi,4),%eax
41df17:	e9 d4 00 00 00       	jmp    0x41dff0
41df1c:	85 d2                	test   %edx,%edx
41df1e:	75 05                	jne    0x41df25
41df20:	89 75 f8             	mov    %esi,-0x8(%ebp)
41df23:	eb 0b                	jmp    0x41df30
41df25:	8b 5f 0c             	mov    0xc(%edi),%ebx
41df28:	2b da                	sub    %edx,%ebx
41df2a:	c1 fb 02             	sar    $0x2,%ebx
41df2d:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41df30:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41df33:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
41df36:	8b 5d 08             	mov    0x8(%ebp),%ebx
41df39:	77 57                	ja     0x41df92
41df3b:	85 d2                	test   %edx,%edx
41df3d:	74 08                	je     0x41df47
41df3f:	8b 77 08             	mov    0x8(%edi),%esi
41df42:	2b f2                	sub    %edx,%esi
41df44:	c1 fe 02             	sar    $0x2,%esi
41df47:	8d 1c b1             	lea    (%ecx,%esi,4),%ebx
41df4a:	89 5d f8             	mov    %ebx,-0x8(%ebp)
41df4d:	8b 5d 08             	mov    0x8(%ebp),%ebx
41df50:	85 f6                	test   %esi,%esi
41df52:	7e 15                	jle    0x41df69
41df54:	8b c6                	mov    %esi,%eax
41df56:	c1 e0 02             	shl    $0x2,%eax
41df59:	50                   	push   %eax
41df5a:	51                   	push   %ecx
41df5b:	50                   	push   %eax
41df5c:	52                   	push   %edx
41df5d:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41df63:	8b 43 08             	mov    0x8(%ebx),%eax
41df66:	83 c4 10             	add    $0x10,%esp
41df69:	8b 5d f8             	mov    -0x8(%ebp),%ebx
41df6c:	2b c3                	sub    %ebx,%eax
41df6e:	8b 57 08             	mov    0x8(%edi),%edx
41df71:	c1 f8 02             	sar    $0x2,%eax
41df74:	8b c8                	mov    %eax,%ecx
41df76:	c1 e1 02             	shl    $0x2,%ecx
41df79:	8d 34 11             	lea    (%ecx,%edx,1),%esi
41df7c:	85 c0                	test   %eax,%eax
41df7e:	74 0d                	je     0x41df8d
41df80:	51                   	push   %ecx
41df81:	53                   	push   %ebx
41df82:	51                   	push   %ecx
41df83:	52                   	push   %edx
41df84:	ff 15 c4 80 4a 00    	call   *0x4a80c4
41df8a:	83 c4 10             	add    $0x10,%esp
41df8d:	89 77 08             	mov    %esi,0x8(%edi)
41df90:	eb 61                	jmp    0x41dff3
41df92:	85 d2                	test   %edx,%edx
41df94:	74 0b                	je     0x41dfa1
41df96:	52                   	push   %edx
41df97:	ff 15 10 74 4a 00    	call   *0x4a7410
41df9d:	59                   	pop    %ecx
41df9e:	8b 4b 04             	mov    0x4(%ebx),%ecx
41dfa1:	85 c9                	test   %ecx,%ecx
41dfa3:	75 04                	jne    0x41dfa9
41dfa5:	8b c6                	mov    %esi,%eax
41dfa7:	eb 08                	jmp    0x41dfb1
41dfa9:	8b 43 08             	mov    0x8(%ebx),%eax
41dfac:	2b c1                	sub    %ecx,%eax
41dfae:	c1 f8 02             	sar    $0x2,%eax
41dfb1:	89 77 04             	mov    %esi,0x4(%edi)
41dfb4:	89 77 08             	mov    %esi,0x8(%edi)
41dfb7:	89 77 0c             	mov    %esi,0xc(%edi)
41dfba:	85 c0                	test   %eax,%eax
41dfbc:	74 35                	je     0x41dff3
41dfbe:	50                   	push   %eax
41dfbf:	8b cf                	mov    %edi,%ecx
41dfc1:	e8 7b 00 00 00       	call   0x41e041
41dfc6:	84 c0                	test   %al,%al
41dfc8:	74 29                	je     0x41dff3
41dfca:	8b 43 08             	mov    0x8(%ebx),%eax
41dfcd:	2b 43 04             	sub    0x4(%ebx),%eax
41dfd0:	8b 57 04             	mov    0x4(%edi),%edx
41dfd3:	c1 f8 02             	sar    $0x2,%eax
41dfd6:	8b c8                	mov    %eax,%ecx
41dfd8:	c1 e1 02             	shl    $0x2,%ecx
41dfdb:	8d 34 11             	lea    (%ecx,%edx,1),%esi
41dfde:	85 c0                	test   %eax,%eax
41dfe0:	74 ab                	je     0x41df8d
41dfe2:	51                   	push   %ecx
41dfe3:	ff 73 04             	push   0x4(%ebx)
41dfe6:	eb 9a                	jmp    0x41df82
41dfe8:	8b 47 04             	mov    0x4(%edi),%eax
41dfeb:	3b 47 08             	cmp    0x8(%edi),%eax
41dfee:	74 03                	je     0x41dff3
41dff0:	89 47 08             	mov    %eax,0x8(%edi)
41dff3:	8b c7                	mov    %edi,%eax
41dff5:	5f                   	pop    %edi
41dff6:	5e                   	pop    %esi
41dff7:	5b                   	pop    %ebx
41dff8:	c9                   	leave
41dff9:	c2 04 00             	ret    $0x4
41dffc:	8b ff                	mov    %edi,%edi
41dffe:	55                   	push   %ebp
41dfff:	8b ec                	mov    %esp,%ebp
41e001:	8b 4d 08             	mov    0x8(%ebp),%ecx
41e004:	83 ec 0c             	sub    $0xc,%esp
41e007:	85 c9                	test   %ecx,%ecx
41e009:	75 11                	jne    0x41e01c
41e00b:	8b c1                	mov    %ecx,%eax
41e00d:	c1 e0 02             	shl    $0x2,%eax
41e010:	50                   	push   %eax
41e011:	ff 15 14 74 4a 00    	call   *0x4a7414
41e017:	59                   	pop    %ecx
41e018:	c9                   	leave
41e019:	c2 04 00             	ret    $0x4
41e01c:	83 c8 ff             	or     $0xffffffff,%eax
41e01f:	33 d2                	xor    %edx,%edx
41e021:	f7 f1                	div    %ecx
41e023:	83 f8 04             	cmp    $0x4,%eax
41e026:	73 e3                	jae    0x41e00b
41e028:	6a 00                	push   $0x0
41e02a:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41e02d:	e8 9a e4 ff ff       	call   0x41c4cc
41e032:	68 4c eb 49 00       	push   $0x49eb4c
41e037:	8d 45 f4             	lea    -0xc(%ebp),%eax
41e03a:	50                   	push   %eax
41e03b:	e8 5b 24 07 00       	call   0x49049b
41e040:	cc                   	int3
41e041:	8b ff                	mov    %edi,%edi
41e043:	55                   	push   %ebp
41e044:	8b ec                	mov    %esp,%ebp
41e046:	56                   	push   %esi
41e047:	8b 75 08             	mov    0x8(%ebp),%esi
41e04a:	57                   	push   %edi
41e04b:	8b f9                	mov    %ecx,%edi
41e04d:	81 fe ff ff ff 3f    	cmp    $0x3fffffff,%esi
41e053:	77 1a                	ja     0x41e06f
41e055:	56                   	push   %esi
41e056:	e8 a1 ff ff ff       	call   0x41dffc
41e05b:	89 47 04             	mov    %eax,0x4(%edi)
41e05e:	89 47 08             	mov    %eax,0x8(%edi)
41e061:	8d 04 b0             	lea    (%eax,%esi,4),%eax
41e064:	89 47 0c             	mov    %eax,0xc(%edi)
41e067:	b0 01                	mov    $0x1,%al
41e069:	5f                   	pop    %edi
41e06a:	5e                   	pop    %esi
41e06b:	5d                   	pop    %ebp
41e06c:	c2 04 00             	ret    $0x4
41e06f:	e8 be f8 ff ff       	call   0x41d932
41e074:	cc                   	int3
41e075:	8b ff                	mov    %edi,%edi
41e077:	51                   	push   %ecx
41e078:	ff 15 10 74 4a 00    	call   *0x4a7410
41e07e:	59                   	pop    %ecx
41e07f:	c3                   	ret
41e080:	8b 01                	mov    (%ecx),%eax
41e082:	33 d2                	xor    %edx,%edx
41e084:	2b c2                	sub    %edx,%eax
41e086:	74 3a                	je     0x41e0c2
41e088:	83 e8 01             	sub    $0x1,%eax
41e08b:	74 31                	je     0x41e0be
41e08d:	83 e8 01             	sub    $0x1,%eax
41e090:	74 28                	je     0x41e0ba
41e092:	48                   	dec    %eax
41e093:	83 e8 01             	sub    $0x1,%eax
41e096:	74 04                	je     0x41e09c
41e098:	6a 18                	push   $0x18
41e09a:	eb 24                	jmp    0x41e0c0
41e09c:	56                   	push   %esi
41e09d:	be 0c 38 41 00       	mov    $0x41380c,%esi
41e0a2:	8b 44 91 04          	mov    0x4(%ecx,%edx,4),%eax
41e0a6:	3b 04 96             	cmp    (%esi,%edx,4),%eax
41e0a9:	75 0a                	jne    0x41e0b5
41e0ab:	42                   	inc    %edx
41e0ac:	83 fa 04             	cmp    $0x4,%edx
41e0af:	75 f1                	jne    0x41e0a2
41e0b1:	6a 08                	push   $0x8
41e0b3:	eb 02                	jmp    0x41e0b7
41e0b5:	6a 18                	push   $0x18
41e0b7:	58                   	pop    %eax
41e0b8:	5e                   	pop    %esi
41e0b9:	c3                   	ret
41e0ba:	6a 08                	push   $0x8
41e0bc:	eb 02                	jmp    0x41e0c0
41e0be:	6a 04                	push   $0x4
41e0c0:	58                   	pop    %eax
41e0c1:	c3                   	ret
41e0c2:	33 c0                	xor    %eax,%eax
41e0c4:	40                   	inc    %eax
41e0c5:	c3                   	ret
41e0c6:	cc                   	int3
41e0c7:	cc                   	int3
41e0c8:	cc                   	int3
41e0c9:	cc                   	int3
41e0ca:	cc                   	int3
41e0cb:	cc                   	int3
41e0cc:	cc                   	int3
41e0cd:	cc                   	int3
41e0ce:	cc                   	int3
41e0cf:	cc                   	int3
41e0d0:	6a 04                	push   $0x4
41e0d2:	b8 b3 16 49 00       	mov    $0x4916b3,%eax
41e0d7:	e8 f7 23 07 00       	call   0x4904d3
41e0dc:	68 a8 06 00 00       	push   $0x6a8
41e0e1:	ff 15 14 74 4a 00    	call   *0x4a7414
41e0e7:	59                   	pop    %ecx
41e0e8:	8b c8                	mov    %eax,%ecx
41e0ea:	89 4d f0             	mov    %ecx,-0x10(%ebp)
41e0ed:	33 c0                	xor    %eax,%eax
41e0ef:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e0f2:	85 c9                	test   %ecx,%ecx
41e0f4:	74 05                	je     0x41e0fb
41e0f6:	e8 2b 00 00 00       	call   0x41e126
41e0fb:	e8 a1 23 07 00       	call   0x4904a1
41e100:	c3                   	ret
41e101:	cc                   	int3
41e102:	cc                   	int3
41e103:	cc                   	int3
41e104:	cc                   	int3
41e105:	cc                   	int3
41e106:	cc                   	int3
41e107:	cc                   	int3
41e108:	cc                   	int3
41e109:	cc                   	int3
41e10a:	cc                   	int3
41e10b:	cc                   	int3
41e10c:	cc                   	int3
41e10d:	cc                   	int3
41e10e:	cc                   	int3
41e10f:	cc                   	int3
41e110:	a1 38 75 4a 00       	mov    0x4a7538,%eax
41e115:	c3                   	ret
41e116:	cc                   	int3
41e117:	cc                   	int3
41e118:	cc                   	int3
41e119:	cc                   	int3
41e11a:	cc                   	int3
41e11b:	cc                   	int3
41e11c:	cc                   	int3
41e11d:	cc                   	int3
41e11e:	cc                   	int3
41e11f:	cc                   	int3
41e120:	b8 00 14 40 00       	mov    $0x401400,%eax
41e125:	c3                   	ret
41e126:	6a 1c                	push   $0x1c
41e128:	b8 d6 16 49 00       	mov    $0x4916d6,%eax
41e12d:	e8 d4 23 07 00       	call   0x490506
41e132:	8b d9                	mov    %ecx,%ebx
41e134:	89 5d dc             	mov    %ebx,-0x24(%ebp)
41e137:	89 5d d8             	mov    %ebx,-0x28(%ebp)
41e13a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41e13e:	8d 7d e0             	lea    -0x20(%ebp),%edi
41e141:	c7 03 ec 13 40 00    	movl   $0x4013ec,(%ebx)
41e147:	8d 8b 88 06 00 00    	lea    0x688(%ebx),%ecx
41e14d:	be 1c 38 41 00       	mov    $0x41381c,%esi
41e152:	6a 0a                	push   $0xa
41e154:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e155:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e156:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e157:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e158:	8d 7b 14             	lea    0x14(%ebx),%edi
41e15b:	c7 43 10 04 00 00 00 	movl   $0x4,0x10(%ebx)
41e162:	8d 75 e0             	lea    -0x20(%ebp),%esi
41e165:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e166:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e167:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e168:	a5                   	movsl  %ds:(%esi),%es:(%edi)
41e169:	ff 15 3c 75 4a 00    	call   *0x4a753c
41e16f:	33 c0                	xor    %eax,%eax
41e171:	8d 4b 48             	lea    0x48(%ebx),%ecx
41e174:	68 40 06 00 00       	push   $0x640
41e179:	50                   	push   %eax
41e17a:	51                   	push   %ecx
41e17b:	89 43 2c             	mov    %eax,0x2c(%ebx)
41e17e:	89 43 28             	mov    %eax,0x28(%ebx)
41e181:	89 43 30             	mov    %eax,0x30(%ebx)
41e184:	89 43 38             	mov    %eax,0x38(%ebx)
41e187:	89 43 04             	mov    %eax,0x4(%ebx)
41e18a:	89 43 08             	mov    %eax,0x8(%ebx)
41e18d:	89 43 0c             	mov    %eax,0xc(%ebx)
41e190:	89 43 24             	mov    %eax,0x24(%ebx)
41e193:	89 43 34             	mov    %eax,0x34(%ebx)
41e196:	89 43 3c             	mov    %eax,0x3c(%ebx)
41e199:	89 43 40             	mov    %eax,0x40(%ebx)
41e19c:	89 43 44             	mov    %eax,0x44(%ebx)
41e19f:	e8 95 2e 07 00       	call   0x491039