Function at 0x10049720
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x3854
call fcn.1007d430
mov eax, dword [0x1008a2c0]
xor eax, esp
mov dword [esp + 0x3850], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 0x1c]
fld1
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x20]
mov dword [esp + 0xc], eax
mov esi, dword [ebp + 0xc]
lea eax, [esp + 0xf8]
mov dword [esp + 0x94], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0xa0], eax
mov eax, dword [esi + 0x10]
shr eax, 2
mov dword [esp + 0xe4], eax
mov eax, dword [ecx + 0x10]
mov dword [esp + 0x84], edx
shr eax, 2
lea edx, [esp + 0x178]
mov dword [esp + 0xa4], ecx
mov ecx, dword [ecx + 0x18]
mov dword [esp + 0x54], edx
mov edx, dword [esi + 8]
mov dword [esp + 0xe0], eax
mov eax, dword [esi + 0x18]
mov dword [esp + 0xc0], ecx
mov ecx, dword [ebp + 0x24]
xor ebx, ebx
mov edi, dword [ebp + 0x18]
mov dword [esp + 0x48], edx
mov edx, dword [esi + 4]
mov dword [esp + 0xf0], eax
lea eax, [esp + 0x978]
mov dword [esp + 0x44], edi
mov dword [esp + 0x24], edx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0xbc], eax
cmp ecx, 0x1e
jle 0x100497f2
fstp st(0)
sub ecx, 0x1e
fld qword [0x1007e248]
mov edx, 1
imul edi, dword [ebp + 0x14]
shl edx, cl
mov dword [esp + 0xac], edx
fild dword [esp + 0xac]
fdivp st(1)
fst qword [esp + 0xc8]
cmp edi, 0x100
jle 0x10049841
lea eax, [edi*8]
fstp st(0)
push eax
call sub.MSVCR100.dll_malloc
add esp, 4
mov dword [esp + 0x54], eax
cmp eax, ebx
je 0x10049964
fld qword [esp + 0xc8]
xor ebx, ebx
cmp edi, 4
jl 0x1004988c
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 0x10]
lea edx, [edi - 4]
shr edx, 2
add ecx, 0x10
add eax, 8
inc edx
lea ebx, [edx*4]
fild dword [eax - 8]
add eax, 0x10
add ecx, 0x20
dec edx
fmul st(1)
fstp qword [ecx - 0x30]
fild dword [eax - 0x14]
fmul st(1)
fstp qword [ecx - 0x28]
fild dword [eax - 0x10]
fmul st(1)
fstp qword [ecx - 0x20]
fild dword [eax - 0xc]
fmul st(1)
fstp qword [ecx - 0x18]
jne 0x10049863
cmp ebx, edi
jge 0x100498a5
mov ecx, dword [esp + 0x54]
mov eax, dword [ebp + 0x10]
fild dword [eax + ebx*4]
inc ebx
fmul st(1)
fstp qword [ecx + ebx*8 - 8]
cmp ebx, edi
jl 0x10049897
cmp dword [ebp + 0x14], 1
fstp st(0)
jne 0x100498ff
mov ecx, dword [ebp + 0x28]
mov edx, dword [esp + 0x44]
mov edi, dword [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x88]
push edx
mov edx, dword [esp + 0xac]
push edi
push esi
call fcn.10048ec0
mov esi, eax
lea eax, [esp + 0x188]
add esp, 0x10
cmp edi, eax
je 0x100498e8
push edi
call sub.MSVCR100.dll_free
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3850]
xor ecx, esp
call fcn.1007d356
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0x44]
lea esi, [edi + 2]
imul esi, dword [esp + 0x48]
cmp esi, 0x5dc
jg 0x10049918
cmp edi, 0xf
jle 0x10049988
mov ecx, edi
add ecx, esi
lea edx, [ecx*8 + 8]
push edx
call sub.MSVCR100.dll_malloc
add esp, 4
mov dword [esp + 0xbc], eax
test eax, eax
jne 0x1004997e
lea eax, [esp + 0x978]
test eax, eax
je 0x1004994c
push 0
call sub.MSVCR100.dll_free
add esp, 4
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x178]
cmp eax, ecx
je 0x10049964
push eax
call sub.MSVCR100.dll_free
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3850]
xor ecx, esp
call fcn.1007d356
mov esp, ebp
pop ebp
ret
lea edx, [eax + esi*8]
mov dword [esp + 0x94], edx
mov ecx, dword [esp + 0x94]
lea edx, [edi + 1]
xor eax, eax
test edx, edx
jle 0x100499b3
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0xbc]
add ebx, ebx
add ebx, ebx
add ebx, ebx
mov dword [ecx + eax*4], esi
inc eax
add esi, ebx
cmp eax, edx
jl 0x100499a9
xor eax, eax
test edx, edx
jle 0x100499cd
lea esi, [ecx + edi*4 + 4]
lea ecx, [ecx]
mov ebx, dword [ecx + eax*4]
mov dword [esi], ebx
inc eax
add esi, 4
cmp eax, edx
jl 0x100499c0
mov ecx, dword [ecx + edi*4]
mov eax, dword [esp + 0x48]
lea ebx, [ecx + eax*8]
mov ecx, dword [esp + 0x84]
imul ecx, dword [esp + 0xe0]
mov edx, 1
sub edx, dword [ebp + 0x14]
mov dword [esp + 0xa8], 0
add eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x48], eax
mov eax, 1
sub eax, edi
add dword [esp + 0xa0], eax
mov eax, dword [esp + 0xc]
imul eax, edx
add eax, ecx
mov ecx, dword [esp + 0xc0]
lea eax, [ecx + eax*4]
mov dword [esp + 0xc0], eax
test edx, edx
jle 0x1004adc2
jmp 0x10049a40
mov ecx, dword [esp + 0x24]
sub ecx, dword [esp + 0xa8]
mov edx, 1
dec ecx
shl edx, cl
test dword [ebp + 0x28], edx
je 0x1004ada9
mov ecx, dword [esp + 0xf0]
mov eax, dword [esp + 0xa8]
lea edx, [ecx + eax*4]
mov ecx, dword [esp + 0xc0]
lea eax, [ecx + eax*4]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x44], eax
jle 0x10049b93
mov esi, dword [esp + 0x48]
mov ecx, dword [ebp + 0x14]
mov edi, dword [esp + 0x24]
lea ecx, [esi + ecx - 1]
mov esi, dword [esp + 0xe4]
add esi, esi
add esi, esi
mov dword [esp + 0x30], ecx
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0x94]
mov eax, dword [esi + eax*4]
xor esi, esi
mov dword [esp + 0xc], eax
cmp ecx, 4
jl 0x10049b4d
mov ecx, dword [esp + 0xc]
lea esi, [edi + edi*2]
lea esi, [edx + esi*4]
mov dword [esp + 0x58], edx
mov dword [esp + 0x38], esi
lea esi, [edx + edi*8]
lea edx, [edx + edi*4]
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0x30]
add edx, 0xfffffffc
mov eax, edi
shr edx, 2
shl eax, 4
add ecx, 0x10
inc edx
mov dword [esp + 0x40], esi
lea esi, [edx*4]
mov edi, dword [esp + 0x58]
fild dword [edi]
mov edi, dword [esp + 0x5c]
add dword [esp + 0x58], eax
add dword [esp + 0x5c], eax
fstp qword [ecx - 0x10]
add ecx, 0x20
fild dword [edi]
mov edi, dword [esp + 0x40]
add dword [esp + 0x40], eax
fstp qword [ecx - 0x28]
fild dword [edi]
mov edi, dword [esp + 0x38]
add dword [esp + 0x38], eax
dec edx
fstp qword [ecx - 0x20]
fild dword [edi]
fstp qword [ecx - 0x18]
jne 0x10049b07
mov edx, dword [esp + 0x50]
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x30]
cmp esi, ecx
jge 0x10049b75
mov eax, esi
imul eax, edi
lea eax, [edx + eax*4]
fild dword [eax]
mov ecx, dword [esp + 0xc]
inc esi
fstp qword [ecx + esi*8 - 8]
lea ecx, [edi*4]
add eax, ecx
mov ecx, dword [esp + 0x30]
cmp esi, ecx
jl 0x10049b59
mov eax, dword [esp + 0x1c]
add edx, dword [esp + 0x84]
inc eax
mov dword [esp + 0x50], edx
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x44]
jl 0x10049ab4
xor esi, esi
mov dword [esp + 0x58], esi
cmp dword [esp + 0x48], esi
jle 0x10049bb3
mov esi, dword [esp + 0x48]
mov ecx, esi
and ecx, 0x1fffffff
add ecx, ecx
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
cmp dword [esp + 0xa0], 0
mov dword [esp + 0xac], 0
jle 0x1004ada9
mov edx, dword [ebp + 0x14]
mov eax, dword [esp + 0xe4]
dec edx
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0xe0]
lea ecx, [eax*4]
lea eax, [edx*4]
mov dword [esp + 0x84], ecx
mov dword [esp + 0xf4], eax
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x58]
lea eax, [ecx + edx*4]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x54]
mov dword [esp + 0xa4], eax
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x28], eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x1c], 0
test ecx, ecx
jle 0x1004a946
jmp 0x10049c40
cmp dword [ebp + 0x14], 0
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + ecx*4]
mov dword [esp + 0xc4], edx
mov dword [esp + 0x30], 0
jle 0x1004a933
mov eax, dword [esp + 0x44]
mov edi, dword [esp + 0x48]
dec eax
add edi, 0xfffffffe
mov dword [esp + 0x38], eax
mov dword [esp + 0x20], edi
jmp 0x10049c80
mov edx, dword [esp + 0x30]
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0xc4]
sub eax, edx
lea ecx, [ecx + edx*8]
cmp eax, 0xe
jle 0x10049c9f
mov eax, 7
jmp 0x10049ca9
cmp eax, 7
jle 0x10049ca9
cdq
sub eax, edx
sar eax, 1
mov edx, dword [esp + 0x50]
fld qword [ecx]
fld qword [ecx + 8]
mov esi, dword [esp + 0x40]
fld qword [ecx + 0x10]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x3c]
fld qword [ecx + 0x18]
fld qword [ecx + 0x20]
mov dword [esp + 0x18], edx
fstp qword [esp + 0x98]
lea edx, [ecx + 0x10]
fld qword [ecx + 0x28]
add dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
fstp qword [esp + 0xd0]
fld qword [esi]
lea edx, [ecx + 0x18]
fld qword [esi + 8]
mov dword [esp + 0x2c], edx
lea edx, [ecx + 0x20]
fst qword [esp + 0xd8]
fld qword [esi + 0x10]
mov dword [esp + 0x10], edx
lea edx, [ecx + 0x28]
fst qword [esp + 0x78]
fld qword [esi + 0x18]
fstp qword [esp + 0x68]
fld qword [esi + 0x20]
fstp qword [esp + 0x88]
fld qword [esi + 0x28]
fstp qword [esp + 0xb0]
fld qword [esi + 0x30]
lea esi, [esi + eax*8]
fstp qword [esp + 0xc8]
mov dword [esp + 0x40], esi
cmp eax, 7
jne 0x1004a063
mov eax, dword [esp + 0x38]
fstp st(0)
cmp dword [esp + 0x1c], eax
jl 0x10049f52
mov edx, dword [ebp + 0x14]
cmp dword [esp + 0x30], edx
jl 0x10049f52
xor esi, esi
test edi, edi
js 0x1004ac0b
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x3c]
lea eax, [edi + edi]
add eax, eax
add eax, eax
mov dword [esp + 0x4c], eax
lea eax, [edx + edi*4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x28]
sub eax, ebx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x50]
add ecx, 0x38
sub eax, edx
lea edi, [ebx + 8]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x34], eax
jmp 0x10049db4
fld qword [esp + 0xd8]
fxch st(3)
fxch st(5)
fxch st(2)
fxch st(4)
fxch st(1)
fxch st(3)
mov eax, dword [esp + 0xc]
fxch st(5)
fstp qword [esp + 0x60]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
fxch st(3)
fstp qword [esp + 0x70]
fld qword [esp + 0x98]
fld qword [esp + 0xd0]
fld qword [eax - 8]
fst qword [esp + 0x98]
fld qword [eax]
mov eax, dword [esp + 0x34]
fstp qword [esp + 0xd0]
fild dword [ecx]
mov ecx, dword [esp + 0x10]
fstp qword [edx + esi*8]
mov edx, dword [esp + 0x2c]
fild dword [eax + ecx]
fstp qword [edx + edi]
fld qword [esp + 0x70]
fmulp st(7)
fld qword [esp + 0x60]
fmul st(6)
faddp st(7)
fld qword [esp + 0x78]
fmul st(5)
faddp st(7)
fld qword [esp + 0x68]
fmul st(4)
faddp st(7)
fld qword [esp + 0x88]
fmul st(3)
faddp st(7)
fld qword [esp + 0xb0]
fmul st(2)
faddp st(7)
fld qword [esp + 0xc8]
fmul st(1)
faddp st(7)
fxch st(6)
fadd qword [edi - 8]
fstp qword [esp + 0xe8]
fld qword [esp + 0x70]
fmul st(5)
fld qword [esp + 0xd8]
fmul st(5)
faddp st(1)
fld qword [esp + 0x78]
fmul st(4)
faddp st(1)
fld qword [esp + 0x68]
fmul st(3)
faddp st(1)
fld qword [esp + 0x88]
fmul st(2)
faddp st(1)
fld qword [esp + 0xb0]
fmulp st(7)
faddp st(6)
fld qword [esp + 0xc8]
fmul qword [esp + 0xd0]
faddp st(6)
fxch st(5)
fadd qword [edi]
fld qword [0x1007e228]
fld qword [esp + 0xe8]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x10049ebc
fstp st(0)
fld qword [0x1007e228]
jmp 0x10049ed3
fld qword [0x1007e220]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x10049ed3
fstp st(0)
fld qword [0x1007e220]
call fcn.1007d380
fld qword [0x1007e228]
mov ecx, dword [esp + 0x18]
fcom st(1)
mov dword [ecx], eax
fnstsw ax
test ah, 5
jp 0x10049ef1
fstp st(1)
jmp 0x10049f08
fstp st(0)
fld qword [0x1007e220]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x10049f06
fstp st(1)
jmp 0x10049f08
fstp st(0)
call fcn.1007d380
fldz
mov ecx, dword [esp + 0x10]
add dword [esp + 0xc], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0x10], ecx
cmp esi, dword [esp + 0x20]
jle 0x10049da1
mov edi, dword [esp + 0x20]
fstp st(2)
fstp st(0)
fstp st(0)
fstp st(1)
jmp 0x1004a924
xor esi, esi
test edi, edi
js 0x1004ac0b
fld qword [esp + 0xd0]
lea eax, [ecx + 0x38]
mov ecx, dword [esp + 0x20]
jmp 0x10049f81
fld qword [esp + 0xd8]
fxch st(4)
fxch st(6)
fxch st(3)
fxch st(5)
fxch st(1)
fxch st(4)
fxch st(1)
fxch st(6)
add esi, 2
fstp qword [esp + 0x60]
add eax, 0x10
fxch st(4)
fstp qword [esp + 0x70]
fld qword [esp + 0x98]
fld qword [eax - 0x18]
fst qword [esp + 0x98]
fld qword [eax - 0x10]
fstp qword [esp + 0xd0]
fld qword [esp + 0x70]
fmulp st(6)
fld qword [esp + 0x60]
fmul st(3)
faddp st(6)
fld qword [esp + 0x78]
fmul st(5)
faddp st(6)
fld qword [esp + 0x68]
fmul st(4)
faddp st(6)
fld qword [esp + 0x88]
fmul st(2)
faddp st(6)
fld qword [esp + 0xb0]
fmul st(7)
faddp st(6)
fld qword [esp + 0xc8]
fmul st(1)
faddp st(6)
fxch st(5)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fld qword [esp + 0x70]
fmul st(2)
fld qword [esp + 0xd8]
fmul st(5)
faddp st(1)
fld qword [esp + 0x78]
fmul st(4)
faddp st(1)
fld qword [esp + 0x68]
fmul st(2)
faddp st(1)
fld qword [esp + 0x88]
fmul st(7)
faddp st(1)
fld qword [esp + 0xb0]
fmulp st(6)
faddp st(5)
fld qword [esp + 0xc8]
fld qword [esp + 0xd0]
fmul st(1), st(0)
fxch st(6)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, ecx
jle 0x10049f6c
fstp st(4)
mov edi, ecx
fstp st(2)
fstp st(0)
fstp st(1)
fstp st(1)
jmp 0x1004a924
cmp eax, 6
jne 0x1004a334
mov edx, dword [esp + 0x38]
fstp st(0)
cmp dword [esp + 0x1c], edx
jl 0x1004a252
mov eax, dword [ebp + 0x14]
cmp dword [esp + 0x30], eax
jl 0x1004a252
xor esi, esi
test edi, edi
js 0x1004ac0b
mov edi, dword [esp + 0x24]
lea eax, [edi + edi]
lea edx, [eax*4]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x3c]
lea eax, [edx + edi*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
sub eax, ebx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x50]
add ecx, 0x30
sub eax, edx
lea edi, [ebx + 8]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x34], eax
jmp 0x1004a0e9
fld qword [esp + 0xd8]
fxch st(3)
fxch st(5)
fxch st(2)
fxch st(4)
fxch st(2)
fxch st(3)
fxch st(1)
fxch st(2)
fxch st(1)
mov eax, dword [esp + 0x10]
fxch st(5)
fstp qword [esp + 0x60]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
fxch st(3)
fst qword [esp + 0x70]
fld qword [esp + 0x98]
fld qword [eax - 8]
fld qword [eax]
mov eax, dword [esp + 0xc]
fstp qword [esp + 0x98]
fild dword [ecx]
mov ecx, dword [esp + 0x34]
fstp qword [edx + esi*8]
mov edx, dword [esp + 0x2c]
fild dword [eax + ecx]
fstp qword [edi + edx]
fxch st(2)
fmul st(6)
fld qword [esp + 0x60]
fmul st(6)
faddp st(1)
fld qword [esp + 0x78]
fmul st(5)
faddp st(1)
fld qword [esp + 0x68]
fmul st(4)
faddp st(1)
fld qword [esp + 0x88]
fmul st(2)
faddp st(1)
fld qword [esp + 0xb0]
fmul st(3)
faddp st(1)
fadd qword [edi - 8]
fstp qword [esp + 0xe8]
fld qword [esp + 0x70]
fmul st(5)
fxch st(6)
fmul st(4)
faddp st(6)
fld qword [esp + 0x78]
fmul st(3)
faddp st(6)
fld qword [esp + 0x68]
fmul st(1)
faddp st(6)
fld qword [esp + 0x88]
fmul st(2)
faddp st(6)
fld qword [esp + 0xb0]
fmul qword [esp + 0x98]
faddp st(6)
fxch st(5)
fadd qword [edi]
fstp qword [esp + 0x60]
fld qword [0x1007e228]
fld qword [esp + 0xe8]
fcom st(1)
fnstsw ax
test ah, 0x41
je 0x1004a1d1
fstp st(1)
fld qword [0x1007e220]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1004a1d1
fstp st(1)
jmp 0x1004a1d3
fstp st(0)
call fcn.1007d380
fld qword [0x1007e228]
fld qword [esp + 0x60]
mov ecx, dword [esp + 0x18]
fcom st(1)
mov dword [ecx], eax
fnstsw ax
test ah, 0x41
je 0x1004a206
fstp st(1)
fld qword [0x1007e220]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1004a206
fstp st(1)
jmp 0x1004a208
fstp st(0)
call fcn.1007d380
fldz
mov ecx, dword [esp + 0xc]
add dword [esp + 0x10], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0xc], ecx
cmp esi, dword [esp + 0x20]
jle 0x1004a0d0
mov edi, dword [esp + 0x20]
fstp st(2)
fstp st(0)
fstp st(2)
fstp st(1)
jmp 0x1004a924
xor esi, esi
test edi, edi
js 0x1004ac0b
fld qword [esp + 0x98]
lea eax, [ecx + 0x30]
mov ecx, dword [esp + 0x20]
jmp 0x1004a283
fld qword [esp + 0xd8]
fxch st(4)
fxch st(6)
fxch st(3)
fxch st(5)
fxch st(3)
fxch st(4)
fxch st(1)
fxch st(3)
fxch st(6)
add esi, 2
fstp qword [esp + 0x60]
add eax, 0x10
fxch st(4)
fst qword [esp + 0x70]
fld qword [eax - 0x18]
fld qword [eax - 0x10]
fstp qword [esp + 0x98]
fxch st(1)
fmul st(5)
fld qword [esp + 0x60]
fmul st(3)
faddp st(1)
fld qword [esp + 0x78]
fmul st(5)
faddp st(1)
fld qword [esp + 0x68]
fmul st(4)
faddp st(1)
fld qword [esp + 0x88]
fmul st(7)
faddp st(1)
fld qword [esp + 0xb0]
fmul st(2)
faddp st(1)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fld qword [esp + 0x70]
fmul st(2)
fxch st(5)
fmul st(4)
faddp st(5)
fld qword [esp + 0x78]
fmul st(3)
faddp st(5)
fld qword [esp + 0x68]
fmul st(6)
faddp st(5)
fld qword [esp + 0x88]
fmul st(1)
faddp st(5)
fld qword [esp + 0xb0]
fld qword [esp + 0x98]
fmul st(1), st(0)
fxch st(6)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, ecx
jle 0x1004a26c
fstp st(4)
mov edi, ecx
fstp st(2)
fstp st(0)
jmp 0x1004a920
cmp eax, 5
jne 0x1004a5a6
mov eax, dword [esp + 0x38]
fstp st(0)
cmp dword [esp + 0x1c], eax
jl 0x1004a503
mov ecx, dword [ebp + 0x14]
cmp dword [esp + 0x30], ecx
jl 0x1004a503
xor esi, esi
test edi, edi
js 0x1004ac0b
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ecx]
add eax, eax
add eax, eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x3c]
lea ecx, [eax + ecx*4]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov eax, edx
mov edx, dword [esp + 0x50]
sub ecx, ebx
sub edx, dword [esp + 0x3c]
lea edi, [ebx + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jmp 0x1004a3b7
mov eax, dword [esp + 0x10]
fxch st(3)
mov edx, dword [esp + 0x34]
fxch st(5)
mov ecx, dword [esp + 0x2c]
fxch st(2)
fxch st(4)
fxch st(1)
fxch st(2)
fxch st(5)
fstp qword [esp + 0x60]
fxch st(3)
fst qword [esp + 0x70]
fld qword [eax - 8]
fld qword [eax]
mov eax, dword [esp + 0x14]
fild dword [eax]
mov eax, dword [esp + 0x28]
fstp qword [eax + esi*8]
mov eax, dword [esp + 0xc]
fild dword [edx + eax]
fstp qword [ecx + edi]
fxch st(2)
fmul st(6)
fld qword [esp + 0x60]
fmul st(6)
faddp st(1)
fld qword [esp + 0x78]
fmul st(5)
faddp st(1)
fld qword [esp + 0x68]
fmul st(4)
faddp st(1)
fld qword [esp + 0x88]
fmul st(2)
faddp st(1)
fadd qword [edi - 8]
fstp qword [esp + 0xe8]
fld qword [esp + 0x70]
fmul st(5)
fld st(6)
fmul st(5)
faddp st(1)
fld qword [esp + 0x78]
fmul st(4)
faddp st(1)
fld qword [esp + 0x68]
fmul st(2)
faddp st(1)
fld qword [esp + 0x88]
fmul st(3)
faddp st(1)
fadd qword [edi]
fstp qword [esp + 0x60]
fld qword [0x1007e228]
fld qword [esp + 0xe8]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x1004a45f
fstp st(0)
fld qword [0x1007e228]
jmp 0x1004a476
fld qword [0x1007e220]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x1004a476
fstp st(0)
fld qword [0x1007e220]
call fcn.1007d380
fld qword [0x1007e228]
fcomp qword [esp + 0x60]
mov ecx, dword [esp + 0x18]
mov dword [ecx], eax
fnstsw ax
test ah, 5
jp 0x1004a49a
fld qword [0x1007e228]
jmp 0x1004a4b1
fld qword [0x1007e220]
fcomp qword [esp + 0x60]
fnstsw ax
test ah, 0x41
jne 0x1004a4b5
fld qword [0x1007e220]
fstp qword [esp + 0x60]
fld qword [esp + 0x60]
call fcn.1007d380
fldz
mov ecx, dword [esp + 0xc]
add dword [esp + 0x10], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0xc], ecx
cmp esi, dword [esp + 0x20]
jle 0x1004a39f
mov edi, dword [esp + 0x20]
fstp st(3)
fstp st(1)
fstp st(1)
fstp st(0)
jmp 0x1004a922
xor esi, esi
test edi, edi
js 0x1004ac0b
mov eax, edx
jmp 0x1004a51f
fxch st(3)
fxch st(5)
fxch st(2)
fxch st(4)
fxch st(2)
fxch st(3)
fxch st(2)
fxch st(4)
add esi, 2
fst qword [esp + 0x70]
add eax, 0x10
fld qword [eax - 0x18]
fld qword [eax - 0x10]
fxch st(2)
fmul st(6)
fxch st(7)
fmul st(3)
faddp st(7)
fld qword [esp + 0x78]
fmul st(5)
faddp st(7)
fld qword [esp + 0x68]
fmul st(4)
faddp st(7)
fld qword [esp + 0x88]
fmul st(1)
faddp st(7)
fxch st(6)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fld qword [esp + 0x70]
fmul st(2)
fld st(5)
fmul st(5)
faddp st(1)
fld qword [esp + 0x78]
fmul st(4)
faddp st(1)
fld qword [esp + 0x68]
fmul st(7)
faddp st(1)
fld qword [esp + 0x88]
fmul st(2)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, edi
jle 0x1004a511
fstp st(3)
fstp st(1)
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x1004a924
mov edx, dword [esp + 0x38]
fstp st(3)
cmp eax, 4
jne 0x1004a7b5
cmp dword [esp + 0x1c], edx
jl 0x1004a736
mov eax, dword [ebp + 0x14]
cmp dword [esp + 0x30], eax
jl 0x1004a736
xor esi, esi
fstp st(2)
test edi, edi
js 0x1004ac1a
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ecx]
lea edx, [eax*4]
mov eax, dword [esp + 0x3c]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x10]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x50]
sub ecx, ebx
sub edx, dword [esp + 0x3c]
lea edi, [ebx + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jmp 0x1004a62a
mov eax, dword [esp + 0x10]
fxch st(2)
mov edx, dword [esp + 0x34]
fxch st(4)
mov ecx, dword [esp + 0x2c]
fxch st(2)
fld qword [eax - 8]
fld qword [eax]
mov eax, dword [esp + 0x14]
fild dword [eax]
mov eax, dword [esp + 0x28]
fstp qword [eax + esi*8]
mov eax, dword [esp + 0xc]
fild dword [eax + edx]
fstp qword [edi + ecx]
fld st(5)
fmul st(4)
fxch st(7)
fmul st(3)
faddp st(7)
fld qword [esp + 0x78]
fmul st(5)
faddp st(7)
fld qword [esp + 0x68]
fmul st(2)
faddp st(7)
fxch st(6)
fadd qword [edi - 8]
fxch st(5)
fmul st(2)
fld st(3)
fmul st(5)
faddp st(1)
fld qword [esp + 0x78]
fmul st(2)
faddp st(1)
fld qword [esp + 0x68]
fmul st(7)
faddp st(1)
fadd qword [edi]
fld qword [0x1007e228]
fcomp st(6)
fnstsw ax
test ah, 5
jp 0x1004a69a
fstp st(5)
fld qword [0x1007e228]
jmp 0x1004a6b5
fld qword [0x1007e220]
fcomp st(6)
fnstsw ax
test ah, 0x41
jne 0x1004a6b3
fstp st(5)
fld qword [0x1007e220]
jmp 0x1004a6b5
fxch st(5)
call fcn.1007d380
fld qword [0x1007e228]
mov ecx, dword [esp + 0x18]
fcom st(5)
mov dword [ecx], eax
fnstsw ax
test ah, 5
jp 0x1004a6d3
fstp st(5)
jmp 0x1004a6ea
fstp st(0)
fld qword [0x1007e220]
fcom st(5)
fnstsw ax
test ah, 0x41
jne 0x1004a6e8
fstp st(5)
jmp 0x1004a6ea
fstp st(0)
fxch st(4)
call fcn.1007d380
fldz
mov ecx, dword [esp + 0xc]
add dword [esp + 0x10], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0xc], ecx
cmp esi, dword [esp + 0x20]
jle 0x1004a618
mov edi, dword [esp + 0x20]
fstp st(2)
fstp st(2)
fstp st(2)
fstp st(1)
jmp 0x1004a924
xor esi, esi
test edi, edi
js 0x1004ac18
mov eax, dword [esp + 0x10]
jmp 0x1004a74c
fxch st(3)
fxch st(5)
fxch st(4)
fxch st(4)
add esi, 2
fst qword [esp + 0x70]
add eax, 0x10
fld qword [eax - 0x18]
fld qword [eax - 0x10]
fxch st(2)
fmul st(6)
fxch st(7)
fmul st(3)
faddp st(7)
fld st(3)
fmul st(5)
faddp st(7)
fld qword [esp + 0x68]
fmul st(1)
faddp st(7)
fxch st(6)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fld qword [esp + 0x70]
fmul st(2)
fld st(5)
fmul st(5)
faddp st(1)
fld st(3)
fmul st(7)
faddp st(1)
fld qword [esp + 0x68]
fmul st(2)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, edi
jle 0x1004a746
fstp st(2)
fstp st(2)
fstp st(3)
fstp st(2)
fstp st(1)
jmp 0x1004a924
fstp st(3)
cmp eax, 3
jne 0x1004aa7e
cmp dword [esp + 0x1c], edx
jl 0x1004aa1e
mov eax, dword [ebp + 0x14]
cmp dword [esp + 0x30], eax
jl 0x1004aa1e
xor esi, esi
fstp st(1)
test edi, edi
js 0x1004ac29
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ecx]
lea edx, [eax*4]
mov eax, dword [esp + 0x3c]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x50]
sub ecx, ebx
sub edx, dword [esp + 0x3c]
lea edi, [ebx + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jmp 0x1004a835
mov eax, dword [esp + 0x10]
fxch st(2)
mov edx, dword [esp + 0x34]
fxch st(3)
mov ecx, dword [esp + 0x2c]
fxch st(2)
fld qword [eax - 8]
fld qword [eax]
mov eax, dword [esp + 0x14]
fild dword [eax]
mov eax, dword [esp + 0x28]
fstp qword [eax + esi*8]
mov eax, dword [esp + 0xc]
fild dword [edx + eax]
fstp qword [ecx + edi]
fld st(4)
fmul st(4)
fxch st(6)
fmul st(3)
faddp st(6)
fld qword [esp + 0x78]
fld st(0)
fmul st(3)
faddp st(7)
fxch st(6)
fadd qword [edi - 8]
fxch st(5)
fmul st(3)
fld st(4)
fmul st(3)
faddp st(1)
fxch st(6)
fmul st(1)
faddp st(6)
fxch st(5)
fadd qword [edi]
fld qword [0x1007e228]
fcom st(5)
fnstsw ax
test ah, 5
jp 0x1004a891
fstp st(5)
jmp 0x1004a8a8
fstp st(0)
fld qword [0x1007e220]
fcom st(5)
fnstsw ax
test ah, 0x41
jne 0x1004a8a6
fstp st(5)
jmp 0x1004a8a8
fstp st(0)
fxch st(4)
call fcn.1007d380
fld qword [0x1007e228]
mov ecx, dword [esp + 0x18]
fcom st(4)
mov dword [ecx], eax
fnstsw ax
test ah, 5
jp 0x1004a8c8
fstp st(4)
jmp 0x1004a8df
fstp st(0)
fld qword [0x1007e220]
fcom st(4)
fnstsw ax
test ah, 0x41
jne 0x1004a8dd
fstp st(4)
jmp 0x1004a8df
fstp st(0)
fxch st(3)
call fcn.1007d380
fldz
mov ecx, dword [esp + 0xc]
add dword [esp + 0x10], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0xc], ecx
cmp esi, dword [esp + 0x20]
jle 0x1004a823
fstp st(2)
mov edi, dword [esp + 0x20]
fstp st(2)
fstp st(0)
mov edx, dword [ebp + 0x14]
fstp st(0)
cmp dword [esp + 0x30], edx
jl 0x10049c80
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esp + 0x44]
jl 0x10049c40
cmp esi, dword [esp + 0x48]
jge 0x1004ac7f
mov eax, dword [esp + 0x24]
lea ecx, [eax*4]
mov dword [esp + 0xc], ecx
nop
mov eax, dword [esp + 0x54]
fldz
xor ecx, ecx
mov dword [esp + 0x1c], ecx
cmp dword [esp + 0x44], ecx
jle 0x1004ac4b
mov edi, dword [ebp + 0x14]
mov edx, dword [esp + 0xa4]
mov ecx, dword [edx + ecx*4]
lea edx, [esi*8]
add ecx, edx
xor edx, edx
mov dword [esp + 0xc4], ecx
cmp edi, 4
jl 0x1004a9de
add edi, 0xfffffffc
shr edi, 2
add ecx, 0x10
inc edi
lea edx, [edi*4]
fld qword [eax + 8]
add eax, 0x20
fmul qword [ecx - 8]
add ecx, 0x20
dec edi
fld qword [ecx - 0x30]
fmul qword [eax - 0x20]
faddp st(2)
faddp st(1)
fld qword [eax - 0x10]
fmul qword [ecx - 0x20]
faddp st(1)
fld qword [eax - 8]
fmul qword [ecx - 0x18]
faddp st(1)
jne 0x1004a9ab
mov edi, dword [ebp + 0x14]
mov ecx, dword [esp + 0xc4]
cmp edx, edi
jge 0x1004a9f1
fld qword [ecx + edx*8]
inc edx
fmul qword [eax]
add eax, 8
faddp st(1)
cmp edx, edi
jl 0x1004a9e2
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, dword [esp + 0x44]
jl 0x1004a979
fld qword [0x1007e228]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x1004ac34
fstp st(1)
jmp 0x1004ac4b
xor esi, esi
test edi, edi
js 0x1004ac27
mov eax, dword [esp + 0x2c]
jmp 0x1004aa34
fxch st(3)
fxch st(4)
fxch st(3)
fld qword [eax - 8]
add esi, 2
fld qword [eax]
add eax, 0x10
fld st(5)
fmul st(5)
fxch st(7)
fmul st(3)
faddp st(7)
fld st(3)
fmul st(2)
faddp st(7)
fxch st(6)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fxch st(4)
fmul st(1)
fld st(3)
fmul st(5)
faddp st(1)
fld st(2)
fmul st(6)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, edi
jle 0x1004aa2e
fstp st(1)
fstp st(2)
jmp 0x1004a920
fstp st(1)
fstp st(2)
cmp dword [esp + 0x1c], edx
jl 0x1004abc5
mov eax, dword [ebp + 0x14]
cmp dword [esp + 0x30], eax
jl 0x1004abc5
xor esi, esi
test edi, edi
js 0x1004a920
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ecx]
lea edx, [eax*4]
mov eax, dword [esp + 0x3c]
lea ecx, [eax + ecx*4]
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x50]
sub ecx, ebx
sub edx, dword [esp + 0x3c]
lea edi, [ebx + 8]
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jmp 0x1004aaef
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
fld qword [eax - 8]
fld qword [eax]
mov eax, dword [esp + 0x14]
fild dword [eax]
mov eax, dword [esp + 0x28]
fstp qword [eax + esi*8]
mov eax, dword [esp + 0xc]
fild dword [eax + edx]
fstp qword [edi + ecx]
fld st(1)
fmul st(3)
fxch st(5)
fmul st(4)
faddp st(5)
fxch st(4)
fadd qword [edi - 8]
fxch st(1)
fmul st(3)
fld st(2)
fmul st(5)
faddp st(1)
fadd qword [edi]
fld qword [0x1007e228]
fcom st(2)
fnstsw ax
test ah, 5
jp 0x1004ab39
fstp st(2)
jmp 0x1004ab50
fstp st(0)
fld qword [0x1007e220]
fcom st(2)
fnstsw ax
test ah, 0x41
jne 0x1004ab4e
fstp st(2)
jmp 0x1004ab50
fstp st(0)
fxch st(1)
call fcn.1007d380
fld qword [0x1007e228]
mov ecx, dword [esp + 0x18]
fcom st(1)
mov dword [ecx], eax
fnstsw ax
test ah, 5
jp 0x1004ab70
fstp st(1)
jmp 0x1004ab87
fstp st(0)
fld qword [0x1007e220]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1004ab85
fstp st(1)
jmp 0x1004ab87
fstp st(0)
call fcn.1007d380
fldz
mov ecx, dword [esp + 0xc]
add dword [esp + 0x10], 0x10
mov dword [ecx], eax
fst qword [edi - 8]
mov eax, dword [esp + 0x4c]
fstp qword [edi]
add dword [esp + 0x14], eax
add dword [esp + 0x18], eax
add ecx, eax
add esi, 2
add edi, 0x10
mov dword [esp + 0xc], ecx
cmp esi, dword [esp + 0x20]
jle 0x1004aae3
jmp 0x1004a91c
xor esi, esi
test edi, edi
js 0x1004a920
mov eax, dword [esp + 0x34]
fld qword [eax - 8]
add esi, 2
fld qword [eax]
add eax, 0x10
fld st(1)
fmul st(3)
fxch st(5)
fmul st(4)
faddp st(5)
fxch st(4)
fadd qword [ebx + esi*8 - 0x10]
fstp qword [ebx + esi*8 - 0x10]
fmul st(2)
fld st(1)
fmul st(4)
faddp st(1)
fadd qword [ebx + esi*8 - 8]
fstp qword [ebx + esi*8 - 8]
cmp esi, edi
jle 0x1004abd3
jmp 0x1004a920
fstp st(5)
fstp st(3)
fstp st(1)
fstp st(0)
jmp 0x1004a922
fstp st(2)
fstp st(4)
fstp st(2)
fstp st(0)
fstp st(1)
jmp 0x1004a924
fstp st(1)
fstp st(3)
fstp st(1)
fstp st(1)
jmp 0x1004a924
fstp st(0)
fld qword [0x1007e220]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x1004ac49
fstp st(1)
jmp 0x1004ac4b
fstp st(0)
call fcn.1007d380
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x28]
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
fild dword [eax]
inc esi
fstp qword [edx + esi*8 - 8]
mov edx, dword [esp + 0xc]
add eax, edx
add ecx, edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
cmp esi, dword [esp + 0x48]
jl 0x1004a960
xor eax, eax
cmp dword [esp + 0x5c], 4
mov dword [esp + 0x1c], eax
jl 0x1004ad1f
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x48]
lea ecx, [edx + ecx*8]
mov edx, dword [esp + 0x14]
mov eax, edi
lea edi, [edi + edi*2]
lea edi, [edx + edi*4]
mov dword [esp + 0xc], edx
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x24]
lea edx, [edx + edi*8]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x14]
lea edx, [edx + edi*4]
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x5c]
add edx, 0xfffffffc
shr edx, 2
shl eax, 4
inc edx
lea edi, [edx*4]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0xc]
fild dword [edi]
mov edi, dword [esp + 0x10]
add dword [esp + 0xc], eax
add dword [esp + 0x10], eax
fstp qword [ecx]
add ecx, 0x20
fild dword [edi]
mov edi, dword [esp + 0x40]
add dword [esp + 0x40], eax
fstp qword [ecx - 0x18]
fild dword [edi]
mov edi, dword [esp + 0x38]
add dword [esp + 0x38], eax
dec edx
fstp qword [ecx - 0x10]
fild dword [edi]
fstp qword [ecx - 8]
jne 0x1004ace2
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x5c]
jge 0x1004ad5d
mov ecx, dword [esp + 0x48]
mov edi, dword [esp + 0x24]
lea edx, [eax + ecx]
imul eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
lea ecx, [ecx + edx*8]
mov edx, dword [esp + 0x14]
add edi, edi
lea edx, [edx + eax*4]
mov eax, dword [esp + 0x5c]
add edi, edi
sub eax, dword [esp + 0x1c]
nop
fild dword [edx]
add ecx, 8
add edx, edi
dec eax
fstp qword [ecx - 8]
jne 0x1004ad50
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0xf4]
add dword [esp + 0x50], eax
add dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x44]
inc ecx
inc eax
mov dword [esp + 0x58], ecx
cmp ecx, eax
jl 0x1004ad8d
mov dword [esp + 0x58], 0
mov eax, dword [esp + 0xac]
inc eax
mov dword [esp + 0xac], eax
cmp eax, dword [esp + 0xa0]
jl 0x10049bfe
mov eax, dword [esp + 0xa8]
inc eax
mov dword [esp + 0xa8], eax
cmp eax, dword [esp + 0x24]
jl 0x10049a40
mov eax, dword [esp + 0xbc]
lea edx, [esp + 0x978]
cmp eax, edx
je 0x1004addd
push eax
call sub.MSVCR100.dll_free
add esp, 4
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x178]
cmp eax, ecx
je 0x1004adf5
push eax
call sub.MSVCR100.dll_free
add esp, 4
mov ecx, dword [esp + 0x385c]
pop edi
pop esi
pop ebx
xor ecx, esp
xor eax, eax
call fcn.1007d356
mov esp, ebp
pop ebp
ret