43067b:	8b 06                	mov    (%esi),%eax
43067d:	eb 02                	jmp    0x430681
43067f:	8b c6                	mov    %esi,%eax
430681:	33 c9                	xor    %ecx,%ecx
430683:	66 89 08             	mov    %cx,(%eax)
430686:	eb 3e                	jmp    0x4306c6
430688:	85 c9                	test   %ecx,%ecx
43068a:	74 3a                	je     0x4306c6
43068c:	8b 46 14             	mov    0x14(%esi),%eax
43068f:	83 f8 08             	cmp    $0x8,%eax
430692:	72 04                	jb     0x430698
430694:	8b 16                	mov    (%esi),%edx
430696:	eb 02                	jmp    0x43069a
430698:	8b d6                	mov    %esi,%edx
43069a:	2b f9                	sub    %ecx,%edi
43069c:	74 14                	je     0x4306b2
43069e:	8d 04 3f             	lea    (%edi,%edi,1),%eax
4306a1:	50                   	push   %eax
4306a2:	8d 04 4a             	lea    (%edx,%ecx,2),%eax
4306a5:	50                   	push   %eax
4306a6:	52                   	push   %edx
4306a7:	e8 9f f0 fe ff       	call   0x41f74b
4306ac:	8b 46 14             	mov    0x14(%esi),%eax
4306af:	83 c4 0c             	add    $0xc,%esp
4306b2:	89 7e 10             	mov    %edi,0x10(%esi)
4306b5:	83 f8 08             	cmp    $0x8,%eax
4306b8:	72 04                	jb     0x4306be
4306ba:	8b 06                	mov    (%esi),%eax
4306bc:	eb 02                	jmp    0x4306c0
4306be:	8b c6                	mov    %esi,%eax
4306c0:	33 c9                	xor    %ecx,%ecx
4306c2:	66 89 0c 78          	mov    %cx,(%eax,%edi,2)
4306c6:	5f                   	pop    %edi
4306c7:	8b c6                	mov    %esi,%eax
4306c9:	5e                   	pop    %esi
4306ca:	5d                   	pop    %ebp
4306cb:	c2 08 00             	ret    $0x8
4306ce:	8b ff                	mov    %edi,%edi
4306d0:	55                   	push   %ebp
4306d1:	8b ec                	mov    %esp,%ebp
4306d3:	8b 45 08             	mov    0x8(%ebp),%eax
4306d6:	80 38 00             	cmpb   $0x0,(%eax)
4306d9:	75 04                	jne    0x4306df
4306db:	33 c0                	xor    %eax,%eax
4306dd:	5d                   	pop    %ebp
4306de:	c3                   	ret
4306df:	8d 50 01             	lea    0x1(%eax),%edx
4306e2:	8a 08                	mov    (%eax),%cl
4306e4:	40                   	inc    %eax
4306e5:	84 c9                	test   %cl,%cl
4306e7:	75 f9                	jne    0x4306e2
4306e9:	2b c2                	sub    %edx,%eax
4306eb:	5d                   	pop    %ebp
4306ec:	c3                   	ret
4306ed:	33 d2                	xor    %edx,%edx
4306ef:	66 39 11             	cmp    %dx,(%ecx)
4306f2:	74 16                	je     0x43070a
4306f4:	56                   	push   %esi
4306f5:	8d 71 02             	lea    0x2(%ecx),%esi
4306f8:	66 8b 01             	mov    (%ecx),%ax
4306fb:	83 c1 02             	add    $0x2,%ecx
4306fe:	66 3b c2             	cmp    %dx,%ax
430701:	75 f5                	jne    0x4306f8
430703:	8b d1                	mov    %ecx,%edx
430705:	2b d6                	sub    %esi,%edx
430707:	d1 fa                	sar    $1,%edx
430709:	5e                   	pop    %esi
43070a:	8b c2                	mov    %edx,%eax
43070c:	c3                   	ret
43070d:	cc                   	int3
43070e:	cc                   	int3
43070f:	cc                   	int3
430710:	8b ff                	mov    %edi,%edi
430712:	55                   	push   %ebp
430713:	8b ec                	mov    %esp,%ebp
430715:	ff 75 0c             	push   0xc(%ebp)
430718:	e8 c3 e6 fe ff       	call   0x41ede0
43071d:	59                   	pop    %ecx
43071e:	85 c0                	test   %eax,%eax
430720:	75 05                	jne    0x430727
430722:	b8 e8 a6 40 00       	mov    $0x40a6e8,%eax
430727:	8b 4d 08             	mov    0x8(%ebp),%ecx
43072a:	50                   	push   %eax
43072b:	e8 23 db ff ff       	call   0x42e253
430730:	8b 45 08             	mov    0x8(%ebp),%eax
430733:	5d                   	pop    %ebp
430734:	c2 08 00             	ret    $0x8
430737:	cc                   	int3
430738:	cc                   	int3
430739:	cc                   	int3
43073a:	cc                   	int3
43073b:	cc                   	int3
43073c:	cc                   	int3
43073d:	cc                   	int3
43073e:	cc                   	int3
43073f:	cc                   	int3
430740:	8b ff                	mov    %edi,%edi
430742:	55                   	push   %ebp
430743:	8b ec                	mov    %esp,%ebp
430745:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
430749:	75 0f                	jne    0x43075a
43074b:	8b 4d 08             	mov    0x8(%ebp),%ecx
43074e:	68 04 a7 40 00       	push   $0x40a704
430753:	e8 fb da ff ff       	call   0x42e253
430758:	eb 0b                	jmp    0x430765
43075a:	ff 75 0c             	push   0xc(%ebp)
43075d:	ff 75 08             	push   0x8(%ebp)
430760:	e8 ab ff ff ff       	call   0x430710
430765:	8b 45 08             	mov    0x8(%ebp),%eax
430768:	5d                   	pop    %ebp
430769:	c2 08 00             	ret    $0x8
43076c:	cc                   	int3
43076d:	cc                   	int3
43076e:	cc                   	int3
43076f:	cc                   	int3
430770:	8b ff                	mov    %edi,%edi
430772:	55                   	push   %ebp
430773:	8b ec                	mov    %esp,%ebp
430775:	ff 75 0c             	push   0xc(%ebp)
430778:	e8 8f e6 fe ff       	call   0x41ee0c
43077d:	59                   	pop    %ecx
43077e:	85 c0                	test   %eax,%eax
430780:	75 05                	jne    0x430787
430782:	b8 e8 a6 40 00       	mov    $0x40a6e8,%eax
430787:	8b 4d 08             	mov    0x8(%ebp),%ecx
43078a:	50                   	push   %eax
43078b:	e8 c3 da ff ff       	call   0x42e253
430790:	8b 45 08             	mov    0x8(%ebp),%eax
430793:	5d                   	pop    %ebp
430794:	c2 08 00             	ret    $0x8
430797:	cc                   	int3
430798:	cc                   	int3
430799:	cc                   	int3
43079a:	cc                   	int3
43079b:	cc                   	int3
43079c:	cc                   	int3
43079d:	cc                   	int3
43079e:	cc                   	int3
43079f:	cc                   	int3
4307a0:	b8 e0 a6 40 00       	mov    $0x40a6e0,%eax
4307a5:	c3                   	ret
4307a6:	cc                   	int3
4307a7:	cc                   	int3
4307a8:	cc                   	int3
4307a9:	cc                   	int3
4307aa:	cc                   	int3
4307ab:	cc                   	int3
4307ac:	cc                   	int3
4307ad:	cc                   	int3
4307ae:	cc                   	int3
4307af:	cc                   	int3
4307b0:	b8 f8 a6 40 00       	mov    $0x40a6f8,%eax
4307b5:	c3                   	ret
4307b6:	cc                   	int3
4307b7:	cc                   	int3
4307b8:	cc                   	int3
4307b9:	cc                   	int3
4307ba:	cc                   	int3
4307bb:	cc                   	int3
4307bc:	cc                   	int3
4307bd:	cc                   	int3
4307be:	cc                   	int3
4307bf:	cc                   	int3
4307c0:	b8 1c a7 40 00       	mov    $0x40a71c,%eax
4307c5:	c3                   	ret
4307c6:	8b ff                	mov    %edi,%edi
4307c8:	55                   	push   %ebp
4307c9:	8b ec                	mov    %esp,%ebp
4307cb:	6a 00                	push   $0x0
4307cd:	6a 04                	push   $0x4
4307cf:	8d 45 10             	lea    0x10(%ebp),%eax
4307d2:	50                   	push   %eax
4307d3:	51                   	push   %ecx
4307d4:	52                   	push   %edx
4307d5:	6a 2b                	push   $0x2b
4307d7:	ff 75 0c             	push   0xc(%ebp)
4307da:	ff 75 08             	push   0x8(%ebp)
4307dd:	ff 15 94 12 45 00    	call   *0x451294
4307e3:	83 c4 20             	add    $0x20,%esp
4307e6:	5d                   	pop    %ebp
4307e7:	c2 0c 00             	ret    $0xc
4307ea:	8b ff                	mov    %edi,%edi
4307ec:	55                   	push   %ebp
4307ed:	8b ec                	mov    %esp,%ebp
4307ef:	6a ff                	push   $0xffffffff
4307f1:	68 cd 3a 42 00       	push   $0x423acd
4307f6:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
4307fc:	50                   	push   %eax
4307fd:	a1 54 02 45 00       	mov    0x450254,%eax
430802:	33 c5                	xor    %ebp,%eax
430804:	50                   	push   %eax
430805:	8d 45 f4             	lea    -0xc(%ebp),%eax
430808:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
43080e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
430812:	83 39 00             	cmpl   $0x0,(%ecx)
430815:	74 0d                	je     0x430824
430817:	ff 31                	push   (%ecx)
430819:	8b 0d 80 0b 45 00    	mov    0x450b80,%ecx
43081f:	e8 06 90 fe ff       	call   0x41982a
430824:	8b 4d f4             	mov    -0xc(%ebp),%ecx
430827:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
43082e:	59                   	pop    %ecx
43082f:	c9                   	leave
430830:	c3                   	ret
430831:	6a 78                	push   $0x78
430833:	b8 e8 3a 42 00       	mov    $0x423ae8,%eax
430838:	e8 63 ee fe ff       	call   0x41f6a0
43083d:	89 4d 90             	mov    %ecx,-0x70(%ebp)
430840:	33 c9                	xor    %ecx,%ecx
430842:	66 c7 45 ec 00 05    	movw   $0x500,-0x14(%ebp)
430848:	8d 45 d8             	lea    -0x28(%ebp),%eax
43084b:	89 4d e8             	mov    %ecx,-0x18(%ebp)
43084e:	50                   	push   %eax
43084f:	51                   	push   %ecx
430850:	51                   	push   %ecx
430851:	51                   	push   %ecx
430852:	51                   	push   %ecx
430853:	51                   	push   %ecx
430854:	51                   	push   %ecx
430855:	68 20 02 00 00       	push   $0x220
43085a:	6a 20                	push   $0x20
43085c:	6a 02                	push   $0x2
43085e:	8d 45 e8             	lea    -0x18(%ebp),%eax
430861:	89 4d d8             	mov    %ecx,-0x28(%ebp)
430864:	50                   	push   %eax
430865:	8b f1                	mov    %ecx,%esi
430867:	89 4d b8             	mov    %ecx,-0x48(%ebp)
43086a:	8b d9                	mov    %ecx,%ebx
43086c:	ff 15 98 11 45 00    	call   *0x451198
430872:	85 c0                	test   %eax,%eax
430874:	74 47                	je     0x4308bd
430876:	ff 75 d8             	push   -0x28(%ebp)
430879:	ff 15 84 11 45 00    	call   *0x451184
43087f:	8b f8                	mov    %eax,%edi
430881:	8d 47 08             	lea    0x8(%edi),%eax
430884:	0f b7 c0             	movzwl %ax,%eax
430887:	89 45 b8             	mov    %eax,-0x48(%ebp)
43088a:	0f b7 c0             	movzwl %ax,%eax
43088d:	50                   	push   %eax
43088e:	e8 48 d9 fe ff       	call   0x41e1db
430893:	8b d8                	mov    %eax,%ebx
430895:	59                   	pop    %ecx
430896:	85 db                	test   %ebx,%ebx
430898:	74 23                	je     0x4308bd
43089a:	ff 75 d8             	push   -0x28(%ebp)
43089d:	8d 43 08             	lea    0x8(%ebx),%eax
4308a0:	50                   	push   %eax
4308a1:	57                   	push   %edi
4308a2:	ff 15 a4 11 45 00    	call   *0x4511a4
4308a8:	8b 45 b8             	mov    -0x48(%ebp),%eax
4308ab:	c7 43 04 01 00 00 00 	movl   $0x1,0x4(%ebx)
4308b2:	66 c7 03 00 03       	movw   $0x300,(%ebx)
4308b7:	66 89 43 02          	mov    %ax,0x2(%ebx)
4308bb:	eb 05                	jmp    0x4308c2
4308bd:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4308c2:	33 c9                	xor    %ecx,%ecx
4308c4:	8d 45 d0             	lea    -0x30(%ebp),%eax
4308c7:	50                   	push   %eax
4308c8:	51                   	push   %ecx
4308c9:	51                   	push   %ecx
4308ca:	51                   	push   %ecx
4308cb:	51                   	push   %ecx
4308cc:	51                   	push   %ecx
4308cd:	51                   	push   %ecx
4308ce:	51                   	push   %ecx
4308cf:	6a 04                	push   $0x4
4308d1:	6a 01                	push   $0x1
4308d3:	8d 45 e8             	lea    -0x18(%ebp),%eax
4308d6:	89 4d d0             	mov    %ecx,-0x30(%ebp)
4308d9:	50                   	push   %eax
4308da:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
4308dd:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
4308e0:	ff 15 98 11 45 00    	call   *0x451198
4308e6:	85 c0                	test   %eax,%eax
4308e8:	74 4d                	je     0x430937
4308ea:	ff 75 d0             	push   -0x30(%ebp)
4308ed:	ff 15 84 11 45 00    	call   *0x451184
4308f3:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4308f6:	83 c0 08             	add    $0x8,%eax
4308f9:	0f b7 c0             	movzwl %ax,%eax
4308fc:	89 45 c4             	mov    %eax,-0x3c(%ebp)
4308ff:	0f b7 c0             	movzwl %ax,%eax
430902:	50                   	push   %eax
430903:	e8 d3 d8 fe ff       	call   0x41e1db
430908:	8b f8                	mov    %eax,%edi
43090a:	89 7d b4             	mov    %edi,-0x4c(%ebp)
43090d:	59                   	pop    %ecx
43090e:	85 ff                	test   %edi,%edi
430910:	74 25                	je     0x430937
430912:	ff 75 d0             	push   -0x30(%ebp)
430915:	8d 47 08             	lea    0x8(%edi),%eax
430918:	50                   	push   %eax
430919:	ff 75 e4             	push   -0x1c(%ebp)
43091c:	ff 15 a4 11 45 00    	call   *0x4511a4
430922:	8b 45 c4             	mov    -0x3c(%ebp),%eax
430925:	c7 47 04 01 00 00 00 	movl   $0x1,0x4(%edi)
43092c:	66 c7 07 00 03       	movw   $0x300,(%edi)
430931:	66 89 47 02          	mov    %ax,0x2(%edi)
430935:	eb 05                	jmp    0x43093c
430937:	be 0e 00 07 80       	mov    $0x8007000e,%esi
43093c:	33 c9                	xor    %ecx,%ecx
43093e:	8d 45 dc             	lea    -0x24(%ebp),%eax
430941:	50                   	push   %eax
430942:	51                   	push   %ecx
430943:	51                   	push   %ecx
430944:	51                   	push   %ecx
430945:	51                   	push   %ecx
430946:	51                   	push   %ecx
430947:	51                   	push   %ecx
430948:	51                   	push   %ecx
430949:	6a 12                	push   $0x12
43094b:	6a 01                	push   $0x1
43094d:	8d 45 e8             	lea    -0x18(%ebp),%eax
430950:	89 4d dc             	mov    %ecx,-0x24(%ebp)
430953:	50                   	push   %eax
430954:	89 4d b0             	mov    %ecx,-0x50(%ebp)
430957:	89 4d c0             	mov    %ecx,-0x40(%ebp)
43095a:	ff 15 98 11 45 00    	call   *0x451198
430960:	85 c0                	test   %eax,%eax
430962:	74 4d                	je     0x4309b1
430964:	ff 75 dc             	push   -0x24(%ebp)
430967:	ff 15 84 11 45 00    	call   *0x451184
43096d:	89 45 e4             	mov    %eax,-0x1c(%ebp)
430970:	83 c0 08             	add    $0x8,%eax
430973:	0f b7 c0             	movzwl %ax,%eax
430976:	89 45 c0             	mov    %eax,-0x40(%ebp)
430979:	0f b7 c0             	movzwl %ax,%eax
43097c:	50                   	push   %eax
43097d:	e8 59 d8 fe ff       	call   0x41e1db
430982:	8b f8                	mov    %eax,%edi
430984:	89 7d b0             	mov    %edi,-0x50(%ebp)
430987:	59                   	pop    %ecx
430988:	85 ff                	test   %edi,%edi
43098a:	74 25                	je     0x4309b1
43098c:	ff 75 dc             	push   -0x24(%ebp)
43098f:	8d 47 08             	lea    0x8(%edi),%eax
430992:	50                   	push   %eax
430993:	ff 75 e4             	push   -0x1c(%ebp)
430996:	ff 15 a4 11 45 00    	call   *0x4511a4
43099c:	8b 45 c0             	mov    -0x40(%ebp),%eax
43099f:	c7 47 04 01 00 00 00 	movl   $0x1,0x4(%edi)
4309a6:	66 c7 07 00 03       	movw   $0x300,(%edi)
4309ab:	66 89 47 02          	mov    %ax,0x2(%edi)
4309af:	eb 05                	jmp    0x4309b6
4309b1:	be 0e 00 07 80       	mov    $0x8007000e,%esi
4309b6:	33 c9                	xor    %ecx,%ecx
4309b8:	8d 45 cc             	lea    -0x34(%ebp),%eax
4309bb:	50                   	push   %eax
4309bc:	51                   	push   %ecx
4309bd:	51                   	push   %ecx