404953:	8d 45 f4             	lea    -0xc(%ebp),%eax
404956:	50                   	push   %eax
404957:	e8 83 6d 01 00       	call   0x41b6df
40495c:	0f b6 4d 0c          	movzbl 0xc(%ebp),%ecx
404960:	83 c4 10             	add    $0x10,%esp
404963:	0f b6 55 f4          	movzbl -0xc(%ebp),%edx
404967:	83 f8 01             	cmp    $0x1,%eax
40496a:	0f 45 d1             	cmovne %ecx,%edx
40496d:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404970:	33 cd                	xor    %ebp,%ecx
404972:	8a c2                	mov    %dl,%al
404974:	e8 57 6f 01 00       	call   0x41b8d0
404979:	8b e5                	mov    %ebp,%esp
40497b:	5d                   	pop    %ebp
40497c:	c2 08 00             	ret    $0x8
40497f:	cc                   	int3
404980:	55                   	push   %ebp
404981:	8b ec                	mov    %esp,%ebp
404983:	83 ec 18             	sub    $0x18,%esp
404986:	a1 14 40 45 00       	mov    0x454014,%eax
40498b:	33 c5                	xor    %ebp,%eax
40498d:	89 45 fc             	mov    %eax,-0x4(%ebp)
404990:	53                   	push   %ebx
404991:	8b 5d 0c             	mov    0xc(%ebp),%ebx
404994:	56                   	push   %esi
404995:	8b 75 08             	mov    0x8(%ebp),%esi
404998:	57                   	push   %edi
404999:	8b 7d 14             	mov    0x14(%ebp),%edi
40499c:	3b f3                	cmp    %ebx,%esi
40499e:	74 41                	je     0x4049e1
4049a0:	83 c1 18             	add    $0x18,%ecx
4049a3:	89 4d e8             	mov    %ecx,-0x18(%ebp)
4049a6:	0f b7 06             	movzwl (%esi),%eax
4049a9:	0f 57 c0             	xorps  %xmm0,%xmm0
4049ac:	51                   	push   %ecx
4049ad:	8d 4d ec             	lea    -0x14(%ebp),%ecx
4049b0:	66 0f 13 45 ec       	movlpd %xmm0,-0x14(%ebp)
4049b5:	51                   	push   %ecx
4049b6:	50                   	push   %eax
4049b7:	8d 45 f4             	lea    -0xc(%ebp),%eax
4049ba:	50                   	push   %eax
4049bb:	e8 1f 6d 01 00       	call   0x41b6df
4049c0:	0f b6 4d 10          	movzbl 0x10(%ebp),%ecx
4049c4:	8d 7f 01             	lea    0x1(%edi),%edi
4049c7:	0f b6 55 f4          	movzbl -0xc(%ebp),%edx
4049cb:	83 c4 10             	add    $0x10,%esp
4049ce:	83 f8 01             	cmp    $0x1,%eax
4049d1:	0f 45 d1             	cmovne %ecx,%edx
4049d4:	8b 4d e8             	mov    -0x18(%ebp),%ecx
4049d7:	83 c6 02             	add    $0x2,%esi
4049da:	88 57 ff             	mov    %dl,-0x1(%edi)
4049dd:	3b f3                	cmp    %ebx,%esi
4049df:	75 c5                	jne    0x4049a6
4049e1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4049e4:	8b c6                	mov    %esi,%eax
4049e6:	5f                   	pop    %edi
4049e7:	5e                   	pop    %esi
4049e8:	33 cd                	xor    %ebp,%ecx
4049ea:	5b                   	pop    %ebx
4049eb:	e8 e0 6e 01 00       	call   0x41b8d0
4049f0:	8b e5                	mov    %ebp,%esp
4049f2:	5d                   	pop    %ebp
4049f3:	c2 10 00             	ret    $0x10
4049f6:	cc                   	int3
4049f7:	cc                   	int3
4049f8:	cc                   	int3
4049f9:	cc                   	int3
4049fa:	cc                   	int3
4049fb:	cc                   	int3
4049fc:	cc                   	int3
4049fd:	cc                   	int3
4049fe:	cc                   	int3
4049ff:	cc                   	int3
404a00:	55                   	push   %ebp
404a01:	8b ec                	mov    %esp,%ebp
404a03:	56                   	push   %esi
404a04:	8b f1                	mov    %ecx,%esi
404a06:	83 7e 10 00          	cmpl   $0x0,0x10(%esi)
404a0a:	c7 06 d8 05 44 00    	movl   $0x4405d8,(%esi)
404a10:	74 0b                	je     0x404a1d
404a12:	ff 76 0c             	push   0xc(%esi)
404a15:	e8 33 16 02 00       	call   0x42604d
404a1a:	83 c4 04             	add    $0x4,%esp
404a1d:	ff 76 14             	push   0x14(%esi)
404a20:	e8 28 16 02 00       	call   0x42604d
404a25:	83 c4 04             	add    $0x4,%esp
404a28:	c7 06 9c f8 43 00    	movl   $0x43f89c,(%esi)
404a2e:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
404a32:	74 0b                	je     0x404a3f
404a34:	6a 44                	push   $0x44
404a36:	56                   	push   %esi
404a37:	e8 d2 6e 01 00       	call   0x41b90e
404a3c:	83 c4 08             	add    $0x8,%esp
404a3f:	8b c6                	mov    %esi,%eax
404a41:	5e                   	pop    %esi
404a42:	5d                   	pop    %ebp
404a43:	c2 04 00             	ret    $0x4
404a46:	cc                   	int3
404a47:	cc                   	int3
404a48:	cc                   	int3
404a49:	cc                   	int3
404a4a:	cc                   	int3
404a4b:	cc                   	int3
404a4c:	cc                   	int3
404a4d:	cc                   	int3
404a4e:	cc                   	int3
404a4f:	cc                   	int3
404a50:	55                   	push   %ebp
404a51:	8b ec                	mov    %esp,%ebp
404a53:	6a ff                	push   $0xffffffff
404a55:	68 0d d5 43 00       	push   $0x43d50d
404a5a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
404a60:	50                   	push   %eax
404a61:	83 ec 1c             	sub    $0x1c,%esp
404a64:	53                   	push   %ebx
404a65:	56                   	push   %esi
404a66:	57                   	push   %edi
404a67:	a1 14 40 45 00       	mov    0x454014,%eax
404a6c:	33 c5                	xor    %ebp,%eax
404a6e:	50                   	push   %eax
404a6f:	8d 45 f4             	lea    -0xc(%ebp),%eax
404a72:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
404a78:	8b f1                	mov    %ecx,%esi
404a7a:	89 75 f0             	mov    %esi,-0x10(%ebp)
404a7d:	8b 45 0c             	mov    0xc(%ebp),%eax
404a80:	8b 55 08             	mov    0x8(%ebp),%edx
404a83:	8b ca                	mov    %edx,%ecx
404a85:	89 75 f0             	mov    %esi,-0x10(%ebp)
404a88:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
404a8f:	8b 38                	mov    (%eax),%edi
404a91:	8b 58 04             	mov    0x4(%eax),%ebx
404a94:	8d 41 01             	lea    0x1(%ecx),%eax
404a97:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
404a9e:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
404aa5:	89 45 f0             	mov    %eax,-0x10(%ebp)
404aa8:	8a 01                	mov    (%ecx),%al
404aaa:	41                   	inc    %ecx
404aab:	84 c0                	test   %al,%al
404aad:	75 f9                	jne    0x404aa8
404aaf:	2b 4d f0             	sub    -0x10(%ebp),%ecx
404ab2:	51                   	push   %ecx
404ab3:	52                   	push   %edx
404ab4:	8d 4d d8             	lea    -0x28(%ebp),%ecx
404ab7:	e8 e4 75 00 00       	call   0x40c0a0
404abc:	8d 45 d8             	lea    -0x28(%ebp),%eax
404abf:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
404ac6:	50                   	push   %eax
404ac7:	53                   	push   %ebx
404ac8:	57                   	push   %edi
404ac9:	8b ce                	mov    %esi,%ecx
404acb:	e8 20 f3 ff ff       	call   0x403df0
404ad0:	8b 4d ec             	mov    -0x14(%ebp),%ecx
404ad3:	83 f9 10             	cmp    $0x10,%ecx
404ad6:	72 28                	jb     0x404b00
404ad8:	8b 55 d8             	mov    -0x28(%ebp),%edx
404adb:	41                   	inc    %ecx
404adc:	8b c2                	mov    %edx,%eax
404ade:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
404ae4:	72 10                	jb     0x404af6
404ae6:	8b 50 fc             	mov    -0x4(%eax),%edx
404ae9:	83 c1 23             	add    $0x23,%ecx
404aec:	2b c2                	sub    %edx,%eax
404aee:	83 c0 fc             	add    $0xfffffffc,%eax
404af1:	83 f8 1f             	cmp    $0x1f,%eax
404af4:	77 26                	ja     0x404b1c
404af6:	51                   	push   %ecx
404af7:	52                   	push   %edx
404af8:	e8 11 6e 01 00       	call   0x41b90e
404afd:	83 c4 08             	add    $0x8,%esp
404b00:	c7 06 18 06 44 00    	movl   $0x440618,(%esi)
404b06:	8b c6                	mov    %esi,%eax
404b08:	8b 4d f4             	mov    -0xc(%ebp),%ecx
404b0b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404b12:	59                   	pop    %ecx
404b13:	5f                   	pop    %edi
404b14:	5e                   	pop    %esi
404b15:	5b                   	pop    %ebx
404b16:	8b e5                	mov    %ebp,%esp
404b18:	5d                   	pop    %ebp
404b19:	c2 08 00             	ret    $0x8
404b1c:	e8 5e bf 01 00       	call   0x420a7f
404b21:	cc                   	int3
404b22:	cc                   	int3
404b23:	cc                   	int3
404b24:	cc                   	int3
404b25:	cc                   	int3
404b26:	cc                   	int3
404b27:	cc                   	int3
404b28:	cc                   	int3
404b29:	cc                   	int3
404b2a:	cc                   	int3
404b2b:	cc                   	int3
404b2c:	cc                   	int3
404b2d:	cc                   	int3
404b2e:	cc                   	int3
404b2f:	cc                   	int3
404b30:	55                   	push   %ebp
404b31:	8b ec                	mov    %esp,%ebp
404b33:	83 e4 f8             	and    $0xfffffff8,%esp
404b36:	8b 45 08             	mov    0x8(%ebp),%eax
404b39:	83 ec 1c             	sub    $0x1c,%esp
404b3c:	83 e0 17             	and    $0x17,%eax
404b3f:	89 41 0c             	mov    %eax,0xc(%ecx)
404b42:	8b 49 10             	mov    0x10(%ecx),%ecx
404b45:	56                   	push   %esi
404b46:	23 c8                	and    %eax,%ecx
404b48:	74 08                	je     0x404b52
404b4a:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
404b4e:	74 12                	je     0x404b62
404b50:	eb 07                	jmp    0x404b59
404b52:	5e                   	pop    %esi
404b53:	8b e5                	mov    %ebp,%esp
404b55:	5d                   	pop    %ebp
404b56:	c2 08 00             	ret    $0x8
404b59:	6a 00                	push   $0x0
404b5b:	6a 00                	push   $0x0
404b5d:	e8 7c 88 01 00       	call   0x41d3de
404b62:	f6 c1 04             	test   $0x4,%cl
404b65:	74 07                	je     0x404b6e
404b67:	be 10 db 44 00       	mov    $0x44db10,%esi
404b6c:	eb 10                	jmp    0x404b7e
404b6e:	f6 c1 02             	test   $0x2,%cl
404b71:	be 28 db 44 00       	mov    $0x44db28,%esi
404b76:	b8 40 db 44 00       	mov    $0x44db40,%eax
404b7b:	0f 44 f0             	cmove  %eax,%esi
404b7e:	8d 44 24 04          	lea    0x4(%esp),%eax
404b82:	6a 01                	push   $0x1
404b84:	50                   	push   %eax
404b85:	e8 46 f2 ff ff       	call   0x403dd0
404b8a:	83 c4 08             	add    $0x8,%esp
404b8d:	8d 4c 24 0c          	lea    0xc(%esp),%ecx
404b91:	50                   	push   %eax
404b92:	56                   	push   %esi
404b93:	e8 b8 fe ff ff       	call   0x404a50
404b98:	68 10 29 45 00       	push   $0x452910
404b9d:	8d 44 24 10          	lea    0x10(%esp),%eax
404ba1:	50                   	push   %eax
404ba2:	e8 37 88 01 00       	call   0x41d3de
404ba7:	cc                   	int3
404ba8:	cc                   	int3
404ba9:	cc                   	int3
404baa:	cc                   	int3
404bab:	cc                   	int3
404bac:	cc                   	int3
404bad:	cc                   	int3
404bae:	cc                   	int3
404baf:	cc                   	int3
404bb0:	55                   	push   %ebp
404bb1:	8b ec                	mov    %esp,%ebp
404bb3:	6a ff                	push   $0xffffffff
404bb5:	68 30 d5 43 00       	push   $0x43d530
404bba:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
404bc0:	50                   	push   %eax
404bc1:	56                   	push   %esi
404bc2:	57                   	push   %edi
404bc3:	a1 14 40 45 00       	mov    0x454014,%eax
404bc8:	33 c5                	xor    %ebp,%eax
404bca:	50                   	push   %eax
404bcb:	8d 45 f4             	lea    -0xc(%ebp),%eax
404bce:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
404bd4:	8b f9                	mov    %ecx,%edi
404bd6:	6a 00                	push   $0x0
404bd8:	6a 00                	push   $0x0
404bda:	c7 47 30 00 00 00 00 	movl   $0x0,0x30(%edi)
404be1:	c7 47 08 00 00 00 00 	movl   $0x0,0x8(%edi)
404be8:	c7 47 10 00 00 00 00 	movl   $0x0,0x10(%edi)
404bef:	c7 47 14 01 02 00 00 	movl   $0x201,0x14(%edi)
404bf6:	c7 47 18 06 00 00 00 	movl   $0x6,0x18(%edi)
404bfd:	c7 47 1c 00 00 00 00 	movl   $0x0,0x1c(%edi)
404c04:	c7 47 20 00 00 00 00 	movl   $0x0,0x20(%edi)
404c0b:	c7 47 24 00 00 00 00 	movl   $0x0,0x24(%edi)
404c12:	c7 47 28 00 00 00 00 	movl   $0x0,0x28(%edi)
404c19:	c7 47 2c 00 00 00 00 	movl   $0x0,0x2c(%edi)
404c20:	e8 0b ff ff ff       	call   0x404b30
404c25:	6a 08                	push   $0x8
404c27:	e8 b2 6c 01 00       	call   0x41b8de
404c2c:	8b f0                	mov    %eax,%esi
404c2e:	0f 57 c0             	xorps  %xmm0,%xmm0
404c31:	83 c4 04             	add    $0x4,%esp
404c34:	66 0f d6 06          	movq   %xmm0,(%esi)
404c38:	6a 01                	push   $0x1
404c3a:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
404c41:	e8 ee 65 01 00       	call   0x41b234
404c46:	89 46 04             	mov    %eax,0x4(%esi)
404c49:	83 c4 04             	add    $0x4,%esp
404c4c:	89 77 30             	mov    %esi,0x30(%edi)
404c4f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
404c52:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
404c59:	59                   	pop    %ecx
404c5a:	5f                   	pop    %edi
404c5b:	5e                   	pop    %esi
404c5c:	8b e5                	mov    %ebp,%esp
404c5e:	5d                   	pop    %ebp
404c5f:	c3                   	ret
404c60:	cc                   	int3
404c61:	cc                   	int3
404c62:	cc                   	int3
404c63:	cc                   	int3
404c64:	cc                   	int3
404c65:	cc                   	int3
404c66:	cc                   	int3
404c67:	cc                   	int3
404c68:	cc                   	int3
404c69:	cc                   	int3
404c6a:	cc                   	int3
404c6b:	cc                   	int3
404c6c:	cc                   	int3
404c6d:	cc                   	int3
404c6e:	cc                   	int3
404c6f:	cc                   	int3
404c70:	55                   	push   %ebp
404c71:	8b ec                	mov    %esp,%ebp
404c73:	56                   	push   %esi
404c74:	8b 75 08             	mov    0x8(%ebp),%esi
404c77:	0f 57 c0             	xorps  %xmm0,%xmm0
404c7a:	57                   	push   %edi
404c7b:	8b f9                	mov    %ecx,%edi
404c7d:	8d 47 04             	lea    0x4(%edi),%eax
404c80:	50                   	push   %eax
404c81:	c7 07 44 f8 43 00    	movl   $0x43f844,(%edi)
404c87:	66 0f d6 00          	movq   %xmm0,(%eax)
404c8b:	8d 46 04             	lea    0x4(%esi),%eax
404c8e:	50                   	push   %eax
404c8f:	e8 77 82 01 00       	call   0x41cf0b
404c94:	c7 07 a4 05 44 00    	movl   $0x4405a4,(%edi)
404c9a:	83 c4 08             	add    $0x8,%esp
404c9d:	8b 46 0c             	mov    0xc(%esi),%eax
404ca0:	8b 4e 10             	mov    0x10(%esi),%ecx
404ca3:	89 47 0c             	mov    %eax,0xc(%edi)
404ca6:	8b c7                	mov    %edi,%eax
404ca8:	89 4f 10             	mov    %ecx,0x10(%edi)
404cab:	c7 07 18 06 44 00    	movl   $0x440618,(%edi)
404cb1:	5f                   	pop    %edi
404cb2:	5e                   	pop    %esi
404cb3:	5d                   	pop    %ebp
404cb4:	c2 04 00             	ret    $0x4
404cb7:	cc                   	int3
404cb8:	cc                   	int3
404cb9:	cc                   	int3
404cba:	cc                   	int3
404cbb:	cc                   	int3
404cbc:	cc                   	int3
404cbd:	cc                   	int3
404cbe:	cc                   	int3
404cbf:	cc                   	int3
404cc0:	55                   	push   %ebp
404cc1:	8b ec                	mov    %esp,%ebp
404cc3:	6a ff                	push   $0xffffffff
404cc5:	68 50 d5 43 00       	push   $0x43d550
404cca:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax