42aa5e:	68 5e 01 00 a0       	push   $0xa000015e
42aa63:	6a 02                	push   $0x2
42aa65:	e8 a5 aa fd ff       	call   0x40550f
42aa6a:	83 c4 10             	add    $0x10,%esp
42aa6d:	33 f6                	xor    %esi,%esi
42aa6f:	eb 23                	jmp    0x42aa94
42aa71:	ff 32                	push   (%edx)
42aa73:	e8 ac 97 fe ff       	call   0x414224
42aa78:	50                   	push   %eax
42aa79:	56                   	push   %esi
42aa7a:	ff 37                	push   (%edi)
42aa7c:	ff 75 1c             	push   0x1c(%ebp)
42aa7f:	e8 1e 98 fe ff       	call   0x4142a2
42aa84:	50                   	push   %eax
42aa85:	68 3f 01 00 20       	push   $0x2000013f
42aa8a:	6a 02                	push   $0x2
42aa8c:	e8 7e aa fd ff       	call   0x40550f
42aa91:	83 c4 18             	add    $0x18,%esp
42aa94:	5f                   	pop    %edi
42aa95:	8b c6                	mov    %esi,%eax
42aa97:	5e                   	pop    %esi
42aa98:	5b                   	pop    %ebx
42aa99:	5d                   	pop    %ebp
42aa9a:	c2 24 00             	ret    $0x24
42aa9d:	55                   	push   %ebp
42aa9e:	8b ec                	mov    %esp,%ebp
42aaa0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
42aaa3:	56                   	push   %esi
42aaa4:	51                   	push   %ecx
42aaa5:	8b 41 08             	mov    0x8(%ecx),%eax
42aaa8:	83 78 14 00          	cmpl   $0x0,0x14(%eax)
42aaac:	74 1b                	je     0x42aac9
42aaae:	8b 45 08             	mov    0x8(%ebp),%eax
42aab1:	ff b0 b0 04 00 00    	push   0x4b0(%eax)
42aab7:	e8 78 2f ff ff       	call   0x41da34
42aabc:	8b f0                	mov    %eax,%esi
42aabe:	85 f6                	test   %esi,%esi
42aac0:	79 1f                	jns    0x42aae1
42aac2:	68 b0 f4 45 00       	push   $0x45f4b0
42aac7:	eb 10                	jmp    0x42aad9
42aac9:	e8 c2 d1 ff ff       	call   0x427c90
42aace:	8b f0                	mov    %eax,%esi
42aad0:	85 f6                	test   %esi,%esi
42aad2:	79 0d                	jns    0x42aae1
42aad4:	68 f0 f4 45 00       	push   $0x45f4f0
42aad9:	56                   	push   %esi
42aada:	e8 50 56 01 00       	call   0x44012f
42aadf:	59                   	pop    %ecx
42aae0:	59                   	pop    %ecx
42aae1:	8b c6                	mov    %esi,%eax
42aae3:	5e                   	pop    %esi
42aae4:	5d                   	pop    %ebp
42aae5:	c2 0c 00             	ret    $0xc
42aae8:	55                   	push   %ebp
42aae9:	8b ec                	mov    %esp,%ebp
42aaeb:	83 ec 5c             	sub    $0x5c,%esp
42aaee:	56                   	push   %esi
42aaef:	57                   	push   %edi
42aaf0:	6a 58                	push   $0x58
42aaf2:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42aaf5:	6a 00                	push   $0x0
42aaf7:	50                   	push   %eax
42aaf8:	e8 73 4b 00 00       	call   0x42f670
42aafd:	8b 7d 0c             	mov    0xc(%ebp),%edi
42ab00:	83 c4 0c             	add    $0xc,%esp
42ab03:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42ab07:	83 c9 ff             	or     $0xffffffff,%ecx
42ab0a:	8b 45 08             	mov    0x8(%ebp),%eax
42ab0d:	ff 75 10             	push   0x10(%ebp)
42ab10:	83 7f 48 00          	cmpl   $0x0,0x48(%edi)
42ab14:	0f 44 c1             	cmove  %ecx,%eax
42ab17:	50                   	push   %eax
42ab18:	57                   	push   %edi
42ab19:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42ab1c:	50                   	push   %eax
42ab1d:	e8 07 16 fe ff       	call   0x40c129
42ab22:	8b f0                	mov    %eax,%esi
42ab24:	85 f6                	test   %esi,%esi
42ab26:	79 12                	jns    0x42ab3a
42ab28:	ff 37                	push   (%edi)
42ab2a:	68 f0 eb 45 00       	push   $0x45ebf0
42ab2f:	56                   	push   %esi
42ab30:	e8 fa 55 01 00       	call   0x44012f
42ab35:	83 c4 0c             	add    $0xc,%esp
42ab38:	eb 71                	jmp    0x42abab
42ab3a:	53                   	push   %ebx
42ab3b:	eb 3e                	jmp    0x42ab7b
42ab3d:	33 db                	xor    %ebx,%ebx
42ab3f:	39 5d 18             	cmp    %ebx,0x18(%ebp)
42ab42:	76 28                	jbe    0x42ab6c
42ab44:	8b 75 14             	mov    0x14(%ebp),%esi
42ab47:	8b 46 04             	mov    0x4(%esi),%eax
42ab4a:	6a ff                	push   $0xffffffff
42ab4c:	ff 70 38             	push   0x38(%eax)
42ab4f:	6a ff                	push   $0xffffffff
42ab51:	ff 75 fc             	push   -0x4(%ebp)
42ab54:	6a 00                	push   $0x0
42ab56:	6a 7f                	push   $0x7f
42ab58:	ff 15 28 b1 44 00    	call   *0x44b128
42ab5e:	83 f8 02             	cmp    $0x2,%eax
42ab61:	74 69                	je     0x42abcc
42ab63:	43                   	inc    %ebx
42ab64:	83 c6 0c             	add    $0xc,%esi
42ab67:	3b 5d 18             	cmp    0x18(%ebp),%ebx
42ab6a:	72 db                	jb     0x42ab47
42ab6c:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42ab6f:	50                   	push   %eax
42ab70:	e8 cf 17 fe ff       	call   0x40c344
42ab75:	8b f0                	mov    %eax,%esi
42ab77:	85 f6                	test   %esi,%esi
42ab79:	78 6f                	js     0x42abea
42ab7b:	8d 45 fc             	lea    -0x4(%ebp),%eax
42ab7e:	50                   	push   %eax
42ab7f:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42ab82:	50                   	push   %eax
42ab83:	e8 80 15 fe ff       	call   0x40c108
42ab88:	85 c0                	test   %eax,%eax
42ab8a:	74 b1                	je     0x42ab3d
42ab8c:	33 f6                	xor    %esi,%esi
42ab8e:	3d 03 01 07 80       	cmp    $0x80070103,%eax
42ab93:	0f 45 f0             	cmovne %eax,%esi
42ab96:	85 f6                	test   %esi,%esi
42ab98:	79 10                	jns    0x42abaa
42ab9a:	ff 37                	push   (%edi)
42ab9c:	68 8c ec 45 00       	push   $0x45ec8c
42aba1:	56                   	push   %esi
42aba2:	e8 88 55 01 00       	call   0x44012f
42aba7:	83 c4 0c             	add    $0xc,%esp
42abaa:	5b                   	pop    %ebx
42abab:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
42abaf:	74 08                	je     0x42abb9
42abb1:	ff 75 fc             	push   -0x4(%ebp)
42abb4:	e8 36 a9 01 00       	call   0x4454ef
42abb9:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42abbc:	50                   	push   %eax
42abbd:	e8 93 14 fe ff       	call   0x40c055
42abc2:	5f                   	pop    %edi
42abc3:	8b c6                	mov    %esi,%eax
42abc5:	5e                   	pop    %esi
42abc6:	8b e5                	mov    %ebp,%esp
42abc8:	5d                   	pop    %ebp
42abc9:	c2 14 00             	ret    $0x14
42abcc:	ff 76 08             	push   0x8(%esi)
42abcf:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42abd2:	50                   	push   %eax
42abd3:	e8 ae 17 fe ff       	call   0x40c386
42abd8:	8b f0                	mov    %eax,%esi
42abda:	85 f6                	test   %esi,%esi
42abdc:	79 9d                	jns    0x42ab7b
42abde:	ff 37                	push   (%edi)
42abe0:	ff 75 fc             	push   -0x4(%ebp)
42abe3:	68 10 ec 45 00       	push   $0x45ec10
42abe8:	eb 0a                	jmp    0x42abf4
42abea:	ff 37                	push   (%edi)
42abec:	ff 75 fc             	push   -0x4(%ebp)
42abef:	68 48 ec 45 00       	push   $0x45ec48
42abf4:	56                   	push   %esi
42abf5:	e8 35 55 01 00       	call   0x44012f
42abfa:	83 c4 10             	add    $0x10,%esp
42abfd:	eb ab                	jmp    0x42abaa
42abff:	55                   	push   %ebp
42ac00:	8b ec                	mov    %esp,%ebp
42ac02:	53                   	push   %ebx
42ac03:	56                   	push   %esi
42ac04:	8b 75 0c             	mov    0xc(%ebp),%esi
42ac07:	33 db                	xor    %ebx,%ebx
42ac09:	57                   	push   %edi
42ac0a:	8b 7d 08             	mov    0x8(%ebp),%edi
42ac0d:	8b 07                	mov    (%edi),%eax
42ac0f:	83 e8 01             	sub    $0x1,%eax
42ac12:	74 51                	je     0x42ac65
42ac14:	83 e8 01             	sub    $0x1,%eax
42ac17:	74 20                	je     0x42ac39
42ac19:	83 e8 01             	sub    $0x1,%eax
42ac1c:	75 67                	jne    0x42ac85
42ac1e:	8b 06                	mov    (%esi),%eax
42ac20:	ff 77 0c             	push   0xc(%edi)
42ac23:	ff 77 08             	push   0x8(%edi)
42ac26:	8b 48 10             	mov    0x10(%eax),%ecx
42ac29:	8b 46 08             	mov    0x8(%esi),%eax
42ac2c:	8b 11                	mov    (%ecx),%edx
42ac2e:	ff 30                	push   (%eax)
42ac30:	51                   	push   %ecx
42ac31:	ff 92 c4 00 00 00    	call   *0xc4(%edx)
42ac37:	eb 4a                	jmp    0x42ac83
42ac39:	39 5e 10             	cmp    %ebx,0x10(%esi)
42ac3c:	74 0e                	je     0x42ac4c
42ac3e:	6b 46 0c 64          	imul   $0x64,0xc(%esi),%eax
42ac42:	33 d2                	xor    %edx,%edx
42ac44:	03 47 08             	add    0x8(%edi),%eax
42ac47:	f7 76 10             	divl   0x10(%esi)
42ac4a:	8b d8                	mov    %eax,%ebx
42ac4c:	8b 06                	mov    (%esi),%eax
42ac4e:	53                   	push   %ebx
42ac4f:	ff 77 08             	push   0x8(%edi)
42ac52:	8b 48 10             	mov    0x10(%eax),%ecx
42ac55:	8b 46 08             	mov    0x8(%esi),%eax
42ac58:	8b 11                	mov    (%ecx),%edx
42ac5a:	ff 30                	push   (%eax)
42ac5c:	51                   	push   %ecx
42ac5d:	ff 92 bc 00 00 00    	call   *0xbc(%edx)
42ac63:	eb 1e                	jmp    0x42ac83
42ac65:	8b 06                	mov    (%esi),%eax
42ac67:	53                   	push   %ebx
42ac68:	53                   	push   %ebx
42ac69:	53                   	push   %ebx
42ac6a:	ff 77 04             	push   0x4(%edi)
42ac6d:	8b 48 10             	mov    0x10(%eax),%ecx
42ac70:	ff 77 0c             	push   0xc(%edi)
42ac73:	8b 46 08             	mov    0x8(%esi),%eax
42ac76:	ff 77 08             	push   0x8(%edi)
42ac79:	8b 11                	mov    (%ecx),%edx
42ac7b:	ff 30                	push   (%eax)
42ac7d:	6a 02                	push   $0x2
42ac7f:	51                   	push   %ecx
42ac80:	ff 52 7c             	call   *0x7c(%edx)
42ac83:	8b d8                	mov    %eax,%ebx
42ac85:	53                   	push   %ebx
42ac86:	ff 77 04             	push   0x4(%edi)
42ac89:	ff 76 04             	push   0x4(%esi)
42ac8c:	ff 36                	push   (%esi)
42ac8e:	e8 76 27 fe ff       	call   0x40d409
42ac93:	5f                   	pop    %edi
42ac94:	5e                   	pop    %esi
42ac95:	5b                   	pop    %ebx
42ac96:	5d                   	pop    %ebp
42ac97:	c2 08 00             	ret    $0x8
42ac9a:	55                   	push   %ebp
42ac9b:	8b ec                	mov    %esp,%ebp
42ac9d:	8b 55 08             	mov    0x8(%ebp),%edx
42aca0:	8b 02                	mov    (%edx),%eax
42aca2:	48                   	dec    %eax
42aca3:	83 e8 01             	sub    $0x1,%eax
42aca6:	74 24                	je     0x42accc
42aca8:	83 e8 05             	sub    $0x5,%eax
42acab:	74 1c                	je     0x42acc9
42acad:	83 e8 01             	sub    $0x1,%eax
42acb0:	74 0f                	je     0x42acc1
42acb2:	48                   	dec    %eax
42acb3:	83 e8 01             	sub    $0x1,%eax
42acb6:	74 06                	je     0x42acbe
42acb8:	33 c0                	xor    %eax,%eax
42acba:	33 d2                	xor    %edx,%edx
42acbc:	eb 14                	jmp    0x42acd2
42acbe:	8b 52 0c             	mov    0xc(%edx),%edx
42acc1:	8b 42 10             	mov    0x10(%edx),%eax
42acc4:	8b 52 14             	mov    0x14(%edx),%edx
42acc7:	eb 09                	jmp    0x42acd2
42acc9:	8b 52 08             	mov    0x8(%edx),%edx
42accc:	8b 42 18             	mov    0x18(%edx),%eax
42accf:	8b 52 1c             	mov    0x1c(%edx),%edx
42acd2:	5d                   	pop    %ebp
42acd3:	c2 04 00             	ret    $0x4
42acd6:	55                   	push   %ebp
42acd7:	8b ec                	mov    %esp,%ebp
42acd9:	83 ec 34             	sub    $0x34,%esp
42acdc:	53                   	push   %ebx
42acdd:	56                   	push   %esi
42acde:	57                   	push   %edi
42acdf:	6a 0a                	push   $0xa
42ace1:	59                   	pop    %ecx
42ace2:	33 c0                	xor    %eax,%eax
42ace4:	8d 7d cc             	lea    -0x34(%ebp),%edi
42ace7:	f3 ab                	rep stos %eax,%es:(%edi)
42ace9:	8d 45 fc             	lea    -0x4(%ebp),%eax
42acec:	33 db                	xor    %ebx,%ebx
42acee:	50                   	push   %eax
42acef:	68 20 c3 44 00       	push   $0x44c320
42acf4:	ff 75 0c             	push   0xc(%ebp)
42acf7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42acfa:	89 5d f8             	mov    %ebx,-0x8(%ebp)
42acfd:	89 5d f4             	mov    %ebx,-0xc(%ebp)
42ad00:	e8 89 c6 fd ff       	call   0x40738e
42ad05:	8b f0                	mov    %eax,%esi
42ad07:	85 f6                	test   %esi,%esi
42ad09:	79 2c                	jns    0x42ad37
42ad0b:	81 fe 90 04 07 80    	cmp    $0x80070490,%esi
42ad11:	74 0a                	je     0x42ad1d
42ad13:	68 c0 ec 45 00       	push   $0x45ecc0
42ad18:	e9 08 02 00 00       	jmp    0x42af25
42ad1d:	53                   	push   %ebx
42ad1e:	8d 45 fc             	lea    -0x4(%ebp),%eax
42ad21:	50                   	push   %eax
42ad22:	e8 b0 86 fd ff       	call   0x4033d7
42ad27:	8b f0                	mov    %eax,%esi
42ad29:	85 f6                	test   %esi,%esi
42ad2b:	79 0a                	jns    0x42ad37
42ad2d:	68 fc ec 45 00       	push   $0x45ecfc
42ad32:	e9 ee 01 00 00       	jmp    0x42af25
42ad37:	8b 7d 18             	mov    0x18(%ebp),%edi
42ad3a:	8d 45 f8             	lea    -0x8(%ebp),%eax
42ad3d:	50                   	push   %eax
42ad3e:	ff 75 14             	push   0x14(%ebp)
42ad41:	57                   	push   %edi
42ad42:	e8 32 80 fd ff       	call   0x402d79
42ad47:	8b f0                	mov    %eax,%esi
42ad49:	85 f6                	test   %esi,%esi
42ad4b:	79 0a                	jns    0x42ad57
42ad4d:	68 24 ed 45 00       	push   $0x45ed24
42ad52:	e9 ce 01 00 00       	jmp    0x42af25
42ad57:	8d 45 f4             	lea    -0xc(%ebp),%eax
42ad5a:	50                   	push   %eax
42ad5b:	ff 75 f8             	push   -0x8(%ebp)
42ad5e:	ff 75 fc             	push   -0x4(%ebp)
42ad61:	e8 9f 7f fd ff       	call   0x402d05
42ad66:	8b f0                	mov    %eax,%esi
42ad68:	85 f6                	test   %esi,%esi
42ad6a:	79 0a                	jns    0x42ad76
42ad6c:	68 50 ed 45 00       	push   $0x45ed50
42ad71:	e9 af 01 00 00       	jmp    0x42af25
42ad76:	83 7d f4 02          	cmpl   $0x2,-0xc(%ebp)
42ad7a:	75 07                	jne    0x42ad83
42ad7c:	8b f3                	mov    %ebx,%esi
42ad7e:	e9 aa 01 00 00       	jmp    0x42af2d
42ad83:	8b 45 20             	mov    0x20(%ebp),%eax
42ad86:	8b 5d 08             	mov    0x8(%ebp),%ebx
42ad89:	89 45 dc             	mov    %eax,-0x24(%ebp)
42ad8c:	8b 45 24             	mov    0x24(%ebp),%eax
42ad8f:	89 45 e0             	mov    %eax,-0x20(%ebp)
42ad92:	8b 45 28             	mov    0x28(%ebp),%eax
42ad95:	89 45 e4             	mov    %eax,-0x1c(%ebp)
42ad98:	8b 45 2c             	mov    0x2c(%ebp),%eax
42ad9b:	89 5d cc             	mov    %ebx,-0x34(%ebp)
42ad9e:	89 45 e8             	mov    %eax,-0x18(%ebp)
42ada1:	33 d2                	xor    %edx,%edx
42ada3:	89 55 0c             	mov    %edx,0xc(%ebp)
42ada6:	eb 02                	jmp    0x42adaa
42ada8:	33 d2                	xor    %edx,%edx
42adaa:	ff 75 fc             	push   -0x4(%ebp)
42adad:	8b 43 10             	mov    0x10(%ebx),%eax
42adb0:	52                   	push   %edx
42adb1:	52                   	push   %edx
42adb2:	89 55 ec             	mov    %edx,-0x14(%ebp)
42adb5:	8b 08                	mov    (%eax),%ecx
42adb7:	52                   	push   %edx
42adb8:	50                   	push   %eax
42adb9:	ff 91 90 00 00 00    	call   *0x90(%ecx)
42adbf:	50                   	push   %eax
42adc0:	33 c0                	xor    %eax,%eax
42adc2:	40                   	inc    %eax
42adc3:	50                   	push   %eax
42adc4:	6a 00                	push   $0x0
42adc6:	53                   	push   %ebx
42adc7:	e8 76 27 fe ff       	call   0x40d542
42adcc:	8b f0                	mov    %eax,%esi
42adce:	85 f6                	test   %esi,%esi
42add0:	0f 88 3a 01 00 00    	js     0x42af10
42add6:	ff 75 1c             	push   0x1c(%ebp)
42add9:	8d 45 cc             	lea    -0x34(%ebp),%eax
42addc:	ff 75 fc             	push   -0x4(%ebp)