43f032:	74 06                	je     0x43f03a
43f034:	8b 46 38             	mov    0x38(%esi),%eax
43f037:	89 43 38             	mov    %eax,0x38(%ebx)
43f03a:	5e                   	pop    %esi
43f03b:	5b                   	pop    %ebx
43f03c:	c3                   	ret
43f03d:	8d 40 00             	lea    0x0(%eax),%eax
43f040:	55                   	push   %ebp
43f041:	8b ec                	mov    %esp,%ebp
43f043:	51                   	push   %ecx
43f044:	56                   	push   %esi
43f045:	57                   	push   %edi
43f046:	89 4d fc             	mov    %ecx,-0x4(%ebp)
43f049:	8b fa                	mov    %edx,%edi
43f04b:	8b f0                	mov    %eax,%esi
43f04d:	8b 45 08             	mov    0x8(%ebp),%eax
43f050:	50                   	push   %eax
43f051:	8b 4d fc             	mov    -0x4(%ebp),%ecx
43f054:	8b d7                	mov    %edi,%edx
43f056:	8b 46 38             	mov    0x38(%esi),%eax
43f059:	66 be dd ff          	mov    $0xffdd,%si
43f05d:	e8 a2 49 fc ff       	call   0x403a04
43f062:	5f                   	pop    %edi
43f063:	5e                   	pop    %esi
43f064:	59                   	pop    %ecx
43f065:	5d                   	pop    %ebp
43f066:	c2 04 00             	ret    $0x4
43f069:	8d 40 00             	lea    0x0(%eax),%eax
43f06c:	55                   	push   %ebp
43f06d:	8b ec                	mov    %esp,%ebp
43f06f:	53                   	push   %ebx
43f070:	56                   	push   %esi
43f071:	57                   	push   %edi
43f072:	8b f9                	mov    %ecx,%edi
43f074:	8b d8                	mov    %eax,%ebx
43f076:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
43f07a:	75 0e                	jne    0x43f08a
43f07c:	8b 43 38             	mov    0x38(%ebx),%eax
43f07f:	66 be df ff          	mov    $0xffdf,%si
43f083:	e8 7c 49 fc ff       	call   0x403a04
43f088:	33 d2                	xor    %edx,%edx
43f08a:	8b 45 0c             	mov    0xc(%ebp),%eax
43f08d:	50                   	push   %eax
43f08e:	8b cf                	mov    %edi,%ecx
43f090:	8b c3                	mov    %ebx,%eax
43f092:	8b 18                	mov    (%eax),%ebx
43f094:	ff 53 24             	call   *0x24(%ebx)
43f097:	5f                   	pop    %edi
43f098:	5e                   	pop    %esi
43f099:	5b                   	pop    %ebx
43f09a:	5d                   	pop    %ebp
43f09b:	c2 08 00             	ret    $0x8
43f09e:	8b c0                	mov    %eax,%eax
43f0a0:	55                   	push   %ebp
43f0a1:	8b ec                	mov    %esp,%ebp
43f0a3:	84 d2                	test   %dl,%dl
43f0a5:	74 09                	je     0x43f0b0
43f0a7:	8b 40 38             	mov    0x38(%eax),%eax
43f0aa:	66 8b 40 7a          	mov    0x7a(%eax),%ax
43f0ae:	eb 04                	jmp    0x43f0b4
43f0b0:	66 b8 f3 ff          	mov    $0xfff3,%ax
43f0b4:	5d                   	pop    %ebp
43f0b5:	c2 04 00             	ret    $0x4
43f0b8:	8b 40 38             	mov    0x38(%eax),%eax
43f0bb:	8b 10                	mov    (%eax),%edx
43f0bd:	ff 52 4c             	call   *0x4c(%edx)
43f0c0:	c3                   	ret
43f0c1:	8d 40 00             	lea    0x0(%eax),%eax
43f0c4:	53                   	push   %ebx
43f0c5:	8b d8                	mov    %eax,%ebx
43f0c7:	8b 43 38             	mov    0x38(%ebx),%eax
43f0ca:	8b 10                	mov    (%eax),%edx
43f0cc:	ff 52 4c             	call   *0x4c(%edx)
43f0cf:	85 c0                	test   %eax,%eax
43f0d1:	74 0d                	je     0x43f0e0
43f0d3:	8b 43 38             	mov    0x38(%ebx),%eax
43f0d6:	8b 10                	mov    (%eax),%edx
43f0d8:	ff 52 4c             	call   *0x4c(%edx)
43f0db:	e8 3c a9 00 00       	call   0x449a1c
43f0e0:	5b                   	pop    %ebx
43f0e1:	c3                   	ret
43f0e2:	8b c0                	mov    %eax,%eax
43f0e4:	53                   	push   %ebx
43f0e5:	8b d8                	mov    %eax,%ebx
43f0e7:	8b 43 38             	mov    0x38(%ebx),%eax
43f0ea:	8b 10                	mov    (%eax),%edx
43f0ec:	ff 52 4c             	call   *0x4c(%edx)
43f0ef:	85 c0                	test   %eax,%eax
43f0f1:	74 0d                	je     0x43f100
43f0f3:	8b 43 38             	mov    0x38(%ebx),%eax
43f0f6:	8b 10                	mov    (%eax),%edx
43f0f8:	ff 52 4c             	call   *0x4c(%edx)
43f0fb:	e8 04 a9 00 00       	call   0x449a04
43f100:	5b                   	pop    %ebx
43f101:	c3                   	ret
43f102:	8b c0                	mov    %eax,%eax
43f104:	c3                   	ret
43f105:	8d 40 00             	lea    0x0(%eax),%eax
43f108:	55                   	push   %ebp
43f109:	8b ec                	mov    %esp,%ebp
43f10b:	51                   	push   %ecx
43f10c:	53                   	push   %ebx
43f10d:	56                   	push   %esi
43f10e:	84 d2                	test   %dl,%dl
43f110:	74 08                	je     0x43f11a
43f112:	83 c4 f0             	add    $0xfffffff0,%esp
43f115:	e8 02 4a fc ff       	call   0x403b1c
43f11a:	88 55 ff             	mov    %dl,-0x1(%ebp)
43f11d:	8b d8                	mov    %eax,%ebx
43f11f:	33 d2                	xor    %edx,%edx
43f121:	8b c3                	mov    %ebx,%eax
43f123:	e8 c8 fe ff ff       	call   0x43eff0
43f128:	b2 01                	mov    $0x1,%dl
43f12a:	a1 f8 b6 41 00       	mov    0x41b6f8,%eax
43f12f:	e8 a8 df fd ff       	call   0x41d0dc
43f134:	8b f0                	mov    %eax,%esi
43f136:	89 73 40             	mov    %esi,0x40(%ebx)
43f139:	ba ff ff ff 00       	mov    $0xffffff,%edx
43f13e:	33 c0                	xor    %eax,%eax
43f140:	e8 df 2f fe ff       	call   0x422124
43f145:	8b d0                	mov    %eax,%edx
43f147:	8b c6                	mov    %esi,%eax
43f149:	e8 0a e1 fd ff       	call   0x41d258
43f14e:	8b c3                	mov    %ebx,%eax
43f150:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
43f154:	74 0f                	je     0x43f165
43f156:	e8 19 4a fc ff       	call   0x403b74
43f15b:	64 8f 05 00 00 00 00 	pop    %fs:0x0
43f162:	83 c4 0c             	add    $0xc,%esp
43f165:	8b c3                	mov    %ebx,%eax
43f167:	5e                   	pop    %esi
43f168:	5b                   	pop    %ebx
43f169:	59                   	pop    %ecx
43f16a:	5d                   	pop    %ebp
43f16b:	c3                   	ret
43f16c:	53                   	push   %ebx
43f16d:	56                   	push   %esi
43f16e:	e8 11 4a fc ff       	call   0x403b84
43f173:	8b da                	mov    %edx,%ebx
43f175:	8b f0                	mov    %eax,%esi
43f177:	8b 46 40             	mov    0x40(%esi),%eax
43f17a:	e8 7d 46 fc ff       	call   0x4037fc
43f17f:	8b d3                	mov    %ebx,%edx
43f181:	80 e2 fc             	and    $0xfc,%dl
43f184:	8b c6                	mov    %esi,%eax
43f186:	e8 61 46 fc ff       	call   0x4037ec
43f18b:	84 db                	test   %bl,%bl
43f18d:	7e 07                	jle    0x43f196
43f18f:	8b c6                	mov    %esi,%eax
43f191:	e8 d6 49 fc ff       	call   0x403b6c
43f196:	5e                   	pop    %esi
43f197:	5b                   	pop    %ebx
43f198:	c3                   	ret
43f199:	8d 40 00             	lea    0x0(%eax),%eax
43f19c:	53                   	push   %ebx
43f19d:	56                   	push   %esi
43f19e:	57                   	push   %edi
43f19f:	8b f2                	mov    %edx,%esi
43f1a1:	8b d8                	mov    %eax,%ebx
43f1a3:	8b d6                	mov    %esi,%edx
43f1a5:	8b c3                	mov    %ebx,%eax
43f1a7:	e8 68 fe ff ff       	call   0x43f014
43f1ac:	8b c6                	mov    %esi,%eax
43f1ae:	8b 15 e8 cc 43 00    	mov    0x43cce8,%edx
43f1b4:	e8 db 47 fc ff       	call   0x403994
43f1b9:	84 c0                	test   %al,%al
43f1bb:	74 37                	je     0x43f1f4
43f1bd:	8b c6                	mov    %esi,%eax
43f1bf:	8a 50 54             	mov    0x54(%eax),%dl
43f1c2:	88 53 54             	mov    %dl,0x54(%ebx)
43f1c5:	8b 50 58             	mov    0x58(%eax),%edx
43f1c8:	89 53 58             	mov    %edx,0x58(%ebx)
43f1cb:	8a 50 6c             	mov    0x6c(%eax),%dl
43f1ce:	88 53 6c             	mov    %dl,0x6c(%ebx)
43f1d1:	56                   	push   %esi
43f1d2:	8d 70 44             	lea    0x44(%eax),%esi
43f1d5:	8d 7b 44             	lea    0x44(%ebx),%edi
43f1d8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1d9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1da:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1db:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1dc:	5e                   	pop    %esi
43f1dd:	56                   	push   %esi
43f1de:	8d 70 5c             	lea    0x5c(%eax),%esi
43f1e1:	8d 7b 5c             	lea    0x5c(%ebx),%edi
43f1e4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1e5:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1e6:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1e7:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f1e8:	5e                   	pop    %esi
43f1e9:	8b 50 40             	mov    0x40(%eax),%edx
43f1ec:	8b 43 40             	mov    0x40(%ebx),%eax
43f1ef:	8b 08                	mov    (%eax),%ecx
43f1f1:	ff 51 08             	call   *0x8(%ecx)
43f1f4:	5f                   	pop    %edi
43f1f5:	5e                   	pop    %esi
43f1f6:	5b                   	pop    %ebx
43f1f7:	c3                   	ret
43f1f8:	55                   	push   %ebp
43f1f9:	8b ec                	mov    %esp,%ebp
43f1fb:	56                   	push   %esi
43f1fc:	57                   	push   %edi
43f1fd:	8b fa                	mov    %edx,%edi
43f1ff:	8b f0                	mov    %eax,%esi
43f201:	8b 45 08             	mov    0x8(%ebp),%eax
43f204:	50                   	push   %eax
43f205:	8b d7                	mov    %edi,%edx
43f207:	8b 46 38             	mov    0x38(%esi),%eax
43f20a:	66 be e5 ff          	mov    $0xffe5,%si
43f20e:	e8 f1 47 fc ff       	call   0x403a04
43f213:	5f                   	pop    %edi
43f214:	5e                   	pop    %esi
43f215:	5d                   	pop    %ebp
43f216:	c2 04 00             	ret    $0x4
43f219:	8d 40 00             	lea    0x0(%eax),%eax
43f21c:	53                   	push   %ebx
43f21d:	56                   	push   %esi
43f21e:	8b da                	mov    %edx,%ebx
43f220:	8b c8                	mov    %eax,%ecx
43f222:	8b c1                	mov    %ecx,%eax
43f224:	99                   	cltd
43f225:	33 c2                	xor    %edx,%eax
43f227:	2b c2                	sub    %edx,%eax
43f229:	8b f0                	mov    %eax,%esi
43f22b:	8b c3                	mov    %ebx,%eax
43f22d:	99                   	cltd
43f22e:	33 c2                	xor    %edx,%eax
43f230:	2b c2                	sub    %edx,%eax
43f232:	3b f0                	cmp    %eax,%esi
43f234:	7d 05                	jge    0x43f23b
43f236:	8b c1                	mov    %ecx,%eax
43f238:	5e                   	pop    %esi
43f239:	5b                   	pop    %ebx
43f23a:	c3                   	ret
43f23b:	8b c3                	mov    %ebx,%eax
43f23d:	5e                   	pop    %esi
43f23e:	5b                   	pop    %ebx
43f23f:	c3                   	ret
43f240:	53                   	push   %ebx
43f241:	56                   	push   %esi
43f242:	57                   	push   %edi
43f243:	83 c4 f0             	add    $0xfffffff0,%esp
43f246:	8b f2                	mov    %edx,%esi
43f248:	8d 3c 24             	lea    (%esp),%edi
43f24b:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f24c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f24d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f24e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43f24f:	8b d8                	mov    %eax,%ebx
43f251:	8b 43 0c             	mov    0xc(%ebx),%eax
43f254:	8b 14 24             	mov    (%esp),%edx
43f257:	3b c2                	cmp    %edx,%eax
43f259:	7c 06                	jl     0x43f261
43f25b:	3b 44 24 08          	cmp    0x8(%esp),%eax
43f25f:	7e 14                	jle    0x43f275
43f261:	2b d0                	sub    %eax,%edx
43f263:	8b 4c 24 08          	mov    0x8(%esp),%ecx
43f267:	2b c8                	sub    %eax,%ecx
43f269:	8b c1                	mov    %ecx,%eax
43f26b:	92                   	xchg   %eax,%edx
43f26c:	e8 ab ff ff ff       	call   0x43f21c
43f271:	8b f0                	mov    %eax,%esi
43f273:	eb 02                	jmp    0x43f277
43f275:	33 f6                	xor    %esi,%esi
43f277:	8b 43 10             	mov    0x10(%ebx),%eax
43f27a:	8b 54 24 04          	mov    0x4(%esp),%edx
43f27e:	3b c2                	cmp    %edx,%eax
43f280:	7c 06                	jl     0x43f288
43f282:	3b 44 24 0c          	cmp    0xc(%esp),%eax
43f286:	7e 12                	jle    0x43f29a
43f288:	2b d0                	sub    %eax,%edx
43f28a:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
43f28e:	2b c8                	sub    %eax,%ecx
43f290:	8b c1                	mov    %ecx,%eax
43f292:	92                   	xchg   %eax,%edx
43f293:	e8 84 ff ff ff       	call   0x43f21c
43f298:	eb 02                	jmp    0x43f29c
43f29a:	33 c0                	xor    %eax,%eax
43f29c:	85 f6                	test   %esi,%esi
43f29e:	75 04                	jne    0x43f2a4
43f2a0:	85 c0                	test   %eax,%eax
43f2a2:	74 0f                	je     0x43f2b3
43f2a4:	f7 d8                	neg    %eax
43f2a6:	50                   	push   %eax
43f2a7:	f7 de                	neg    %esi
43f2a9:	56                   	push   %esi
43f2aa:	8d 43 44             	lea    0x44(%ebx),%eax
43f2ad:	50                   	push   %eax
43f2ae:	e8 89 7a fc ff       	call   0x406d3c
43f2b3:	83 c4 10             	add    $0x10,%esp
43f2b6:	5f                   	pop    %edi
43f2b7:	5e                   	pop    %esi
43f2b8:	5b                   	pop    %ebx
43f2b9:	c3                   	ret
43f2ba:	8b c0                	mov    %eax,%eax
43f2bc:	56                   	push   %esi
43f2bd:	8b f0                	mov    %eax,%esi
43f2bf:	8b d6                	mov    %esi,%edx
43f2c1:	8b 46 38             	mov    0x38(%esi),%eax
43f2c4:	66 be db ff          	mov    $0xffdb,%si
43f2c8:	e8 37 47 fc ff       	call   0x403a04
43f2cd:	5e                   	pop    %esi
43f2ce:	c3                   	ret
43f2cf:	90                   	nop
43f2d0:	56                   	push   %esi
43f2d1:	8b f0                	mov    %eax,%esi
43f2d3:	8b d6                	mov    %esi,%edx
43f2d5:	8b 46 38             	mov    0x38(%esi),%eax
43f2d8:	66 be da ff          	mov    $0xffda,%si
43f2dc:	e8 23 47 fc ff       	call   0x403a04
43f2e1:	5e                   	pop    %esi
43f2e2:	c3                   	ret
43f2e3:	90                   	nop
43f2e4:	55                   	push   %ebp
43f2e5:	8b ec                	mov    %esp,%ebp
43f2e7:	33 c0                	xor    %eax,%eax
43f2e9:	5d                   	pop    %ebp
43f2ea:	c2 04 00             	ret    $0x4
43f2ed:	8d 40 00             	lea    0x0(%eax),%eax
43f2f0:	b8 04 00 00 00       	mov    $0x4,%eax
43f2f5:	c3                   	ret
43f2f6:	8b c0                	mov    %eax,%eax
43f2f8:	c3                   	ret
43f2f9:	8d 40 00             	lea    0x0(%eax),%eax
43f2fc:	55                   	push   %ebp
43f2fd:	8b ec                	mov    %esp,%ebp
43f2ff:	83 c4 f0             	add    $0xfffffff0,%esp
43f302:	53                   	push   %ebx
43f303:	56                   	push   %esi
43f304:	57                   	push   %edi
43f305:	8b 5d 0c             	mov    0xc(%ebp),%ebx
43f308:	8b 75 08             	mov    0x8(%ebp),%esi
43f30b:	8b fb                	mov    %ebx,%edi
43f30d:	3b 77 04             	cmp    0x4(%edi),%esi
43f310:	75 04                	jne    0x43f316
43f312:	33 c0                	xor    %eax,%eax
43f314:	eb 46                	jmp    0x43f35c
43f316:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
43f31a:	75 20                	jne    0x43f33c
43f31c:	8d 45 f0             	lea    -0x10(%ebp),%eax
43f31f:	50                   	push   %eax
43f320:	56                   	push   %esi
43f321:	e8 36 79 fc ff       	call   0x406c5c
43f326:	ff 77 10             	push   0x10(%edi)
43f329:	ff 77 0c             	push   0xc(%edi)
43f32c:	8d 45 f0             	lea    -0x10(%ebp),%eax
43f32f:	50                   	push   %eax
43f330:	e8 27 7a fc ff       	call   0x406d5c
43f335:	85 c0                	test   %eax,%eax
43f337:	74 03                	je     0x43f33c