42860d:	50                   	push   %eax
42860e:	e8 9e 3e 00 00       	call   0x42c4b1
428613:	8b d8                	mov    %eax,%ebx
428615:	59                   	pop    %ecx
428616:	85 db                	test   %ebx,%ebx
428618:	74 e6                	je     0x428600
42861a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
42861d:	51                   	push   %ecx
42861e:	6a ff                	push   $0xffffffff
428620:	57                   	push   %edi
428621:	ff 75 fc             	push   -0x4(%ebp)
428624:	8d 43 04             	lea    0x4(%ebx),%eax
428627:	50                   	push   %eax
428628:	6a 00                	push   $0x0
42862a:	e8 9a 8e 00 00       	call   0x4314c9
42862f:	83 c4 18             	add    $0x18,%esp
428632:	85 c0                	test   %eax,%eax
428634:	74 1b                	je     0x428651
428636:	83 f8 16             	cmp    $0x16,%eax
428639:	0f 84 ad 00 00 00    	je     0x4286ec
42863f:	83 f8 22             	cmp    $0x22,%eax
428642:	0f 84 a4 00 00 00    	je     0x4286ec
428648:	53                   	push   %ebx
428649:	e8 29 3e 00 00       	call   0x42c477
42864e:	59                   	pop    %ecx
42864f:	eb af                	jmp    0x428600
428651:	8b 06                	mov    (%esi),%eax
428653:	83 c9 ff             	or     $0xffffffff,%ecx
428656:	8b 7d f0             	mov    -0x10(%ebp),%edi
428659:	8b 00                	mov    (%eax),%eax
42865b:	03 c0                	add    %eax,%eax
42865d:	8b 54 c7 24          	mov    0x24(%edi,%eax,8),%edx
428661:	85 d2                	test   %edx,%edx
428663:	74 26                	je     0x42868b
428665:	8b c1                	mov    %ecx,%eax
428667:	f0 0f c1 02          	lock xadd %eax,(%edx)
42866b:	75 1e                	jne    0x42868b
42866d:	8b 06                	mov    (%esi),%eax
42866f:	8b 00                	mov    (%eax),%eax
428671:	03 c0                	add    %eax,%eax
428673:	ff 74 c7 24          	push   0x24(%edi,%eax,8)
428677:	e8 fb 3d 00 00       	call   0x42c477
42867c:	8b 06                	mov    (%esi),%eax
42867e:	59                   	pop    %ecx
42867f:	8b 00                	mov    (%eax),%eax
428681:	03 c0                	add    %eax,%eax
428683:	83 64 c7 24 00       	andl   $0x0,0x24(%edi,%eax,8)
428688:	83 c9 ff             	or     $0xffffffff,%ecx
42868b:	8b 55 f8             	mov    -0x8(%ebp),%edx
42868e:	a1 68 45 45 00       	mov    0x454568,%eax
428693:	85 82 50 03 00 00    	test   %eax,0x350(%edx)
428699:	75 30                	jne    0x4286cb
42869b:	8b 06                	mov    (%esi),%eax
42869d:	8b 00                	mov    (%eax),%eax
42869f:	03 c0                	add    %eax,%eax
4286a1:	8b 44 c7 24          	mov    0x24(%edi,%eax,8),%eax
4286a5:	85 c0                	test   %eax,%eax
4286a7:	74 22                	je     0x4286cb
4286a9:	f0 0f c1 08          	lock xadd %ecx,(%eax)
4286ad:	49                   	dec    %ecx
4286ae:	75 1b                	jne    0x4286cb
4286b0:	8b 06                	mov    (%esi),%eax
4286b2:	8b 00                	mov    (%eax),%eax
4286b4:	03 c0                	add    %eax,%eax
4286b6:	ff 74 c7 24          	push   0x24(%edi,%eax,8)
4286ba:	e8 b8 3d 00 00       	call   0x42c477
4286bf:	8b 06                	mov    (%esi),%eax
4286c1:	59                   	pop    %ecx
4286c2:	8b 00                	mov    (%eax),%eax
4286c4:	03 c0                	add    %eax,%eax
4286c6:	83 64 c7 24 00       	andl   $0x0,0x24(%edi,%eax,8)
4286cb:	8b 4f 0c             	mov    0xc(%edi),%ecx
4286ce:	8d 43 04             	lea    0x4(%ebx),%eax
4286d1:	89 0b                	mov    %ecx,(%ebx)
4286d3:	8b 0e                	mov    (%esi),%ecx
4286d5:	8b 09                	mov    (%ecx),%ecx
4286d7:	03 c9                	add    %ecx,%ecx
4286d9:	89 5c cf 24          	mov    %ebx,0x24(%edi,%ecx,8)
4286dd:	8b 0e                	mov    (%esi),%ecx
4286df:	8b 09                	mov    (%ecx),%ecx
4286e1:	03 c9                	add    %ecx,%ecx
4286e3:	89 44 cf 1c          	mov    %eax,0x1c(%edi,%ecx,8)
4286e7:	e9 16 ff ff ff       	jmp    0x428602
4286ec:	33 db                	xor    %ebx,%ebx
4286ee:	53                   	push   %ebx
4286ef:	53                   	push   %ebx
4286f0:	53                   	push   %ebx
4286f1:	53                   	push   %ebx
4286f2:	53                   	push   %ebx
4286f3:	e8 a4 83 ff ff       	call   0x420a9c
4286f8:	cc                   	int3
4286f9:	8b ff                	mov    %edi,%edi
4286fb:	55                   	push   %ebp
4286fc:	8b ec                	mov    %esp,%ebp
4286fe:	51                   	push   %ecx
4286ff:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
428703:	75 0e                	jne    0x428713
428705:	6a 00                	push   $0x0
428707:	ff 75 08             	push   0x8(%ebp)
42870a:	e8 7d 23 00 00       	call   0x42aa8c
42870f:	59                   	pop    %ecx
428710:	59                   	pop    %ecx
428711:	c9                   	leave
428712:	c3                   	ret
428713:	56                   	push   %esi
428714:	57                   	push   %edi
428715:	68 ff ff ff 7f       	push   $0x7fffffff
42871a:	ff 75 0c             	push   0xc(%ebp)
42871d:	33 ff                	xor    %edi,%edi
42871f:	8d 45 fc             	lea    -0x4(%ebp),%eax
428722:	57                   	push   %edi
428723:	57                   	push   %edi
428724:	50                   	push   %eax
428725:	e8 e6 89 00 00       	call   0x431110
42872a:	83 c4 14             	add    $0x14,%esp
42872d:	85 c0                	test   %eax,%eax
42872f:	74 0a                	je     0x42873b
428731:	83 f8 16             	cmp    $0x16,%eax
428734:	74 53                	je     0x428789
428736:	83 f8 22             	cmp    $0x22,%eax
428739:	74 4e                	je     0x428789
42873b:	6a 02                	push   $0x2
42873d:	ff 75 fc             	push   -0x4(%ebp)
428740:	e8 d5 3c 00 00       	call   0x42c41a
428745:	8b f0                	mov    %eax,%esi
428747:	59                   	pop    %ecx
428748:	59                   	pop    %ecx
428749:	85 f6                	test   %esi,%esi
42874b:	74 2f                	je     0x42877c
42874d:	6a ff                	push   $0xffffffff
42874f:	ff 75 0c             	push   0xc(%ebp)
428752:	ff 75 fc             	push   -0x4(%ebp)
428755:	56                   	push   %esi
428756:	57                   	push   %edi
428757:	e8 b4 89 00 00       	call   0x431110
42875c:	83 c4 14             	add    $0x14,%esp
42875f:	85 c0                	test   %eax,%eax
428761:	74 0c                	je     0x42876f
428763:	83 f8 16             	cmp    $0x16,%eax
428766:	74 21                	je     0x428789
428768:	83 f8 22             	cmp    $0x22,%eax
42876b:	74 1c                	je     0x428789
42876d:	eb 0d                	jmp    0x42877c
42876f:	56                   	push   %esi
428770:	ff 75 08             	push   0x8(%ebp)
428773:	e8 14 23 00 00       	call   0x42aa8c
428778:	59                   	pop    %ecx
428779:	59                   	pop    %ecx
42877a:	8b f8                	mov    %eax,%edi
42877c:	56                   	push   %esi
42877d:	e8 f5 3c 00 00       	call   0x42c477
428782:	59                   	pop    %ecx
428783:	8b c7                	mov    %edi,%eax
428785:	5f                   	pop    %edi
428786:	5e                   	pop    %esi
428787:	c9                   	leave
428788:	c3                   	ret
428789:	57                   	push   %edi
42878a:	57                   	push   %edi
42878b:	57                   	push   %edi
42878c:	57                   	push   %edi
42878d:	57                   	push   %edi
42878e:	e8 09 83 ff ff       	call   0x420a9c
428793:	cc                   	int3
428794:	8b ff                	mov    %edi,%edi
428796:	55                   	push   %ebp
428797:	8b ec                	mov    %esp,%ebp
428799:	83 ec 14             	sub    $0x14,%esp
42879c:	e8 29 6b 00 00       	call   0x42f2ca
4287a1:	8d 45 08             	lea    0x8(%ebp),%eax
4287a4:	89 45 ec             	mov    %eax,-0x14(%ebp)
4287a7:	8d 4d ff             	lea    -0x1(%ebp),%ecx
4287aa:	6a 04                	push   $0x4
4287ac:	8d 45 0c             	lea    0xc(%ebp),%eax
4287af:	89 45 f0             	mov    %eax,-0x10(%ebp)
4287b2:	58                   	pop    %eax
4287b3:	89 45 f8             	mov    %eax,-0x8(%ebp)
4287b6:	89 45 f4             	mov    %eax,-0xc(%ebp)
4287b9:	8d 45 f8             	lea    -0x8(%ebp),%eax
4287bc:	50                   	push   %eax
4287bd:	8d 45 ec             	lea    -0x14(%ebp),%eax
4287c0:	50                   	push   %eax
4287c1:	8d 45 f4             	lea    -0xc(%ebp),%eax
4287c4:	50                   	push   %eax
4287c5:	e8 75 fd ff ff       	call   0x42853f
4287ca:	c9                   	leave
4287cb:	c3                   	ret
4287cc:	8b ff                	mov    %edi,%edi
4287ce:	55                   	push   %ebp
4287cf:	8b ec                	mov    %esp,%ebp
4287d1:	51                   	push   %ecx
4287d2:	e8 52 39 00 00       	call   0x42c129
4287d7:	8b 48 4c             	mov    0x4c(%eax),%ecx
4287da:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4287dd:	8d 4d fc             	lea    -0x4(%ebp),%ecx
4287e0:	51                   	push   %ecx
4287e1:	50                   	push   %eax
4287e2:	e8 18 3d 00 00       	call   0x42c4ff
4287e7:	8b 45 fc             	mov    -0x4(%ebp),%eax
4287ea:	59                   	pop    %ecx
4287eb:	59                   	pop    %ecx
4287ec:	8b 00                	mov    (%eax),%eax
4287ee:	c9                   	leave
4287ef:	c3                   	ret
4287f0:	8b ff                	mov    %edi,%edi
4287f2:	55                   	push   %ebp
4287f3:	8b ec                	mov    %esp,%ebp
4287f5:	51                   	push   %ecx
4287f6:	e8 2e 39 00 00       	call   0x42c129
4287fb:	8b 48 4c             	mov    0x4c(%eax),%ecx
4287fe:	89 4d fc             	mov    %ecx,-0x4(%ebp)
428801:	8d 4d fc             	lea    -0x4(%ebp),%ecx
428804:	51                   	push   %ecx
428805:	50                   	push   %eax
428806:	e8 f4 3c 00 00       	call   0x42c4ff
42880b:	8b 45 fc             	mov    -0x4(%ebp),%eax
42880e:	59                   	pop    %ecx
42880f:	59                   	pop    %ecx
428810:	8b 40 08             	mov    0x8(%eax),%eax
428813:	c9                   	leave
428814:	c3                   	ret
428815:	8b ff                	mov    %edi,%edi
428817:	55                   	push   %ebp
428818:	8b ec                	mov    %esp,%ebp
42881a:	51                   	push   %ecx
42881b:	e8 09 39 00 00       	call   0x42c129
428820:	8b 48 4c             	mov    0x4c(%eax),%ecx
428823:	89 4d fc             	mov    %ecx,-0x4(%ebp)
428826:	8d 4d fc             	lea    -0x4(%ebp),%ecx
428829:	51                   	push   %ecx
42882a:	50                   	push   %eax
42882b:	e8 cf 3c 00 00       	call   0x42c4ff
428830:	8b 45 fc             	mov    -0x4(%ebp),%eax
428833:	59                   	pop    %ecx
428834:	59                   	pop    %ecx
428835:	05 a0 00 00 00       	add    $0xa0,%eax
42883a:	c9                   	leave
42883b:	c3                   	ret
42883c:	8b ff                	mov    %edi,%edi
42883e:	55                   	push   %ebp
42883f:	8b ec                	mov    %esp,%ebp
428841:	51                   	push   %ecx
428842:	e8 e2 38 00 00       	call   0x42c129
428847:	8b 48 4c             	mov    0x4c(%eax),%ecx
42884a:	89 4d fc             	mov    %ecx,-0x4(%ebp)
42884d:	8d 4d fc             	lea    -0x4(%ebp),%ecx
428850:	51                   	push   %ecx
428851:	50                   	push   %eax
428852:	e8 a8 3c 00 00       	call   0x42c4ff
428857:	8b 45 fc             	mov    -0x4(%ebp),%eax
42885a:	59                   	pop    %ecx
42885b:	59                   	pop    %ecx
42885c:	8b 40 04             	mov    0x4(%eax),%eax
42885f:	c9                   	leave
428860:	c3                   	ret
428861:	cc                   	int3
428862:	cc                   	int3
428863:	cc                   	int3
428864:	cc                   	int3
428865:	cc                   	int3
428866:	cc                   	int3
428867:	cc                   	int3
428868:	cc                   	int3
428869:	cc                   	int3
42886a:	cc                   	int3
42886b:	cc                   	int3
42886c:	cc                   	int3
42886d:	cc                   	int3
42886e:	cc                   	int3
42886f:	cc                   	int3
428870:	8b ff                	mov    %edi,%edi
428872:	55                   	push   %ebp
428873:	8b ec                	mov    %esp,%ebp
428875:	83 ec 58             	sub    $0x58,%esp
428878:	a1 14 40 45 00       	mov    0x454014,%eax
42887d:	33 c5                	xor    %ebp,%eax
42887f:	89 45 fc             	mov    %eax,-0x4(%ebp)
428882:	53                   	push   %ebx
428883:	56                   	push   %esi
428884:	8b 75 08             	mov    0x8(%ebp),%esi
428887:	33 db                	xor    %ebx,%ebx
428889:	57                   	push   %edi
42888a:	89 75 cc             	mov    %esi,-0x34(%ebp)
42888d:	8b fb                	mov    %ebx,%edi
42888f:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
428892:	8b 8e a8 00 00 00    	mov    0xa8(%esi),%ecx
428898:	89 5d e0             	mov    %ebx,-0x20(%ebp)
42889b:	89 5d dc             	mov    %ebx,-0x24(%ebp)
42889e:	89 75 a8             	mov    %esi,-0x58(%ebp)
4288a1:	89 5d ac             	mov    %ebx,-0x54(%ebp)
4288a4:	85 c9                	test   %ecx,%ecx
4288a6:	0f 84 d6 03 00 00    	je     0x428c82
4288ac:	8d 46 08             	lea    0x8(%esi),%eax
4288af:	89 5d d0             	mov    %ebx,-0x30(%ebp)
4288b2:	39 18                	cmp    %ebx,(%eax)
4288b4:	75 1c                	jne    0x4288d2
4288b6:	50                   	push   %eax
4288b7:	68 04 10 00 00       	push   $0x1004
4288bc:	51                   	push   %ecx
4288bd:	8d 45 a8             	lea    -0x58(%ebp),%eax
4288c0:	53                   	push   %ebx
4288c1:	50                   	push   %eax
4288c2:	e8 1f 8d 00 00       	call   0x4315e6
4288c7:	83 c4 14             	add    $0x14,%esp
4288ca:	85 c0                	test   %eax,%eax
4288cc:	0f 85 7f 03 00 00    	jne    0x428c51
4288d2:	6a 04                	push   $0x4
4288d4:	6a 01                	push   $0x1
4288d6:	e8 3f 3b 00 00       	call   0x42c41a
4288db:	53                   	push   %ebx
4288dc:	89 45 d0             	mov    %eax,-0x30(%ebp)
4288df:	e8 93 3b 00 00       	call   0x42c477
4288e4:	6a 02                	push   $0x2
4288e6:	bf 80 01 00 00       	mov    $0x180,%edi
4288eb:	57                   	push   %edi
4288ec:	e8 29 3b 00 00       	call   0x42c41a
4288f1:	53                   	push   %ebx
4288f2:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4288f5:	e8 7d 3b 00 00       	call   0x42c477
4288fa:	6a 01                	push   $0x1
4288fc:	57                   	push   %edi
4288fd:	e8 18 3b 00 00       	call   0x42c41a
428902:	53                   	push   %ebx
428903:	89 45 e0             	mov    %eax,-0x20(%ebp)
428906:	e8 6c 3b 00 00       	call   0x42c477
42890b:	6a 01                	push   $0x1
42890d:	57                   	push   %edi
42890e:	e8 07 3b 00 00       	call   0x42c41a
428913:	8b f8                	mov    %eax,%edi
428915:	53                   	push   %ebx
428916:	89 7d d8             	mov    %edi,-0x28(%ebp)
428919:	e8 59 3b 00 00       	call   0x42c477
42891e:	6a 01                	push   $0x1
428920:	68 01 01 00 00       	push   $0x101
428925:	e8 f0 3a 00 00       	call   0x42c41a
42892a:	53                   	push   %ebx
42892b:	89 45 dc             	mov    %eax,-0x24(%ebp)
42892e:	e8 44 3b 00 00       	call   0x42c477
428933:	83 c4 3c             	add    $0x3c,%esp
428936:	39 5d d0             	cmp    %ebx,-0x30(%ebp)
428939:	0f 84 12 03 00 00    	je     0x428c51
42893f:	39 5d e4             	cmp    %ebx,-0x1c(%ebp)
428942:	0f 84 09 03 00 00    	je     0x428c51
428948:	8b 4d dc             	mov    -0x24(%ebp),%ecx
42894b:	85 c9                	test   %ecx,%ecx
42894d:	0f 84 fe 02 00 00    	je     0x428c51
428953:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
428956:	0f 84 f5 02 00 00    	je     0x428c51
42895c:	85 ff                	test   %edi,%edi
42895e:	0f 84 ed 02 00 00    	je     0x428c51