408ec4:	5e                   	pop    %esi
408ec5:	5b                   	pop    %ebx
408ec6:	8b 40 04             	mov    0x4(%eax),%eax
408ec9:	8b e5                	mov    %ebp,%esp
408ecb:	5d                   	pop    %ebp
408ecc:	c3                   	ret
408ecd:	cc                   	int3
408ece:	cc                   	int3
408ecf:	cc                   	int3
408ed0:	8b ff                	mov    %edi,%edi
408ed2:	55                   	push   %ebp
408ed3:	8b ec                	mov    %esp,%ebp
408ed5:	51                   	push   %ecx
408ed6:	51                   	push   %ecx
408ed7:	8d 45 f8             	lea    -0x8(%ebp),%eax
408eda:	50                   	push   %eax
408edb:	8d 45 fc             	lea    -0x4(%ebp),%eax
408ede:	50                   	push   %eax
408edf:	6a 01                	push   $0x1
408ee1:	68 e4 26 43 00       	push   $0x4326e4
408ee6:	ff 15 e8 30 43 00    	call   *0x4330e8
408eec:	85 c0                	test   %eax,%eax
408eee:	74 20                	je     0x408f10
408ef0:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
408ef4:	75 1a                	jne    0x408f10
408ef6:	56                   	push   %esi
408ef7:	57                   	push   %edi
408ef8:	8b 7d f8             	mov    -0x8(%ebp),%edi
408efb:	6a 00                	push   $0x0
408efd:	8b 07                	mov    (%edi),%eax
408eff:	8b 70 0c             	mov    0xc(%eax),%esi
408f02:	8b ce                	mov    %esi,%ecx
408f04:	ff 15 18 34 43 00    	call   *0x433418
408f0a:	8b cf                	mov    %edi,%ecx
408f0c:	ff d6                	call   *%esi
408f0e:	5f                   	pop    %edi
408f0f:	5e                   	pop    %esi
408f10:	c9                   	leave
408f11:	c3                   	ret
408f12:	8b ff                	mov    %edi,%edi
408f14:	55                   	push   %ebp
408f15:	8b ec                	mov    %esp,%ebp
408f17:	83 ec 18             	sub    $0x18,%esp
408f1a:	a1 64 10 41 00       	mov    0x411064,%eax
408f1f:	33 c5                	xor    %ebp,%eax
408f21:	89 45 fc             	mov    %eax,-0x4(%ebp)
408f24:	53                   	push   %ebx
408f25:	56                   	push   %esi
408f26:	8b d9                	mov    %ecx,%ebx
408f28:	57                   	push   %edi
408f29:	8d 7d ec             	lea    -0x14(%ebp),%edi
408f2c:	8b 43 10             	mov    0x10(%ebx),%eax
408f2f:	89 43 04             	mov    %eax,0x4(%ebx)
408f32:	c6 43 08 01          	movb   $0x1,0x8(%ebx)
408f36:	89 45 e8             	mov    %eax,-0x18(%ebp)
408f39:	8b 70 04             	mov    0x4(%eax),%esi
408f3c:	83 ee 10             	sub    $0x10,%esi
408f3f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408f40:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408f41:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408f42:	a5                   	movsl  %ds:(%esi),%es:(%edi)
408f43:	83 60 20 00          	andl   $0x0,0x20(%eax)
408f47:	8d 70 18             	lea    0x18(%eax),%esi
408f4a:	83 60 24 00          	andl   $0x0,0x24(%eax)
408f4e:	56                   	push   %esi
408f4f:	50                   	push   %eax
408f50:	68 a0 24 40 00       	push   $0x4024a0
408f55:	8d 45 ec             	lea    -0x14(%ebp),%eax
408f58:	50                   	push   %eax
408f59:	ff 15 10 30 43 00    	call   *0x433010
408f5f:	85 c0                	test   %eax,%eax
408f61:	75 18                	jne    0x408f7b
408f63:	8b 4d e8             	mov    -0x18(%ebp),%ecx
408f66:	8b 49 04             	mov    0x4(%ecx),%ecx
408f69:	0f b7 01             	movzwl (%ecx),%eax
408f6c:	50                   	push   %eax
408f6d:	51                   	push   %ecx
408f6e:	6a 02                	push   $0x2
408f70:	ff 76 04             	push   0x4(%esi)
408f73:	ff 36                	push   (%esi)
408f75:	ff 15 14 30 43 00    	call   *0x433014
408f7b:	8b 03                	mov    (%ebx),%eax
408f7d:	c7 43 0c 01 00 00 00 	movl   $0x1,0xc(%ebx)
408f84:	8b 70 04             	mov    0x4(%eax),%esi
408f87:	8b ce                	mov    %esi,%ecx
408f89:	ff 15 18 34 43 00    	call   *0x433418
408f8f:	8b cb                	mov    %ebx,%ecx
408f91:	ff d6                	call   *%esi
408f93:	8b 4d fc             	mov    -0x4(%ebp),%ecx
408f96:	5f                   	pop    %edi
408f97:	5e                   	pop    %esi
408f98:	33 cd                	xor    %ebp,%ecx
408f9a:	5b                   	pop    %ebx
408f9b:	e8 90 74 00 00       	call   0x410430
408fa0:	c9                   	leave
408fa1:	c3                   	ret
408fa2:	cc                   	int3
408fa3:	cc                   	int3
408fa4:	cc                   	int3
408fa5:	cc                   	int3
408fa6:	cc                   	int3
408fa7:	cc                   	int3
408fa8:	cc                   	int3
408fa9:	cc                   	int3
408faa:	cc                   	int3
408fab:	cc                   	int3
408fac:	cc                   	int3
408fad:	cc                   	int3
408fae:	cc                   	int3
408faf:	cc                   	int3
408fb0:	8b ff                	mov    %edi,%edi
408fb2:	55                   	push   %ebp
408fb3:	8b ec                	mov    %esp,%ebp
408fb5:	51                   	push   %ecx
408fb6:	51                   	push   %ecx
408fb7:	8d 45 f8             	lea    -0x8(%ebp),%eax
408fba:	50                   	push   %eax
408fbb:	8d 45 fc             	lea    -0x4(%ebp),%eax
408fbe:	50                   	push   %eax
408fbf:	6a 01                	push   $0x1
408fc1:	68 fc 26 43 00       	push   $0x4326fc
408fc6:	ff 15 e8 30 43 00    	call   *0x4330e8
408fcc:	85 c0                	test   %eax,%eax
408fce:	74 20                	je     0x408ff0
408fd0:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
408fd4:	75 1a                	jne    0x408ff0
408fd6:	56                   	push   %esi
408fd7:	57                   	push   %edi
408fd8:	8b 7d f8             	mov    -0x8(%ebp),%edi
408fdb:	6a 00                	push   $0x0
408fdd:	8b 07                	mov    (%edi),%eax
408fdf:	8b 70 0c             	mov    0xc(%eax),%esi
408fe2:	8b ce                	mov    %esi,%ecx
408fe4:	ff 15 18 34 43 00    	call   *0x433418
408fea:	8b cf                	mov    %edi,%ecx
408fec:	ff d6                	call   *%esi
408fee:	5f                   	pop    %edi
408fef:	5e                   	pop    %esi
408ff0:	c9                   	leave
408ff1:	c3                   	ret
408ff2:	8b ff                	mov    %edi,%edi
408ff4:	55                   	push   %ebp
408ff5:	8b ec                	mov    %esp,%ebp
408ff7:	83 ec 40             	sub    $0x40,%esp
408ffa:	a1 64 10 41 00       	mov    0x411064,%eax
408fff:	33 c5                	xor    %ebp,%eax
409001:	89 45 f8             	mov    %eax,-0x8(%ebp)
409004:	56                   	push   %esi
409005:	e8 47 fe ff ff       	call   0x408e51
40900a:	8b c8                	mov    %eax,%ecx
40900c:	83 39 05             	cmpl   $0x5,(%ecx)
40900f:	76 3f                	jbe    0x409050
409011:	68 00 20 00 00       	push   $0x2000
409016:	33 f6                	xor    %esi,%esi
409018:	56                   	push   %esi
409019:	e8 89 95 ff ff       	call   0x4025a7
40901e:	84 c0                	test   %al,%al
409020:	74 2e                	je     0x409050
409022:	66 8b 45 08          	mov    0x8(%ebp),%ax
409026:	66 89 45 c2          	mov    %ax,-0x3e(%ebp)
40902a:	8d 45 c2             	lea    -0x3e(%ebp),%eax
40902d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
409030:	8d 45 c4             	lea    -0x3c(%ebp),%eax
409033:	50                   	push   %eax
409034:	6a 03                	push   $0x3
409036:	56                   	push   %esi
409037:	56                   	push   %esi
409038:	68 e7 1e 40 00       	push   $0x401ee7
40903d:	51                   	push   %ecx
40903e:	89 75 e8             	mov    %esi,-0x18(%ebp)
409041:	c7 45 ec 02 00 00 00 	movl   $0x2,-0x14(%ebp)
409048:	89 75 f0             	mov    %esi,-0x10(%ebp)
40904b:	e8 cb 94 ff ff       	call   0x40251b
409050:	8b 4d f8             	mov    -0x8(%ebp),%ecx
409053:	33 cd                	xor    %ebp,%ecx
409055:	5e                   	pop    %esi
409056:	e8 d5 73 00 00       	call   0x410430
40905b:	c9                   	leave
40905c:	c2 04 00             	ret    $0x4
40905f:	cc                   	int3
409060:	8b ff                	mov    %edi,%edi
409062:	55                   	push   %ebp
409063:	8b ec                	mov    %esp,%ebp
409065:	83 ec 4c             	sub    $0x4c,%esp
409068:	53                   	push   %ebx
409069:	56                   	push   %esi
40906a:	8b f1                	mov    %ecx,%esi
40906c:	33 db                	xor    %ebx,%ebx
40906e:	57                   	push   %edi
40906f:	8b 7e 18             	mov    0x18(%esi),%edi
409072:	8b 47 3c             	mov    0x3c(%edi),%eax
409075:	85 c0                	test   %eax,%eax
409077:	79 0a                	jns    0x409083
409079:	3b 47 44             	cmp    0x44(%edi),%eax
40907c:	75 05                	jne    0x409083
40907e:	83 c7 40             	add    $0x40,%edi
409081:	eb 02                	jmp    0x409085
409083:	8b fb                	mov    %ebx,%edi
409085:	e8 aa 5d 00 00       	call   0x40ee34
40908a:	e8 c2 fd ff ff       	call   0x408e51
40908f:	85 ff                	test   %edi,%edi
409091:	0f 84 dc 00 00 00    	je     0x409173
409097:	8b c8                	mov    %eax,%ecx
409099:	83 39 05             	cmpl   $0x5,(%ecx)
40909c:	0f 86 1f 01 00 00    	jbe    0x4091c1
4090a2:	68 00 20 00 00       	push   $0x2000
4090a7:	53                   	push   %ebx
4090a8:	e8 fa 94 ff ff       	call   0x4025a7
4090ad:	84 c0                	test   %al,%al
4090af:	0f 84 0c 01 00 00    	je     0x4091c1
4090b5:	8b 47 40             	mov    0x40(%edi),%eax
4090b8:	ba c6 1d 40 00       	mov    $0x401dc6,%edx
4090bd:	89 45 fc             	mov    %eax,-0x4(%ebp)
4090c0:	8b 47 3c             	mov    0x3c(%edi),%eax
4090c3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4090c6:	8b 47 38             	mov    0x38(%edi),%eax
4090c9:	89 45 f4             	mov    %eax,-0xc(%ebp)
4090cc:	8b 47 34             	mov    0x34(%edi),%eax
4090cf:	89 45 f0             	mov    %eax,-0x10(%ebp)
4090d2:	8b 47 30             	mov    0x30(%edi),%eax
4090d5:	89 45 ec             	mov    %eax,-0x14(%ebp)
4090d8:	8b 47 2c             	mov    0x2c(%edi),%eax
4090db:	89 45 e8             	mov    %eax,-0x18(%ebp)
4090de:	8b 47 28             	mov    0x28(%edi),%eax
4090e1:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4090e4:	8b 47 10             	mov    0x10(%edi),%eax
4090e7:	89 45 e0             	mov    %eax,-0x20(%ebp)
4090ea:	8b 47 0c             	mov    0xc(%edi),%eax
4090ed:	89 45 dc             	mov    %eax,-0x24(%ebp)
4090f0:	8b 07                	mov    (%edi),%eax
4090f2:	89 45 d8             	mov    %eax,-0x28(%ebp)
4090f5:	8b 47 44             	mov    0x44(%edi),%eax
4090f8:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4090fb:	8b 47 20             	mov    0x20(%edi),%eax
4090fe:	89 45 d0             	mov    %eax,-0x30(%ebp)
409101:	8b 47 1c             	mov    0x1c(%edi),%eax
409104:	89 45 cc             	mov    %eax,-0x34(%ebp)
409107:	8b 47 04             	mov    0x4(%edi),%eax
40910a:	89 45 c8             	mov    %eax,-0x38(%ebp)
40910d:	8d 45 b8             	lea    -0x48(%ebp),%eax
409110:	89 45 c4             	mov    %eax,-0x3c(%ebp)
409113:	8d 45 fc             	lea    -0x4(%ebp),%eax
409116:	50                   	push   %eax
409117:	8d 45 f8             	lea    -0x8(%ebp),%eax
40911a:	c7 45 b8 00 00 00 01 	movl   $0x1000000,-0x48(%ebp)
409121:	50                   	push   %eax
409122:	8d 45 f4             	lea    -0xc(%ebp),%eax
409125:	89 5d bc             	mov    %ebx,-0x44(%ebp)
409128:	50                   	push   %eax
409129:	8d 45 f0             	lea    -0x10(%ebp),%eax
40912c:	c7 45 c0 a8 19 40 00 	movl   $0x4019a8,-0x40(%ebp)
409133:	50                   	push   %eax
409134:	8d 45 ec             	lea    -0x14(%ebp),%eax
409137:	50                   	push   %eax
409138:	8d 45 e8             	lea    -0x18(%ebp),%eax
40913b:	50                   	push   %eax
40913c:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40913f:	50                   	push   %eax
409140:	8d 45 e0             	lea    -0x20(%ebp),%eax
409143:	50                   	push   %eax
409144:	8d 45 dc             	lea    -0x24(%ebp),%eax
409147:	50                   	push   %eax
409148:	8d 45 d8             	lea    -0x28(%ebp),%eax
40914b:	50                   	push   %eax
40914c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40914f:	50                   	push   %eax
409150:	8d 45 d0             	lea    -0x30(%ebp),%eax
409153:	50                   	push   %eax
409154:	8d 45 cc             	lea    -0x34(%ebp),%eax
409157:	50                   	push   %eax
409158:	8d 45 c8             	lea    -0x38(%ebp),%eax
40915b:	50                   	push   %eax
40915c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
40915f:	50                   	push   %eax
409160:	8d 45 c0             	lea    -0x40(%ebp),%eax
409163:	50                   	push   %eax
409164:	8b 46 18             	mov    0x18(%esi),%eax
409167:	51                   	push   %ecx
409168:	83 c0 08             	add    $0x8,%eax
40916b:	50                   	push   %eax
40916c:	e8 22 98 ff ff       	call   0x402993
409171:	eb 4e                	jmp    0x4091c1
409173:	8b f8                	mov    %eax,%edi
409175:	83 3f 05             	cmpl   $0x5,(%edi)
409178:	76 47                	jbe    0x4091c1
40917a:	68 00 20 00 00       	push   $0x2000
40917f:	53                   	push   %ebx
409180:	8b cf                	mov    %edi,%ecx
409182:	e8 20 94 ff ff       	call   0x4025a7
409187:	84 c0                	test   %al,%al
409189:	74 36                	je     0x4091c1
40918b:	ff 15 50 31 43 00    	call   *0x433150
409191:	8b 56 18             	mov    0x18(%esi),%edx
409194:	c7 45 c8 a8 19 40 00 	movl   $0x4019a8,-0x38(%ebp)
40919b:	8b 4a 3c             	mov    0x3c(%edx),%ecx
40919e:	89 45 c0             	mov    %eax,-0x40(%ebp)
4091a1:	8d 45 c0             	lea    -0x40(%ebp),%eax
4091a4:	50                   	push   %eax
4091a5:	8d 45 c4             	lea    -0x3c(%ebp),%eax
4091a8:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
4091ab:	50                   	push   %eax
4091ac:	8d 45 c8             	lea    -0x38(%ebp),%eax
4091af:	50                   	push   %eax
4091b0:	51                   	push   %ecx
4091b1:	8d 42 08             	lea    0x8(%edx),%eax
4091b4:	8b cf                	mov    %edi,%ecx
4091b6:	50                   	push   %eax
4091b7:	ba 7c 1d 40 00       	mov    $0x401d7c,%edx
4091bc:	e8 a2 99 ff ff       	call   0x402b63
4091c1:	39 5e 10             	cmp    %ebx,0x10(%esi)
4091c4:	74 08                	je     0x4091ce
4091c6:	8d 4e 04             	lea    0x4(%esi),%ecx
4091c9:	e8 a9 f7 ff ff       	call   0x408977
4091ce:	5f                   	pop    %edi
4091cf:	5e                   	pop    %esi
4091d0:	5b                   	pop    %ebx
4091d1:	c9                   	leave
4091d2:	c3                   	ret
4091d3:	cc                   	int3
4091d4:	cc                   	int3
4091d5:	cc                   	int3
4091d6:	cc                   	int3
4091d7:	cc                   	int3
4091d8:	cc                   	int3
4091d9:	cc                   	int3
4091da:	cc                   	int3
4091db:	cc                   	int3
4091dc:	cc                   	int3
4091dd:	cc                   	int3
4091de:	cc                   	int3
4091df:	cc                   	int3
4091e0:	8b ff                	mov    %edi,%edi
4091e2:	55                   	push   %ebp
4091e3:	8b ec                	mov    %esp,%ebp
4091e5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4091e8:	39 0d 40 13 41 00    	cmp    %ecx,0x411340
4091ee:	89 0d 40 13 41 00    	mov    %ecx,0x411340
4091f4:	0f 94 c0             	sete   %al
4091f7:	5d                   	pop    %ebp
4091f8:	c2 04 00             	ret    $0x4
4091fb:	8b ff                	mov    %edi,%edi
4091fd:	55                   	push   %ebp
4091fe:	8b ec                	mov    %esp,%ebp
409200:	83 e4 f8             	and    $0xfffffff8,%esp
409203:	51                   	push   %ecx
409204:	53                   	push   %ebx
409205:	56                   	push   %esi
409206:	8b f1                	mov    %ecx,%esi
409208:	33 db                	xor    %ebx,%ebx
40920a:	57                   	push   %edi