430e01:	8b fe                	mov    %esi,%edi
430e03:	89 46 04             	mov    %eax,0x4(%esi)
430e06:	33 db                	xor    %ebx,%ebx
430e08:	a1 e8 14 45 00       	mov    0x4514e8,%eax
430e0d:	89 30                	mov    %esi,(%eax)
430e0f:	89 35 e8 14 45 00    	mov    %esi,0x4514e8
430e15:	eb 4b                	jmp    0x430e62
430e17:	51                   	push   %ecx
430e18:	8b ce                	mov    %esi,%ecx
430e1a:	e8 f1 fc ff ff       	call   0x430b10
430e1f:	eb 41                	jmp    0x430e62
430e21:	e8 ca ce 00 00       	call   0x43dcf0
430e26:	83 c0 10             	add    $0x10,%eax
430e29:	74 0a                	je     0x430e35
430e2b:	e8 c0 ce 00 00       	call   0x43dcf0
430e30:	83 c0 14             	add    $0x14,%eax
430e33:	eb 02                	jmp    0x430e37
430e35:	33 c0                	xor    %eax,%eax
430e37:	81 3d 30 1a 45 00 0d 	cmpl   $0xfffffc0d,0x451a30
430e3e:	fc ff ff
430e41:	c7 00 60 19 41 00    	movl   $0x411960,(%eax)
430e47:	c7 40 04 2b 0c 00 00 	movl   $0xc2b,0x4(%eax)
430e4e:	c7 40 08 0d fc ff ff 	movl   $0xfffffc0d,0x8(%eax)
430e55:	75 06                	jne    0x430e5d
430e57:	ff 15 58 20 45 00    	call   *0x452058
430e5d:	bb 0d fc ff ff       	mov    $0xfffffc0d,%ebx
430e62:	b9 f0 14 45 00       	mov    $0x4514f0,%ecx
430e67:	e8 84 77 00 00       	call   0x4385f0
430e6c:	85 db                	test   %ebx,%ebx
430e6e:	0f 88 e2 00 00 00    	js     0x430f56
430e74:	83 3d 68 1a 45 00 00 	cmpl   $0x0,0x451a68
430e7b:	0f 84 c9 00 00 00    	je     0x430f4a
430e81:	83 3d 6c 1a 45 00 00 	cmpl   $0x0,0x451a6c
430e88:	0f 85 bc 00 00 00    	jne    0x430f4a
430e8e:	83 3d 3c 14 45 00 00 	cmpl   $0x0,0x45143c
430e95:	0f 84 af 00 00 00    	je     0x430f4a
430e9b:	83 3d 64 1a 45 00 00 	cmpl   $0x0,0x451a64
430ea2:	74 12                	je     0x430eb6
430ea4:	ff 15 b4 21 45 00    	call   *0x4521b4
430eaa:	3b 05 64 1a 45 00    	cmp    0x451a64,%eax
430eb0:	0f 85 94 00 00 00    	jne    0x430f4a
430eb6:	e8 75 92 ff ff       	call   0x42a130
430ebb:	85 c0                	test   %eax,%eax
430ebd:	74 03                	je     0x430ec2
430ebf:	ff 40 18             	incl   0x18(%eax)
430ec2:	8d 47 18             	lea    0x18(%edi),%eax
430ec5:	50                   	push   %eax
430ec6:	57                   	push   %edi
430ec7:	68 0c 22 41 00       	push   $0x41220c
430ecc:	e8 ff 9c ff ff       	call   0x42abd0
430ed1:	83 c4 0c             	add    $0xc,%esp
430ed4:	eb 63                	jmp    0x430f39
430ed6:	8d 77 0c             	lea    0xc(%edi),%esi
430ed9:	b8 01 00 00 00       	mov    $0x1,%eax
430ede:	f0 0f c1 06          	lock xadd %eax,(%esi)
430ee2:	83 3d 68 1a 45 00 00 	cmpl   $0x0,0x451a68
430ee9:	74 5f                	je     0x430f4a
430eeb:	83 3d 6c 1a 45 00 00 	cmpl   $0x0,0x451a6c
430ef2:	75 56                	jne    0x430f4a
430ef4:	83 3d 3c 14 45 00 00 	cmpl   $0x0,0x45143c
430efb:	74 4d                	je     0x430f4a
430efd:	83 3d 64 1a 45 00 00 	cmpl   $0x0,0x451a64
430f04:	74 0e                	je     0x430f14
430f06:	ff 15 b4 21 45 00    	call   *0x4521b4
430f0c:	3b 05 64 1a 45 00    	cmp    0x451a64,%eax
430f12:	75 36                	jne    0x430f4a
430f14:	e8 17 92 ff ff       	call   0x42a130
430f19:	85 c0                	test   %eax,%eax
430f1b:	74 03                	je     0x430f20
430f1d:	ff 40 18             	incl   0x18(%eax)
430f20:	8b 06                	mov    (%esi),%eax
430f22:	8b 7c 24 10          	mov    0x10(%esp),%edi
430f26:	50                   	push   %eax
430f27:	8d 47 18             	lea    0x18(%edi),%eax
430f2a:	50                   	push   %eax
430f2b:	57                   	push   %edi
430f2c:	68 2c 22 41 00       	push   $0x41222c
430f31:	e8 9a 9c ff ff       	call   0x42abd0
430f36:	83 c4 10             	add    $0x10,%esp
430f39:	8b d0                	mov    %eax,%edx
430f3b:	b9 27 00 00 00       	mov    $0x27,%ecx
430f40:	e8 9b 9a ff ff       	call   0x42a9e0
430f45:	e8 d6 9a ff ff       	call   0x42aa20
430f4a:	8b 45 08             	mov    0x8(%ebp),%eax
430f4d:	89 38                	mov    %edi,(%eax)
430f4f:	83 7c 24 18 00       	cmpl   $0x0,0x18(%esp)
430f54:	74 15                	je     0x430f6b
430f56:	b9 f0 14 45 00       	mov    $0x4514f0,%ecx
430f5b:	e8 20 75 00 00       	call   0x438480
430f60:	8b c3                	mov    %ebx,%eax
430f62:	5f                   	pop    %edi
430f63:	5e                   	pop    %esi
430f64:	5b                   	pop    %ebx
430f65:	8b e5                	mov    %ebp,%esp
430f67:	5d                   	pop    %ebp
430f68:	c2 04 00             	ret    $0x4
430f6b:	e8 b0 c1 ff ff       	call   0x42d120
430f70:	5f                   	pop    %edi
430f71:	5e                   	pop    %esi
430f72:	8b c3                	mov    %ebx,%eax
430f74:	5b                   	pop    %ebx
430f75:	8b e5                	mov    %ebp,%esp
430f77:	5d                   	pop    %ebp
430f78:	c2 04 00             	ret    $0x4
430f7b:	cc                   	int3
430f7c:	cc                   	int3
430f7d:	cc                   	int3
430f7e:	cc                   	int3
430f7f:	cc                   	int3
430f80:	8b ff                	mov    %edi,%edi
430f82:	55                   	push   %ebp
430f83:	8b ec                	mov    %esp,%ebp
430f85:	83 ec 14             	sub    $0x14,%esp
430f88:	53                   	push   %ebx
430f89:	56                   	push   %esi
430f8a:	8b 75 08             	mov    0x8(%ebp),%esi
430f8d:	57                   	push   %edi
430f8e:	8b 7e 20             	mov    0x20(%esi),%edi
430f91:	85 ff                	test   %edi,%edi
430f93:	0f 8e 97 00 00 00    	jle    0x431030
430f99:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
430fa0:	8d 47 ff             	lea    -0x1(%edi),%eax
430fa3:	8b c0                	mov    %eax,%eax
430fa5:	85 c0                	test   %eax,%eax
430fa7:	79 03                	jns    0x430fac
430fa9:	83 c0 01             	add    $0x1,%eax
430fac:	d1 f8                	sar    $1,%eax
430fae:	8d 14 85 00 00 00 00 	lea    0x0(,%eax,4),%edx
430fb5:	89 45 f0             	mov    %eax,-0x10(%ebp)
430fb8:	8b 01                	mov    (%ecx),%eax
430fba:	89 55 f4             	mov    %edx,-0xc(%ebp)
430fbd:	8b 04 02             	mov    (%edx,%eax,1),%eax
430fc0:	89 45 f8             	mov    %eax,-0x8(%ebp)
430fc3:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
430fc9:	8b 70 24             	mov    0x24(%eax),%esi
430fcc:	8b 50 20             	mov    0x20(%eax),%edx
430fcf:	8b 45 08             	mov    0x8(%ebp),%eax
430fd2:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
430fd8:	8b 58 20             	mov    0x20(%eax),%ebx
430fdb:	89 5d fc             	mov    %ebx,-0x4(%ebp)
430fde:	8b 58 24             	mov    0x24(%eax),%ebx
430fe1:	8b 45 fc             	mov    -0x4(%ebp),%eax
430fe4:	2b c2                	sub    %edx,%eax
430fe6:	89 45 fc             	mov    %eax,-0x4(%ebp)
430fe9:	1b de                	sbb    %esi,%ebx
430feb:	8b 75 08             	mov    0x8(%ebp),%esi
430fee:	0b c3                	or     %ebx,%eax
430ff0:	74 05                	je     0x430ff7
430ff2:	8b 45 fc             	mov    -0x4(%ebp),%eax
430ff5:	eb 0f                	jmp    0x431006
430ff7:	8b 55 f8             	mov    -0x8(%ebp),%edx
430ffa:	8b 46 70             	mov    0x70(%esi),%eax
430ffd:	8b 5e 74             	mov    0x74(%esi),%ebx
431000:	2b 42 70             	sub    0x70(%edx),%eax
431003:	1b 5a 74             	sbb    0x74(%edx),%ebx
431006:	85 db                	test   %ebx,%ebx
431008:	7f 26                	jg     0x431030
43100a:	7c 04                	jl     0x431010
43100c:	85 c0                	test   %eax,%eax
43100e:	73 20                	jae    0x431030
431010:	8b 01                	mov    (%ecx),%eax
431012:	8b 55 f4             	mov    -0xc(%ebp),%edx
431015:	8b 14 02             	mov    (%edx,%eax,1),%edx
431018:	8b 01                	mov    (%ecx),%eax
43101a:	89 14 b8             	mov    %edx,(%eax,%edi,4)
43101d:	8b 01                	mov    (%ecx),%eax
43101f:	8b 04 b8             	mov    (%eax,%edi,4),%eax
431022:	89 78 20             	mov    %edi,0x20(%eax)
431025:	8b 7d f0             	mov    -0x10(%ebp),%edi
431028:	85 ff                	test   %edi,%edi
43102a:	0f 8f 70 ff ff ff    	jg     0x430fa0
431030:	3b 79 08             	cmp    0x8(%ecx),%edi
431033:	0f 8d 16 01 00 00    	jge    0x43114f
431039:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
431040:	8d 1c 7d 01 00 00 00 	lea    0x1(,%edi,2),%ebx
431047:	3b 59 08             	cmp    0x8(%ecx),%ebx
43104a:	0f 8d ff 00 00 00    	jge    0x43114f
431050:	8d 1c 7d 02 00 00 00 	lea    0x2(,%edi,2),%ebx
431057:	89 5d f8             	mov    %ebx,-0x8(%ebp)
43105a:	3b 59 08             	cmp    0x8(%ecx),%ebx
43105d:	7d 64                	jge    0x4310c3
43105f:	8b 01                	mov    (%ecx),%eax
431061:	8b 54 f8 04          	mov    0x4(%eax,%edi,8),%edx
431065:	8b 01                	mov    (%ecx),%eax
431067:	89 55 ec             	mov    %edx,-0x14(%ebp)
43106a:	8b 5c f8 08          	mov    0x8(%eax,%edi,8),%ebx
43106e:	8b 82 80 00 00 00    	mov    0x80(%edx),%eax
431074:	89 5d f4             	mov    %ebx,-0xc(%ebp)
431077:	8b 50 20             	mov    0x20(%eax),%edx
43107a:	8b 70 24             	mov    0x24(%eax),%esi
43107d:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
431083:	8b 58 20             	mov    0x20(%eax),%ebx
431086:	8b 40 24             	mov    0x24(%eax),%eax
431089:	89 45 f0             	mov    %eax,-0x10(%ebp)
43108c:	8b c3                	mov    %ebx,%eax
43108e:	2b c2                	sub    %edx,%eax
431090:	89 5d fc             	mov    %ebx,-0x4(%ebp)
431093:	8b 55 f0             	mov    -0x10(%ebp),%edx
431096:	8b 5d f8             	mov    -0x8(%ebp),%ebx
431099:	1b d6                	sbb    %esi,%edx
43109b:	89 45 fc             	mov    %eax,-0x4(%ebp)
43109e:	0b c2                	or     %edx,%eax
4310a0:	74 05                	je     0x4310a7
4310a2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4310a5:	eb 12                	jmp    0x4310b9
4310a7:	8b 55 f4             	mov    -0xc(%ebp),%edx
4310aa:	8b 75 ec             	mov    -0x14(%ebp),%esi
4310ad:	8b 42 70             	mov    0x70(%edx),%eax
4310b0:	2b 46 70             	sub    0x70(%esi),%eax
4310b3:	8b 52 74             	mov    0x74(%edx),%edx
4310b6:	1b 56 74             	sbb    0x74(%esi),%edx
4310b9:	85 d2                	test   %edx,%edx
4310bb:	7f 06                	jg     0x4310c3
4310bd:	7c 0e                	jl     0x4310cd
4310bf:	85 c0                	test   %eax,%eax
4310c1:	72 0a                	jb     0x4310cd
4310c3:	8d 1c 7d 01 00 00 00 	lea    0x1(,%edi,2),%ebx
4310ca:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4310cd:	8b 01                	mov    (%ecx),%eax
4310cf:	8d 14 9d 00 00 00 00 	lea    0x0(,%ebx,4),%edx
4310d6:	89 55 f0             	mov    %edx,-0x10(%ebp)
4310d9:	8b 04 02             	mov    (%edx,%eax,1),%eax
4310dc:	89 45 ec             	mov    %eax,-0x14(%ebp)
4310df:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
4310e5:	8b 70 24             	mov    0x24(%eax),%esi
4310e8:	8b 50 20             	mov    0x20(%eax),%edx
4310eb:	8b 45 08             	mov    0x8(%ebp),%eax
4310ee:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
4310f4:	8b 58 20             	mov    0x20(%eax),%ebx
4310f7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4310fa:	8b 58 24             	mov    0x24(%eax),%ebx
4310fd:	8b 45 fc             	mov    -0x4(%ebp),%eax
431100:	2b c2                	sub    %edx,%eax
431102:	89 45 fc             	mov    %eax,-0x4(%ebp)
431105:	1b de                	sbb    %esi,%ebx
431107:	8b 75 08             	mov    0x8(%ebp),%esi
43110a:	0b c3                	or     %ebx,%eax
43110c:	74 05                	je     0x431113
43110e:	8b 45 fc             	mov    -0x4(%ebp),%eax
431111:	eb 0f                	jmp    0x431122
431113:	8b 55 ec             	mov    -0x14(%ebp),%edx
431116:	8b 46 70             	mov    0x70(%esi),%eax
431119:	8b 5e 74             	mov    0x74(%esi),%ebx
43111c:	2b 42 70             	sub    0x70(%edx),%eax
43111f:	1b 5a 74             	sbb    0x74(%edx),%ebx
431122:	85 db                	test   %ebx,%ebx
431124:	7c 29                	jl     0x43114f
431126:	7f 04                	jg     0x43112c
431128:	85 c0                	test   %eax,%eax
43112a:	72 23                	jb     0x43114f
43112c:	8b 01                	mov    (%ecx),%eax
43112e:	8b 55 f0             	mov    -0x10(%ebp),%edx
431131:	8b 14 02             	mov    (%edx,%eax,1),%edx
431134:	8b 01                	mov    (%ecx),%eax
431136:	89 14 b8             	mov    %edx,(%eax,%edi,4)
431139:	8b 01                	mov    (%ecx),%eax
43113b:	8b 04 b8             	mov    (%eax,%edi,4),%eax
43113e:	89 78 20             	mov    %edi,0x20(%eax)
431141:	8b 45 f8             	mov    -0x8(%ebp),%eax
431144:	8b f8                	mov    %eax,%edi
431146:	3b 41 08             	cmp    0x8(%ecx),%eax
431149:	0f 8c f1 fe ff ff    	jl     0x431040
43114f:	8b 01                	mov    (%ecx),%eax
431151:	89 34 b8             	mov    %esi,(%eax,%edi,4)
431154:	89 7e 20             	mov    %edi,0x20(%esi)
431157:	5f                   	pop    %edi
431158:	5e                   	pop    %esi
431159:	5b                   	pop    %ebx
43115a:	8b e5                	mov    %ebp,%esp
43115c:	5d                   	pop    %ebp
43115d:	c2 04 00             	ret    $0x4
431160:	8b ff                	mov    %edi,%edi
431162:	55                   	push   %ebp
431163:	8b ec                	mov    %esp,%ebp
431165:	83 ec 14             	sub    $0x14,%esp
431168:	53                   	push   %ebx
431169:	56                   	push   %esi
43116a:	8b 75 08             	mov    0x8(%ebp),%esi
43116d:	57                   	push   %edi
43116e:	8b f9                	mov    %ecx,%edi
431170:	89 7d f8             	mov    %edi,-0x8(%ebp)
431173:	8b 5e 20             	mov    0x20(%esi),%ebx
431176:	8b 4f 04             	mov    0x4(%edi),%ecx
431179:	85 c9                	test   %ecx,%ecx
43117b:	0f 8e b4 00 00 00    	jle    0x431235
431181:	8d 41 ff             	lea    -0x1(%ecx),%eax
431184:	3b d8                	cmp    %eax,%ebx
431186:	0f 8d a9 00 00 00    	jge    0x431235
43118c:	8b c1                	mov    %ecx,%eax
43118e:	2b c3                	sub    %ebx,%eax
431190:	83 e8 02             	sub    $0x2,%eax
431193:	99                   	cltd
431194:	2b c2                	sub    %edx,%eax
431196:	d1 f8                	sar    $1,%eax
431198:	2b c8                	sub    %eax,%ecx
43119a:	8b 07                	mov    (%edi),%eax
43119c:	8b 44 88 fc          	mov    -0x4(%eax,%ecx,4),%eax
4311a0:	89 45 f4             	mov    %eax,-0xc(%ebp)
4311a3:	8b 80 80 00 00 00    	mov    0x80(%eax),%eax
4311a9:	8b 50 24             	mov    0x24(%eax),%edx
4311ac:	8b 48 20             	mov    0x20(%eax),%ecx
4311af:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
4311b5:	8b 70 20             	mov    0x20(%eax),%esi
4311b8:	89 75 fc             	mov    %esi,-0x4(%ebp)
4311bb:	8b 70 24             	mov    0x24(%eax),%esi
4311be:	8b 45 fc             	mov    -0x4(%ebp),%eax
4311c1:	2b c1                	sub    %ecx,%eax
4311c3:	89 45 fc             	mov    %eax,-0x4(%ebp)
4311c6:	1b f2                	sbb    %edx,%esi
4311c8:	0b c6                	or     %esi,%eax
4311ca:	74 05                	je     0x4311d1
4311cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4311cf:	eb 12                	jmp    0x4311e3
4311d1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4311d4:	8b 55 f4             	mov    -0xc(%ebp),%edx
4311d7:	8b 41 70             	mov    0x70(%ecx),%eax
4311da:	2b 42 70             	sub    0x70(%edx),%eax
4311dd:	8b 71 74             	mov    0x74(%ecx),%esi
4311e0:	1b 72 74             	sbb    0x74(%edx),%esi
4311e3:	85 f6                	test   %esi,%esi
4311e5:	7f 4b                	jg     0x431232
4311e7:	7c 04                	jl     0x4311ed
4311e9:	85 c0                	test   %eax,%eax
4311eb:	73 45                	jae    0x431232
4311ed:	8b 4f 04             	mov    0x4(%edi),%ecx
4311f0:	8b c1                	mov    %ecx,%eax
4311f2:	2b c3                	sub    %ebx,%eax
4311f4:	8b 75 08             	mov    0x8(%ebp),%esi
4311f7:	83 e8 02             	sub    $0x2,%eax
4311fa:	99                   	cltd
4311fb:	2b c2                	sub    %edx,%eax
4311fd:	d1 f8                	sar    $1,%eax
4311ff:	2b c8                	sub    %eax,%ecx
431201:	8b 07                	mov    (%edi),%eax
431203:	8b 4c 88 fc          	mov    -0x4(%eax,%ecx,4),%ecx
431207:	8b 07                	mov    (%edi),%eax
431209:	89 0c 98             	mov    %ecx,(%eax,%ebx,4)
43120c:	8b 07                	mov    (%edi),%eax
43120e:	8b 04 98             	mov    (%eax,%ebx,4),%eax
431211:	89 58 20             	mov    %ebx,0x20(%eax)
431214:	8b 4f 04             	mov    0x4(%edi),%ecx
431217:	8b c1                	mov    %ecx,%eax
431219:	2b c3                	sub    %ebx,%eax
43121b:	8b d9                	mov    %ecx,%ebx
43121d:	83 e8 02             	sub    $0x2,%eax
431220:	99                   	cltd
431221:	2b c2                	sub    %edx,%eax
431223:	d1 f8                	sar    $1,%eax
431225:	2b d8                	sub    %eax,%ebx
431227:	4b                   	dec    %ebx