409e23:	74 0a                	je     0x409e2f
409e25:	ff 75 f0             	push   -0x10(%ebp)
409e28:	e8 ba 88 03 00       	call   0x4426e7
409e2d:	eb 05                	jmp    0x409e34
409e2f:	e8 f9 8d 03 00       	call   0x442c2d
409e34:	8b f0                	mov    %eax,%esi
409e36:	8b 45 f8             	mov    -0x8(%ebp),%eax
409e39:	6a 04                	push   $0x4
409e3b:	5a                   	pop    %edx
409e3c:	83 f8 fc             	cmp    $0xfffffffc,%eax
409e3f:	75 04                	jne    0x409e45
409e41:	8b c2                	mov    %edx,%eax
409e43:	eb 31                	jmp    0x409e76
409e45:	83 f8 ff             	cmp    $0xffffffff,%eax
409e48:	74 29                	je     0x409e73
409e4a:	83 f8 f9             	cmp    $0xfffffff9,%eax
409e4d:	74 24                	je     0x409e73
409e4f:	83 f8 02             	cmp    $0x2,%eax
409e52:	74 25                	je     0x409e79
409e54:	83 f8 03             	cmp    $0x3,%eax
409e57:	74 20                	je     0x409e79
409e59:	3b c2                	cmp    %edx,%eax
409e5b:	74 1c                	je     0x409e79
409e5d:	50                   	push   %eax
409e5e:	be 57 00 07 80       	mov    $0x80070057,%esi
409e63:	68 50 eb 44 00       	push   $0x44eb50
409e68:	56                   	push   %esi
409e69:	e8 c1 62 03 00       	call   0x44012f
409e6e:	83 c4 0c             	add    $0xc,%esp
409e71:	eb 7d                	jmp    0x409ef0
409e73:	6a 02                	push   $0x2
409e75:	58                   	pop    %eax
409e76:	89 45 f8             	mov    %eax,-0x8(%ebp)
409e79:	8b 4f 10             	mov    0x10(%edi),%ecx
409e7c:	83 e9 01             	sub    $0x1,%ecx
409e7f:	74 40                	je     0x409ec1
409e81:	83 e9 01             	sub    $0x1,%ecx
409e84:	74 2b                	je     0x409eb1
409e86:	83 e9 01             	sub    $0x1,%ecx
409e89:	75 54                	jne    0x409edf
409e8b:	83 f8 02             	cmp    $0x2,%eax
409e8e:	74 09                	je     0x409e99
409e90:	83 f8 03             	cmp    $0x3,%eax
409e93:	74 04                	je     0x409e99
409e95:	3b c2                	cmp    %edx,%eax
409e97:	75 46                	jne    0x409edf
409e99:	6a 5c                	push   $0x5c
409e9b:	ff 75 fc             	push   -0x4(%ebp)
409e9e:	e8 d5 59 02 00       	call   0x42f878
409ea3:	59                   	pop    %ecx
409ea4:	59                   	pop    %ecx
409ea5:	85 c0                	test   %eax,%eax
409ea7:	74 26                	je     0x409ecf
409ea9:	33 c9                	xor    %ecx,%ecx
409eab:	66 89 48 02          	mov    %cx,0x2(%eax)
409eaf:	eb 1e                	jmp    0x409ecf
409eb1:	6a 00                	push   $0x0
409eb3:	99                   	cltd
409eb4:	52                   	push   %edx
409eb5:	50                   	push   %eax
409eb6:	ff 77 04             	push   0x4(%edi)
409eb9:	53                   	push   %ebx
409eba:	e8 93 e2 ff ff       	call   0x408152
409ebf:	eb 1c                	jmp    0x409edd
409ec1:	83 f8 02             	cmp    $0x2,%eax
409ec4:	74 09                	je     0x409ecf
409ec6:	83 f8 03             	cmp    $0x3,%eax
409ec9:	74 04                	je     0x409ecf
409ecb:	3b c2                	cmp    %edx,%eax
409ecd:	75 10                	jne    0x409edf
409ecf:	6a 00                	push   $0x0
409ed1:	ff 75 fc             	push   -0x4(%ebp)
409ed4:	ff 77 04             	push   0x4(%edi)
409ed7:	53                   	push   %ebx
409ed8:	e8 19 e2 ff ff       	call   0x4080f6
409edd:	8b f0                	mov    %eax,%esi
409edf:	85 f6                	test   %esi,%esi
409ee1:	79 1f                	jns    0x409f02
409ee3:	68 18 d2 44 00       	push   $0x44d218
409ee8:	56                   	push   %esi
409ee9:	e8 41 62 03 00       	call   0x44012f
409eee:	59                   	pop    %ecx
409eef:	59                   	pop    %ecx
409ef0:	56                   	push   %esi
409ef1:	ff 37                	push   (%edi)
409ef3:	68 74 eb 44 00       	push   $0x44eb74
409ef8:	6a 02                	push   $0x2
409efa:	e8 1b 67 03 00       	call   0x44061a
409eff:	83 c4 10             	add    $0x10,%esp
409f02:	ff 75 f4             	push   -0xc(%ebp)
409f05:	e8 89 88 ff ff       	call   0x402793
409f0a:	ff 75 f0             	push   -0x10(%ebp)
409f0d:	e8 81 88 ff ff       	call   0x402793
409f12:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
409f16:	74 08                	je     0x409f20
409f18:	ff 75 fc             	push   -0x4(%ebp)
409f1b:	e8 cf b5 03 00       	call   0x4454ef
409f20:	5f                   	pop    %edi
409f21:	8b c6                	mov    %esi,%eax
409f23:	5e                   	pop    %esi
409f24:	5b                   	pop    %ebx
409f25:	8b e5                	mov    %ebp,%esp
409f27:	5d                   	pop    %ebp
409f28:	c2 08 00             	ret    $0x8
409f2b:	55                   	push   %ebp
409f2c:	8b ec                	mov    %esp,%ebp
409f2e:	83 ec 24             	sub    $0x24,%esp
409f31:	53                   	push   %ebx
409f32:	56                   	push   %esi
409f33:	57                   	push   %edi
409f34:	6a 06                	push   $0x6
409f36:	33 c0                	xor    %eax,%eax
409f38:	8d 7d dc             	lea    -0x24(%ebp),%edi
409f3b:	59                   	pop    %ecx
409f3c:	f3 ab                	rep stos %eax,%es:(%edi)
409f3e:	8b 4d 08             	mov    0x8(%ebp),%ecx
409f41:	33 db                	xor    %ebx,%ebx
409f43:	89 5d fc             	mov    %ebx,-0x4(%ebp)
409f46:	89 5d f8             	mov    %ebx,-0x8(%ebp)
409f49:	89 5d f4             	mov    %ebx,-0xc(%ebp)
409f4c:	8b 51 10             	mov    0x10(%ecx),%edx
409f4f:	8b c2                	mov    %edx,%eax
409f51:	83 e8 01             	sub    $0x1,%eax
409f54:	74 3d                	je     0x409f93
409f56:	83 e8 01             	sub    $0x1,%eax
409f59:	74 31                	je     0x409f8c
409f5b:	83 e8 01             	sub    $0x1,%eax
409f5e:	74 25                	je     0x409f85
409f60:	83 e8 01             	sub    $0x1,%eax
409f63:	74 19                	je     0x409f7e
409f65:	52                   	push   %edx
409f66:	be 01 40 00 80       	mov    $0x80004001,%esi
409f6b:	68 04 ec 44 00       	push   $0x44ec04
409f70:	56                   	push   %esi
409f71:	e8 b9 61 03 00       	call   0x44012f
409f76:	83 c4 0c             	add    $0xc,%esp
409f79:	e9 bd 01 00 00       	jmp    0x40a13b
409f7e:	bf e4 eb 44 00       	mov    $0x44ebe4,%edi
409f83:	eb 13                	jmp    0x409f98
409f85:	bf d8 eb 44 00       	mov    $0x44ebd8,%edi
409f8a:	eb 0c                	jmp    0x409f98
409f8c:	bf c4 eb 44 00       	mov    $0x44ebc4,%edi
409f91:	eb 05                	jmp    0x409f98
409f93:	bf a8 eb 44 00       	mov    $0x44eba8,%edi
409f98:	53                   	push   %ebx
409f99:	8d 45 fc             	lea    -0x4(%ebp),%eax
409f9c:	50                   	push   %eax
409f9d:	ff 71 18             	push   0x18(%ecx)
409fa0:	ff 75 0c             	push   0xc(%ebp)
409fa3:	e8 27 d2 ff ff       	call   0x4071cf
409fa8:	8b f0                	mov    %eax,%esi
409faa:	85 f6                	test   %esi,%esi
409fac:	79 0a                	jns    0x409fb8
409fae:	68 28 ec 44 00       	push   $0x44ec28
409fb3:	e9 7b 01 00 00       	jmp    0x40a133
409fb8:	8b 45 08             	mov    0x8(%ebp),%eax
409fbb:	6a 02                	push   $0x2
409fbd:	59                   	pop    %ecx
409fbe:	89 4d ec             	mov    %ecx,-0x14(%ebp)
409fc1:	39 48 14             	cmp    %ecx,0x14(%eax)
409fc4:	75 4c                	jne    0x40a012
409fc6:	6a 01                	push   $0x1
409fc8:	8d 45 f4             	lea    -0xc(%ebp),%eax
409fcb:	50                   	push   %eax
409fcc:	8d 45 f8             	lea    -0x8(%ebp),%eax
409fcf:	50                   	push   %eax
409fd0:	ff 75 fc             	push   -0x4(%ebp)
409fd3:	e8 86 85 03 00       	call   0x44255e
409fd8:	8b f0                	mov    %eax,%esi
409fda:	85 f6                	test   %esi,%esi
409fdc:	79 0a                	jns    0x409fe8
409fde:	68 48 ec 44 00       	push   $0x44ec48
409fe3:	e9 4b 01 00 00       	jmp    0x40a133
409fe8:	83 7d f4 01          	cmpl   $0x1,-0xc(%ebp)
409fec:	75 1f                	jne    0x40a00d
409fee:	8b 45 f8             	mov    -0x8(%ebp),%eax
409ff1:	53                   	push   %ebx
409ff2:	ff 30                	push   (%eax)
409ff4:	8d 45 fc             	lea    -0x4(%ebp),%eax
409ff7:	50                   	push   %eax
409ff8:	e8 fc 82 ff ff       	call   0x4022f9
409ffd:	8b f0                	mov    %eax,%esi
409fff:	85 f6                	test   %esi,%esi
40a001:	79 0f                	jns    0x40a012
40a003:	68 80 ec 44 00       	push   $0x44ec80
40a008:	e9 26 01 00 00       	jmp    0x40a133
40a00d:	be 45 06 07 80       	mov    $0x80070645,%esi
40a012:	81 fe 45 06 07 80    	cmp    $0x80070645,%esi
40a018:	74 71                	je     0x40a08b
40a01a:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a01d:	50                   	push   %eax
40a01e:	57                   	push   %edi
40a01f:	ff 75 fc             	push   -0x4(%ebp)
40a022:	e8 40 88 03 00       	call   0x442867
40a027:	8b f0                	mov    %eax,%esi
40a029:	81 fe 48 06 07 80    	cmp    $0x80070648,%esi
40a02f:	75 52                	jne    0x40a083
40a031:	ff 75 fc             	push   -0x4(%ebp)
40a034:	57                   	push   %edi
40a035:	68 a0 ec 44 00       	push   $0x44eca0
40a03a:	6a 03                	push   $0x3
40a03c:	e8 d9 65 03 00       	call   0x44061a
40a041:	83 c4 10             	add    $0x10,%esp
40a044:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a047:	50                   	push   %eax
40a048:	57                   	push   %edi
40a049:	6a 04                	push   $0x4
40a04b:	53                   	push   %ebx
40a04c:	ff 75 fc             	push   -0x4(%ebp)
40a04f:	e8 a4 88 03 00       	call   0x4428f8
40a054:	8b f0                	mov    %eax,%esi
40a056:	81 fe 45 06 07 80    	cmp    $0x80070645,%esi
40a05c:	75 70                	jne    0x40a0ce
40a05e:	ff 75 fc             	push   -0x4(%ebp)
40a061:	57                   	push   %edi
40a062:	68 e8 ec 44 00       	push   $0x44ece8
40a067:	6a 02                	push   $0x2
40a069:	e8 ac 65 03 00       	call   0x44061a
40a06e:	83 c4 10             	add    $0x10,%esp
40a071:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a074:	50                   	push   %eax
40a075:	57                   	push   %edi
40a076:	6a 02                	push   $0x2
40a078:	53                   	push   %ebx
40a079:	ff 75 fc             	push   -0x4(%ebp)
40a07c:	e8 77 88 03 00       	call   0x4428f8
40a081:	8b f0                	mov    %eax,%esi
40a083:	81 fe 45 06 07 80    	cmp    $0x80070645,%esi
40a089:	75 43                	jne    0x40a0ce
40a08b:	ff 75 fc             	push   -0x4(%ebp)
40a08e:	68 2c ed 44 00       	push   $0x44ed2c
40a093:	6a 02                	push   $0x2
40a095:	5e                   	pop    %esi
40a096:	56                   	push   %esi
40a097:	e8 7e 65 03 00       	call   0x44061a
40a09c:	8b 4d 08             	mov    0x8(%ebp),%ecx
40a09f:	83 c4 0c             	add    $0xc,%esp
40a0a2:	8b 41 10             	mov    0x10(%ecx),%eax
40a0a5:	83 e8 01             	sub    $0x1,%eax
40a0a8:	74 09                	je     0x40a0b3
40a0aa:	2b c6                	sub    %esi,%eax
40a0ac:	74 18                	je     0x40a0c6
40a0ae:	83 e8 01             	sub    $0x1,%eax
40a0b1:	75 0f                	jne    0x40a0c2
40a0b3:	0f 57 c0             	xorps  %xmm0,%xmm0
40a0b6:	66 0f 13 45 dc       	movlpd %xmm0,-0x24(%ebp)
40a0bb:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
40a0c2:	8b f3                	mov    %ebx,%esi
40a0c4:	eb 0b                	jmp    0x40a0d1
40a0c6:	89 75 dc             	mov    %esi,-0x24(%ebp)
40a0c9:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40a0cc:	eb ed                	jmp    0x40a0bb
40a0ce:	8b 4d 08             	mov    0x8(%ebp),%ecx
40a0d1:	85 f6                	test   %esi,%esi
40a0d3:	79 07                	jns    0x40a0dc
40a0d5:	68 58 ed 44 00       	push   $0x44ed58
40a0da:	eb 57                	jmp    0x40a133
40a0dc:	8b 41 10             	mov    0x10(%ecx),%eax
40a0df:	83 e8 01             	sub    $0x1,%eax
40a0e2:	74 18                	je     0x40a0fc
40a0e4:	83 e8 01             	sub    $0x1,%eax
40a0e7:	74 0f                	je     0x40a0f8
40a0e9:	83 e8 01             	sub    $0x1,%eax
40a0ec:	74 05                	je     0x40a0f3
40a0ee:	83 e8 01             	sub    $0x1,%eax
40a0f1:	75 0c                	jne    0x40a0ff
40a0f3:	33 db                	xor    %ebx,%ebx
40a0f5:	43                   	inc    %ebx
40a0f6:	eb 07                	jmp    0x40a0ff
40a0f8:	6a 02                	push   $0x2
40a0fa:	eb 02                	jmp    0x40a0fe
40a0fc:	6a 03                	push   $0x3
40a0fe:	5b                   	pop    %ebx
40a0ff:	53                   	push   %ebx
40a100:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a103:	50                   	push   %eax
40a104:	e8 ae 5d 01 00       	call   0x41feb7
40a109:	8b f0                	mov    %eax,%esi
40a10b:	85 f6                	test   %esi,%esi
40a10d:	79 07                	jns    0x40a116
40a10f:	68 ac ea 44 00       	push   $0x44eaac
40a114:	eb 1d                	jmp    0x40a133
40a116:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a119:	50                   	push   %eax
40a11a:	8b 45 08             	mov    0x8(%ebp),%eax
40a11d:	ff 70 04             	push   0x4(%eax)
40a120:	ff 75 0c             	push   0xc(%ebp)
40a123:	e8 0f e0 ff ff       	call   0x408137
40a128:	8b f0                	mov    %eax,%esi
40a12a:	85 f6                	test   %esi,%esi
40a12c:	79 22                	jns    0x40a150
40a12e:	68 18 d2 44 00       	push   $0x44d218
40a133:	56                   	push   %esi
40a134:	e8 f6 5f 03 00       	call   0x44012f
40a139:	59                   	pop    %ecx
40a13a:	59                   	pop    %ecx
40a13b:	8b 45 08             	mov    0x8(%ebp),%eax
40a13e:	56                   	push   %esi
40a13f:	ff 30                	push   (%eax)
40a141:	68 74 ed 44 00       	push   $0x44ed74
40a146:	6a 02                	push   $0x2
40a148:	e8 cd 64 03 00       	call   0x44061a
40a14d:	83 c4 10             	add    $0x10,%esp
40a150:	ff 75 fc             	push   -0x4(%ebp)
40a153:	e8 3b 86 ff ff       	call   0x402793
40a158:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
40a15c:	74 0b                	je     0x40a169
40a15e:	ff 75 f4             	push   -0xc(%ebp)
40a161:	ff 75 f8             	push   -0x8(%ebp)
40a164:	e8 de 84 ff ff       	call   0x402647
40a169:	8d 45 dc             	lea    -0x24(%ebp),%eax
40a16c:	50                   	push   %eax
40a16d:	e8 27 63 01 00       	call   0x420499
40a172:	5f                   	pop    %edi
40a173:	8b c6                	mov    %esi,%eax
40a175:	5e                   	pop    %esi
40a176:	5b                   	pop    %ebx
40a177:	8b e5                	mov    %ebp,%esp
40a179:	5d                   	pop    %ebp
40a17a:	c2 08 00             	ret    $0x8
40a17d:	55                   	push   %ebp
40a17e:	8b ec                	mov    %esp,%ebp
40a180:	83 ec 10             	sub    $0x10,%esp
40a183:	53                   	push   %ebx
40a184:	8b 5d 08             	mov    0x8(%ebp),%ebx
40a187:	33 c9                	xor    %ecx,%ecx
40a189:	56                   	push   %esi
40a18a:	57                   	push   %edi
40a18b:	51                   	push   %ecx
40a18c:	8b 43 24             	mov    0x24(%ebx),%eax
40a18f:	89 45 08             	mov    %eax,0x8(%ebp)
40a192:	8d 45 fc             	lea    -0x4(%ebp),%eax
40a195:	50                   	push   %eax
40a196:	ff 73 1c             	push   0x1c(%ebx)
40a199:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40a19c:	ff 75 0c             	push   0xc(%ebp)
40a19f:	89 4d f8             	mov    %ecx,-0x8(%ebp)
40a1a2:	89 4d f4             	mov    %ecx,-0xc(%ebp)
40a1a5:	89 4d f0             	mov    %ecx,-0x10(%ebp)
40a1a8:	e8 22 d0 ff ff       	call   0x4071cf
40a1ad:	8b f0                	mov    %eax,%esi
40a1af:	85 f6                	test   %esi,%esi
40a1b1:	79 12                	jns    0x40a1c5
40a1b3:	68 54 e8 44 00       	push   $0x44e854
40a1b8:	56                   	push   %esi
40a1b9:	e8 71 5f 03 00       	call   0x44012f
40a1be:	59                   	pop    %ecx
40a1bf:	59                   	pop    %ecx
40a1c0:	e9 0b 01 00 00       	jmp    0x40a2d0
40a1c5:	33 ff                	xor    %edi,%edi