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

Disassembly:
sub esp, 0x27c
mov eax, dword [0x500030]
xor eax, esp
mov dword [esp + 0x278], eax
push ebx
fld dword [esp + 0x28c]
push ebp
fadd qword [0x4fd830]
mov ebp, dword [esp + 0x28c]
push edi
mov edi, dword [esp + 0x28c]
mov eax, dword [edi]
mov ebx, dword [eax + 4]
imul ebx, ebp
add ebx, dword [eax + 0x18]
mov eax, dword [0x5042a4]
mov ecx, dword [eax]
mov eax, dword [ecx + 4]
imul eax, dword [0x5042a8]
add eax, dword [ecx + 0x18]
mov ecx, dword [ebx + 0x2c]
sub esp, 8
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], eax
fstp qword [esp]
mov dword [esp + 0x80], ecx
call sub.MSVCR90.dll_floor
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
call fcn.004dc850
fld dword [esp + 0x2a0]
fadd qword [0x4fd830]
mov dword [esp + 0x5c], eax
fstp qword [esp]
call sub.MSVCR90.dll_floor
fstp dword [esp + 0x14]
add esp, 8
fld dword [esp + 0xc]
call fcn.004dc850
mov ecx, dword [esp + 0x2b4]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x2b0]
lea edx, [esp + 0x84]
mov dword [esp + 0x6c], edx
cmp eax, 0x100
jne 0x499514
test ecx, ecx
jne 0x499497
fld dword [esp + 0x2ac]
sub esp, 0x1c
fstp dword [esp + 0x18]
fld dword [esp + 0x2c4]
fstp dword [esp + 0x14]
fld dword [esp + 0x2c0]
fstp dword [esp + 0x10]
fld dword [esp + 0x2bc]
fstp dword [esp + 0xc]
fld dword [esp + 0x2b8]
fstp dword [esp + 8]
fld dword [esp + 0x2b4]
fstp dword [esp + 4]
fld dword [esp + 0x2b0]
fstp dword [esp]
push ebp
push edi
call fcn.00483ed0
add esp, 0x24
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x278]
xor ecx, esp
call fcn.004dc814
add esp, 0x27c
ret
cmp ecx, 0x100
jne 0x499524
fld dword [esp + 0x2ac]
sub esp, 0x1c
fstp dword [esp + 0x18]
fld dword [esp + 0x2c4]
fstp dword [esp + 0x14]
fld dword [esp + 0x2c0]
fstp dword [esp + 0x10]
fld dword [esp + 0x2bc]
fstp dword [esp + 0xc]
fld dword [esp + 0x2b8]
fstp dword [esp + 8]
fld dword [esp + 0x2b4]
fstp dword [esp + 4]
fld dword [esp + 0x2b0]
fstp dword [esp]
push ebp
push edi
call fcn.00497100
add esp, 0x24
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x278]
xor ecx, esp
call fcn.004dc814
add esp, 0x27c
ret
test eax, eax
jne 0x499524
cmp ecx, 0x100
je 0x49aa33
fld dword [esp + 0x2a0]
push esi
fld st(0)
fld qword [0x4fd848]
fmul st(1), st(0)
fxch st(1)
call fcn.004dc850
fld qword [0x4fd878]
mov esi, eax
mov dword [esp + 0x6c], eax
test esi, esi
jge 0x499563
fld dword [esp + 0x2a0]
neg esi
fadd st(1)
mov dword [esp + 0x6c], esi
fstp dword [esp + 0x2a0]
fld dword [esp + 0x2a8]
fld st(0)
fmulp st(3)
fxch st(2)
call fcn.004dc850
mov dword [esp + 0x68], eax
test eax, eax
jge 0x499593
fadd dword [esp + 0x2a0]
neg eax
mov dword [esp + 0x68], eax
fstp dword [esp + 0x2a0]
jmp 0x499595
fstp st(0)
test esi, esi
je 0x49aa2e
test eax, eax
je 0x49aa2e
fldz
fld dword [esp + 0x2a0]
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x4995e9
fld qword [0x4fd870]
fdivr st(1)
call fcn.004dc850
imul eax, eax, 0xfffffe98
mov ecx, 0x168
sub ecx, eax
mov dword [esp + 0x10], ecx
fiadd dword [esp + 0x10]
fstp dword [esp + 0x2a0]
fld dword [esp + 0x2a0]
fmul qword [0x4fd9a0]
call fcn.004dc850
cdq
mov ecx, 0xb40
idiv ecx
mov esi, edx
test esi, esi
jne 0x49963b
fmul dword [esp + 0x2b0]
mov edx, dword [esp + 0x2b8]
mov eax, dword [esp + 0x2b4]
push edx
fstp dword [esp + 0x14]
push eax
fld dword [esp + 0x18]
sub esp, 0x10
fstp dword [esp + 0xc]
fchs
fmul dword [esp + 0x2c4]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
jmp 0x49967a
cmp esi, 0x5a0
jne 0x4996a2
mov ecx, dword [esp + 0x2b8]
fchs
fmul dword [esp + 0x2b0]
mov edx, dword [esp + 0x2b4]
push ecx
push edx
fstp dword [esp + 0x18]
sub esp, 0x10
fld dword [esp + 0x28]
fstp dword [esp + 0xc]
fmul dword [esp + 0x2c4]
fstp dword [esp + 0x28]
fld dword [esp + 0x28]
fstp dword [esp + 8]
fld dword [esp + 0x2b4]
fstp dword [esp + 4]
fld dword [esp + 0x2b0]
fstp dword [esp]
push ebp
push edi
call fcn.00465d60
add esp, 0x20
jmp 0x49aa32
mov eax, dword [ebx + 8]
mov ecx, dword [ebx + 0xc]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ecx
lea eax, [esi + 0x2d0]
cdq
mov ecx, 0xb40
idiv ecx
mov ecx, dword [0x50423c]
mov eax, 0xb60b60b7
mov edi, dword [ebx]
mov ebp, dword [ebx + 4]
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebp
mov edx, dword [ecx + edx*4]
mov dword [esp + 0x10], edx
imul esi
fild dword [esp + 0x10]
fstp dword [esp + 0x74]
fld dword [esp + 0x74]
fld qword [0x4fd998]
fmul st(1), st(0)
fxch st(1)
add edx, esi
sar edx, 0xb
fstp dword [esp + 0x20]
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0xb40
mov edx, esi
sub edx, eax
mov eax, dword [ecx + edx*4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x10]
shl eax, 0x10
cdq
fild dword [esp + 0x4c]
idiv dword [esp + 0x6c]
fstp dword [esp + 0x54]
fmul dword [esp + 0x54]
fstp dword [esp + 0x30]
mov dword [esp + 0x10], eax
fild dword [esp + 0x10]
fld dword [esp + 0x2ac]
fld st(0)
fdivp st(2)
fxch st(1)
call fcn.004dc850
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x4c]
shl eax, 0x10
cdq
idiv dword [esp + 0x68]
mov dword [esp + 0x10], eax
fidivr dword [esp + 0x10]
call fcn.004dc850
cmp esi, 0x2d0
mov dword [esp + 0x3c], eax
jge 0x4997f0
mov eax, dword [esp + 0x1c]
mov ecx, eax
neg ecx
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, ecx
neg edx
fstp dword [esp + 0x18]
mov dword [esp + 0x10], edx
fld dword [esp + 0x18]
sub edi, eax
fst dword [esp + 0x44]
dec edi
fild dword [esp + 0x10]
mov dword [esp + 0x10], edi
sub ebp, ecx
dec ebp
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x48]
fild dword [esp + 0x10]
mov dword [esp + 0x10], ebp
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x40]
fstp dword [esp + 0x28]
fstp dword [esp + 0x34]
fild dword [esp + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x18]
fstp dword [esp + 0x10]
fstp dword [esp + 0x4c]
jmp 0x499964
cmp esi, 0x5a0
jge 0x499863
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
sub edi, eax
dec edi
mov dword [esp + 0x10], edi
fild dword [esp + 0x10]
mov edx, ecx
neg edx
mov dword [esp + 0x10], edx
fstp dword [esp + 0x18]
sub ebp, ecx
fld dword [esp + 0x18]
dec ebp
fst dword [esp + 0x44]
neg eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ebp
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x48]
fxch st(1)
fstp dword [esp + 0x40]
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x34]
fild dword [esp + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
jmp 0x499954
cmp esi, 0x870
jge 0x4998e2
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
sub edi, eax
dec edi
mov dword [esp + 0x10], edi
fild dword [esp + 0x10]
sub ebp, ecx
dec ebp
mov dword [esp + 0x10], ebp
fstp dword [esp + 0x18]
neg eax
fld dword [esp + 0x18]
neg ecx
fst dword [esp + 0x44]
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x48]
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x40]
fstp dword [esp + 0x28]
fstp dword [esp + 0x34]
fild dword [esp + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x18]
fstp dword [esp + 0x10]
fstp dword [esp + 0x4c]
jmp 0x499964
cmp esi, 0xb40
jge 0x49aa2e
mov eax, dword [esp + 0x1c]
mov ecx, eax
neg ecx
mov dword [esp + 0x10], ecx
fild dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
sub ebp, ecx
dec ebp
fstp dword [esp + 0x18]
mov dword [esp + 0x10], ebp
fld dword [esp + 0x18]
neg ecx
fst dword [esp + 0x44]
sub edi, eax
fild dword [esp + 0x10]
mov dword [esp + 0x10], ecx
dec edi
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x48]
fxch st(1)
fstp dword [esp + 0x40]
fild dword [esp + 0x10]
mov dword [esp + 0x10], edi
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x34]
fild dword [esp + 0x10]
fstp dword [esp + 0x18]
fld dword [esp + 0x18]
fst dword [esp + 0x28]
fstp dword [esp + 0x4c]
fstp dword [esp + 0x18]
fstp dword [esp + 0x10]
fld dword [esp + 0x44]
push ecx
fmul st(2)
fstp dword [esp + 0x48]
fld dword [esp + 0x4c]
fmul st(1)
fstp dword [esp + 0x4c]
fld dword [esp + 0x44]
fmul st(2)
fstp dword [esp + 0x44]
fld dword [esp + 0x38]
fmul st(1)
fstp dword [esp + 0x38]
fld dword [esp + 0x2c]
fmulp st(2)
fxch st(1)
fstp dword [esp + 0x2c]
fmul dword [esp + 0x1c]
fstp dword [esp + 0x1c]
fld dword [esp + 0x4c]
fmul dword [esp + 0x24]
fld dword [esp + 0x48]
fmul dword [esp + 0x34]
fsubp st(1)
fmul dword [esp + 0x2b4]
fstp dword [esp + 0x68]
fld dword [esp + 0x68]
fstp dword [esp]
call fcn.00461890
fld dword [esp + 0x1c]
mov edi, eax
fmul dword [esp + 0x24]
mov dword [esp + 0x7c], edi
fld dword [esp + 0x2c]
fmul dword [esp + 0x34]
fsubp st(1)
fmul dword [esp + 0x2b4]
fstp dword [esp + 0x68]
fld dword [esp + 0x68]
fstp dword [esp]
call fcn.00461890
fld dword [esp + 0x38]
mov ebp, eax
fmul dword [esp + 0x24]
mov dword [esp + 0x68], ebp
fld dword [esp + 0x44]
fmul dword [esp + 0x34]
fsubp st(1)
fmul dword [esp + 0x2b4]
fstp dword [esp + 0x54]
fld dword [esp + 0x54]
fstp dword [esp]
call fcn.00461890
fld dword [esp + 0x14]
mov esi, eax
fmul dword [esp + 0x2ac]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul dword [esp + 0x24]
fld dword [esp + 0x50]
fmul dword [esp + 0x2a8]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fmul dword [esp + 0x34]
fsubp st(1)
fmul dword [esp + 0x2b4]
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [esp]
call fcn.00461890
mov dword [esp + 0x54], eax
mov eax, esi
add esp, 4
sub eax, edi
mov dword [esp + 0x10], eax
je 0x499b30
mov eax, esi
sub eax, ebp
mov dword [esp + 0x4c], eax
je 0x499b30
fld dword [esp + 0x34]
fld dword [esp + 0x30]
fld st(0)
fmulp st(2)
fld dword [esp + 0x40]
fld dword [esp + 0x20]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld dword [esp + 0x48]
fmul st(2)
fld dword [esp + 0x44]
fmul st(4)
faddp st(1)
fsubr st(1)
fld qword [0x4fd990]
fmul st(1), st(0)
fld dword [esp + 0x2ac]
fld st(0)
fmulp st(3)
fild dword [esp + 0x10]
fdivp st(3)
fxch st(2)
call fcn.004dc850
mov edi, eax
mov dword [esp + 0x34], eax
test edi, edi
jge 0x499af0
neg edi
mov dword [esp + 0x34], edi
fld dword [esp + 0x18]
fmulp st(4)
fld dword [esp + 0x28]
fmulp st(5)
fxch st(3)
faddp st(4)
fxch st(3)
fsub st(1)
fmul st(2)
fmul st(3)
fidiv dword [esp + 0x4c]
call fcn.004dc850
mov ebp, eax
mov dword [esp + 0x40], eax
test ebp, ebp
jge 0x499b21
neg ebp
mov dword [esp + 0x40], ebp
fmulp st(1)
fmulp st(1)
call fcn.004dc850
mov dword [esp + 0x24], eax
jmp 0x499b91
fld dword [esp + 0x48]
xor ebp, ebp
fld dword [esp + 0x30]
xor edi, edi
fld st(0)
mov dword [esp + 0x40], ebp
fmulp st(2)
mov dword [esp + 0x34], edi
fld dword [esp + 0x44]
fld dword [esp + 0x20]
fld st(0)
fmulp st(2)
fxch st(3)
faddp st(1)
fld qword [0x4fd990]
fmul st(1), st(0)
fld dword [esp + 0x2ac]
fld st(0)
fmulp st(3)
fxch st(2)
call fcn.004dc850
fld dword [esp + 0x18]
fmulp st(3)
mov dword [esp + 0x24], eax
fld dword [esp + 0x28]
fmulp st(4)
fxch st(2)
faddp st(3)
fxch st(2)
fmulp st(1)
fmulp st(1)
call fcn.004dc850
mov dword [esp + 0x20], eax
mov eax, dword [0x504210]
sub eax, dword [esp + 0x2c]
cmp esi, eax
jge 0x499bcb
mov ecx, dword [esp + 0x20]
cmp esi, dword [esp + 0x78]
jge 0x499bb2
sub dword [esp + 0x24], edi
jmp 0x499bb6
add dword [esp + 0x24], ebp
cmp esi, dword [esp + 0x64]
jge 0x499bc0
add ecx, ebp
jmp 0x499bc2
sub ecx, edi
inc esi
cmp esi, eax
jl 0x499ba6
mov dword [esp + 0x20], ecx
mov eax, dword [0x504214]
sub eax, dword [esp + 0x2c]
cmp dword [esp + 0x50], eax
jl 0x499bdf
dec eax
mov dword [esp + 0x50], eax
mov edx, dword [esp + 0x294]
mov ebp, dword [esp + 0x84]
push edx
mov eax, ebp
call fcn.00465970
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
je 0x49aa32
mov eax, dword [0x5042a8]
push eax
mov eax, dword [0x5042a4]
call fcn.00465970
mov dword [esp + 0x50], eax
mov eax, dword [ebx + 0x30]
add esp, 4
mov ecx, ebp
call fcn.00465950
mov ecx, dword [esp + 0x2b4]
add eax, 0x10
cmp ecx, 0x100
jne 0x499c40
mov dword [esp + 0x70], eax
jmp 0x499d05
test ecx, ecx
jne 0x499c61
mov ecx, dword [ebx + 0x14]
add ecx, ecx
push ecx
lea edx, [esp + 0x8c]
push 0
push edx
call sub.MSVCR90.dll_memset
add esp, 0xc
jmp 0x499d05
mov ebx, dword [ebx + 0x14]
cmp ecx, 0x80
jne 0x499c9e
mov ecx, 1
cmp ebx, ecx
jle 0x499d05
lea esp, [esp]
mov dx, word [eax + ecx*2]
shr dx, 1
mov edi, 0x7bef
and dx, di
mov word [esp + ecx*2 + 0x88], dx
inc ecx
cmp ecx, ebx
jl 0x499c80
jmp 0x499d05
mov edx, 1
cmp ebx, edx
jle 0x499d05
mov ebp, ecx
lea esp, [esp]
movzx ecx, word [eax + edx*2]
mov edi, ecx
and edi, 0x7e0
imul edi, ebp
mov ebp, ecx
and ebp, 0x1f
imul ebp, dword [esp + 0x2b4]
shr edi, 8
shr ebp, 8
and edi, 0x7e0
and ebp, 0x1f
or edi, ebp
mov ebp, dword [esp + 0x2b4]
and ecx, 0xf800
imul ecx, ebp
shr ecx, 8
and ecx, 0xf800
or edi, ecx
mov word [esp + edx*2 + 0x88], di
inc edx
cmp edx, ebx
jl 0x499cb0
mov ecx, dword [esp + 0x2b8]
test ecx, ecx
jne 0x499f4c
cmp esi, dword [esp + 0x50]
mov dword [esp + 0x30], esi
jg 0x49aa32
fild dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
shl eax, 0x10
fstp dword [esp + 0x28]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x2c]
fild dword [esp + 0x68]
add eax, esi
shl ebx, 0x10
fstp dword [esp + 0x44]
add eax, eax
fld qword [0x4fd988]
add eax, eax
fld dword [esp + 0x28]
mov dword [esp + 0x18], ebx
fld dword [esp + 0x74]
mov dword [esp + 0x2c], eax
fld dword [esp + 0x54]
jmp 0x499d6e
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov eax, dword [0x50420c]
mov ecx, dword [0x504208]
sar esi, 0x10
mov edx, ebp
sub edx, esi
sar edi, 0x10
cmp edx, eax
mov dword [esp + 0x14], esi
jl 0x499da0
mov esi, ebp
sub esi, eax
inc esi
mov dword [esp + 0x14], esi
mov eax, ebp
sub eax, edi
cmp eax, ecx
jge 0x499dac
mov edi, ebp
sub edi, ecx
fild dword [esp + 0x14]
fdiv dword [esp + 0x2ac]
fild dword [esp + 0x30]
fdiv dword [esp + 0x2b0]
fld st(3)
fmul st(2)
fld st(3)
fmul st(2)
fsubp st(1)
fmul st(6)
fdiv st(5)
call fcn.004dc850
fmul st(3)
fld st(2)
sub ebx, eax
fmulp st(2)
faddp st(1)
fmul st(4)
fdiv dword [esp + 0x44]
call fcn.004dc850
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x80]
sub edx, eax
mov eax, dword [ecx + 0x2c]
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + eax]
sub ebp, esi
lea eax, [eax + ebp*2]
add eax, dword [esp + 0x4c]
mov ebp, dword [esp + 0x3c]
mov ecx, edi
sub ecx, esi
mov dword [esp + 0x14], eax
lea eax, [ecx + 1]
mov ecx, eax
imul eax, ebp
imul ecx, dword [esp + 0x38]
add eax, edx
add ecx, ebx
cmp edi, esi
mov dword [esp + 0x1c], eax
jl 0x499eac
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
jge 0x499e56
mov eax, ecx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x499e56
cmp dword [esp + 0x28], 0
jl 0x499e56
test eax, eax
jge 0x499e6f
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
sub eax, ebp
dec edi
cmp edi, esi
mov dword [esp + 0x1c], eax
jge 0x499e33
jmp 0x499eac
cmp esi, edi
mov ebp, dword [esp + 0x3c]
jg 0x499eac
mov eax, edx
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x54], eax
jge 0x499e9c
mov eax, ebx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x499e9c
cmp dword [esp + 0x54], 0
jl 0x499e9c
test eax, eax
jge 0x499eac
add ebx, dword [esp + 0x38]
sub dword [esp + 0x14], 2
inc esi
add edx, ebp
cmp esi, edi
jle 0x499e77
sub edi, esi
inc edi
test edi, edi
jle 0x499ef9
mov ecx, dword [esp + 0x7c]
mov eax, edx
sar eax, 0x10
mov eax, dword [ecx + eax*4]
mov esi, ebx
sar esi, 0x10
add eax, esi
mov esi, dword [esp + 0x10]
movzx ax, byte [eax + esi]
movzx eax, ax
test ax, ax
je 0x499ee9
mov esi, dword [esp + 0x70]
movzx eax, ax
mov ax, word [esi + eax*2]
mov esi, dword [esp + 0x14]
mov word [esi], ax
add ebx, dword [esp + 0x38]
sub dword [esp + 0x14], 2
add edx, ebp
sub edi, 1
jne 0x499eb7
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x78]
jge 0x499f0d
mov ecx, dword [esp + 0x34]
sub dword [esp + 0x24], ecx
jmp 0x499f15
mov edx, dword [esp + 0x40]
add dword [esp + 0x24], edx
cmp eax, dword [esp + 0x64]
jge 0x499f25
mov ecx, dword [esp + 0x40]
add dword [esp + 0x20], ecx
jmp 0x499f2d
mov edx, dword [esp + 0x34]
sub dword [esp + 0x20], edx
add dword [esp + 0x2c], 4
inc eax
cmp eax, dword [esp + 0x50]
mov dword [esp + 0x30], eax
jle 0x499d6a
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x49aa30
mov eax, dword [esp + 0x2b4]
add eax, ecx
cmp eax, 0x100
jg 0x49a4b9
cmp ecx, 0x80
jne 0x49a1f7
cmp esi, dword [esp + 0x50]
mov dword [esp + 0x30], esi
jg 0x49aa32
fild dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
fstp dword [esp + 0x28]
shl eax, 0x10
fild dword [esp + 0x68]
mov dword [esp + 0x48], eax
lea eax, [esi + ecx]
shl ebx, 0x10
fstp dword [esp + 0x44]
add eax, eax
fld qword [0x4fd988]
add eax, eax
fld dword [esp + 0x28]
mov dword [esp + 0x18], ebx
fld dword [esp + 0x74]
mov dword [esp + 0x2c], eax
fld dword [esp + 0x54]
jmp 0x499fc7
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov eax, dword [0x50420c]
mov ecx, dword [0x504208]
sar esi, 0x10
mov edx, ebp
sub edx, esi
sar edi, 0x10
cmp edx, eax
mov dword [esp + 0x14], esi
jl 0x499ff9
mov esi, ebp
sub esi, eax
inc esi
mov dword [esp + 0x14], esi
mov eax, ebp
sub eax, edi
cmp eax, ecx
jge 0x49a005
mov edi, ebp
sub edi, ecx
fild dword [esp + 0x14]
fdiv dword [esp + 0x2ac]
fild dword [esp + 0x30]
fdiv dword [esp + 0x2b0]
fld st(3)
fmul st(2)
fld st(3)
fmul st(2)
fsubp st(1)
fmul st(6)
fdiv st(5)
call fcn.004dc850
fmul st(3)
fld st(2)
sub ebx, eax
fmulp st(2)
faddp st(1)
fmul st(4)
fdiv dword [esp + 0x44]
call fcn.004dc850
mov ecx, dword [esp + 0x48]
sub ecx, eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0x2c]
mov ecx, dword [eax + edx]
mov eax, edi
sub eax, esi
sub ebp, esi
lea edx, [ecx + ebp*2]
mov ebp, dword [esp + 0x14]
add edx, dword [esp + 0x4c]
inc eax
mov ecx, eax
imul eax, dword [esp + 0x3c]
imul ecx, dword [esp + 0x38]
add eax, ebp
add ecx, ebx
cmp edi, esi
mov dword [esp + 0x1c], eax
jl 0x49a10b
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
jge 0x49a0af
mov eax, ecx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a0af
cmp dword [esp + 0x28], 0
jl 0x49a0af
test eax, eax
jge 0x49a0ca
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
dec edi
cmp edi, esi
mov dword [esp + 0x1c], eax
jge 0x49a08c
mov ebp, dword [esp + 0x14]
jmp 0x49a10b
cmp esi, edi
mov ebp, dword [esp + 0x14]
jg 0x49a10b
mov eax, ebp
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x54], eax
jge 0x49a0f7
mov eax, ebx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a0f7
cmp dword [esp + 0x54], 0
jl 0x49a0f7
test eax, eax
jge 0x49a107
add ebx, dword [esp + 0x38]
add ebp, dword [esp + 0x3c]
inc esi
sub edx, 2
cmp esi, edi
jle 0x49a0d2
mov dword [esp + 0x14], ebp
sub edi, esi
inc edi
test edi, edi
jle 0x49a1a4
mov dword [esp + 0x1c], edi
mov esi, dword [esp + 0x7c]
mov ecx, ebp
sar ecx, 0x10
mov ecx, dword [esi + ecx*4]
mov eax, ebx
sar eax, 0x10
add ecx, eax
mov eax, dword [esp + 0x10]
movzx cx, byte [ecx + eax]
movzx eax, cx
test ax, ax
je 0x49a18a
mov ecx, dword [esp + 0x70]
movzx eax, ax
movzx ecx, word [ecx + eax*2]
movzx eax, word [edx]
shr eax, 1
and eax, 0x7bef
mov esi, eax
mov edi, ecx
and edi, 0xf800
and esi, 0xf800
add esi, edi
mov edi, eax
mov ebp, ecx
and ebp, 0x7e0
and edi, 0x7e0
add edi, ebp
mov ebp, dword [esp + 0x14]
and eax, 0x1f
and ecx, 0x1f
or esi, edi
add eax, ecx
or esi, eax
mov word [edx], si
add ebp, dword [esp + 0x3c]
add ebx, dword [esp + 0x38]
sub edx, 2
sub dword [esp + 0x1c], 1
mov dword [esp + 0x14], ebp
jne 0x49a11a
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x78]
jge 0x49a1b8
mov edx, dword [esp + 0x34]
sub dword [esp + 0x24], edx
jmp 0x49a1c0
mov ecx, dword [esp + 0x40]
add dword [esp + 0x24], ecx
cmp eax, dword [esp + 0x64]
jge 0x49a1d0
mov edx, dword [esp + 0x40]
add dword [esp + 0x20], edx
jmp 0x49a1d8
mov ecx, dword [esp + 0x34]
sub dword [esp + 0x20], ecx
add dword [esp + 0x2c], 4
inc eax
cmp eax, dword [esp + 0x50]
mov dword [esp + 0x30], eax
jle 0x499fc3
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x49aa30
cmp eax, 0x100
jg 0x49a4b9
cmp esi, dword [esp + 0x50]
mov dword [esp + 0x30], esi
jg 0x49aa32
fild dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
fstp dword [esp + 0x28]
shl eax, 0x10
fild dword [esp + 0x68]
mov dword [esp + 0x48], eax
lea eax, [esi + edx]
shl ebx, 0x10
fstp dword [esp + 0x44]
add eax, eax
fld qword [0x4fd988]
add eax, eax
fld dword [esp + 0x28]
mov dword [esp + 0x18], ebx
fld dword [esp + 0x74]
mov dword [esp + 0x2c], eax
fld dword [esp + 0x54]
jmp 0x49a25d
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov eax, dword [0x50420c]
mov ecx, dword [0x504208]
sar esi, 0x10
mov edx, ebp
sub edx, esi
sar edi, 0x10
cmp edx, eax
mov dword [esp + 0x14], esi
jl 0x49a28f
mov esi, ebp
sub esi, eax
inc esi
mov dword [esp + 0x14], esi
mov eax, ebp
sub eax, edi
cmp eax, ecx
jge 0x49a29b
mov edi, ebp
sub edi, ecx
fild dword [esp + 0x14]
fdiv dword [esp + 0x2ac]
fild dword [esp + 0x30]
fdiv dword [esp + 0x2b0]
fld st(3)
fmul st(2)
fld st(3)
fmul st(2)
fsubp st(1)
fmul st(6)
fdiv st(5)
call fcn.004dc850
fmul st(3)
fld st(2)
sub ebx, eax
fmulp st(2)
faddp st(1)
fmul st(4)
fdiv dword [esp + 0x44]
call fcn.004dc850
mov ecx, dword [esp + 0x48]
sub ecx, eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0x2c]
mov ecx, dword [eax + edx]
mov eax, edi
sub eax, esi
sub ebp, esi
lea edx, [ecx + ebp*2]
mov ebp, dword [esp + 0x14]
add edx, dword [esp + 0x4c]
inc eax
mov ecx, eax
imul eax, dword [esp + 0x3c]
imul ecx, dword [esp + 0x38]
add eax, ebp
add ecx, ebx
cmp edi, esi
mov dword [esp + 0x1c], eax
jl 0x49a3a1
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
jge 0x49a345
mov eax, ecx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a345
cmp dword [esp + 0x28], 0
jl 0x49a345
test eax, eax
jge 0x49a360
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
dec edi
cmp edi, esi
mov dword [esp + 0x1c], eax
jge 0x49a322
mov ebp, dword [esp + 0x14]
jmp 0x49a3a1
cmp esi, edi
mov ebp, dword [esp + 0x14]
jg 0x49a3a1
mov eax, ebp
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x54], eax
jge 0x49a38d
mov eax, ebx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a38d
cmp dword [esp + 0x54], 0
jl 0x49a38d
test eax, eax
jge 0x49a39d
add ebx, dword [esp + 0x38]
add ebp, dword [esp + 0x3c]
inc esi
sub edx, 2
cmp esi, edi
jle 0x49a368
mov dword [esp + 0x14], ebp
sub edi, esi
inc edi
test edi, edi
jle 0x49a466
mov esi, dword [esp + 0x2b8]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x7c]
mov ecx, ebp
sar ecx, 0x10
mov ecx, dword [edi + ecx*4]
mov eax, ebx
sar eax, 0x10
add ecx, eax
mov eax, dword [esp + 0x10]
movzx cx, byte [ecx + eax]
movzx eax, cx
test ax, ax
je 0x49a44c
mov ecx, dword [esp + 0x70]
movzx eax, ax
movzx ecx, word [ecx + eax*2]
movzx eax, word [edx]
mov edi, eax
and edi, 0xf800
imul edi, esi
shr edi, 8
mov ebp, ecx
and ebp, 0xf800
and edi, 0xf800
add edi, ebp
mov ebp, eax
and ebp, 0x7e0
imul ebp, esi
shr ebp, 8
mov esi, ecx
and ebp, 0x7e0
and esi, 0x7e0
add ebp, esi
mov esi, dword [esp + 0x2b8]
and eax, 0x1f
imul eax, esi
shr eax, 8
and eax, 0x1f
and ecx, 0x1f
or edi, ebp
mov ebp, dword [esp + 0x14]
add eax, ecx
or edi, eax
mov word [edx], di
add ebp, dword [esp + 0x3c]
add ebx, dword [esp + 0x38]
sub edx, 2
sub dword [esp + 0x1c], 1
mov dword [esp + 0x14], ebp
jne 0x49a3b7
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x78]
jge 0x49a47a
mov edx, dword [esp + 0x34]
sub dword [esp + 0x24], edx
jmp 0x49a482
mov ecx, dword [esp + 0x40]
add dword [esp + 0x24], ecx
cmp eax, dword [esp + 0x64]
jge 0x49a492
mov edx, dword [esp + 0x40]
add dword [esp + 0x20], edx
jmp 0x49a49a
mov ecx, dword [esp + 0x34]
sub dword [esp + 0x20], ecx
add dword [esp + 0x2c], 4
inc eax
cmp eax, dword [esp + 0x50]
mov dword [esp + 0x30], eax
jle 0x49a259
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x49aa30
mov dword [esp + 0x30], esi
cmp ecx, 0x80
jne 0x49a769
cmp esi, dword [esp + 0x50]
jg 0x49aa32
fild dword [esp + 0x6c]
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x1c]
fstp dword [esp + 0x28]
shl eax, 0x10
fild dword [esp + 0x68]
mov dword [esp + 0x48], eax
lea eax, [esi + edx]
shl ebx, 0x10
fstp dword [esp + 0x44]
add eax, eax
fld qword [0x4fd988]
add eax, eax
fld dword [esp + 0x28]
mov dword [esp + 0x18], ebx
fld dword [esp + 0x74]
mov dword [esp + 0x2c], eax
fld dword [esp + 0x54]
jmp 0x49a520
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov eax, dword [0x50420c]
mov ecx, dword [0x504208]
sar esi, 0x10
mov edx, ebp
sub edx, esi
sar edi, 0x10
cmp edx, eax
mov dword [esp + 0x14], esi
jl 0x49a552
mov esi, ebp
sub esi, eax
inc esi
mov dword [esp + 0x14], esi
mov eax, ebp
sub eax, edi
cmp eax, ecx
jge 0x49a55e
mov edi, ebp
sub edi, ecx
fild dword [esp + 0x14]
fdiv dword [esp + 0x2ac]
fild dword [esp + 0x30]
fdiv dword [esp + 0x2b0]
fld st(3)
fmul st(2)
fld st(3)
fmul st(2)
fsubp st(1)
fmul st(6)
fdiv st(5)
call fcn.004dc850
fmul st(3)
fld st(2)
sub ebx, eax
fmulp st(2)
faddp st(1)
fmul st(4)
fdiv dword [esp + 0x44]
call fcn.004dc850
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x80]
sub edx, eax
mov eax, dword [ecx + 0x2c]
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + eax]
sub ebp, esi
lea eax, [eax + ebp*2]
add eax, dword [esp + 0x4c]
mov ecx, edi
sub ecx, esi
mov dword [esp + 0x14], eax
lea eax, [ecx + 1]
mov ecx, eax
imul eax, dword [esp + 0x3c]
imul ecx, dword [esp + 0x38]
add eax, edx
add ecx, ebx
cmp edi, esi
mov dword [esp + 0x1c], eax
jl 0x49a653
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
jge 0x49a606
mov eax, ecx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a606
cmp dword [esp + 0x28], 0
jl 0x49a606
test eax, eax
jge 0x49a61d
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
dec edi
cmp edi, esi
mov dword [esp + 0x1c], eax
jge 0x49a5e3
jmp 0x49a653
cmp esi, edi
jg 0x49a653
mov ebp, dword [esp + 0x5c]
mov ecx, edx
sar ecx, 0x10
cmp ecx, ebp
jge 0x49a641
mov eax, ebx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a641
test ecx, ecx
jl 0x49a641
test eax, eax
jge 0x49a653
add ebx, dword [esp + 0x38]
add edx, dword [esp + 0x3c]
sub dword [esp + 0x14], 2
inc esi
cmp esi, edi
jle 0x49a625
sub edi, esi
inc edi
test edi, edi
jle 0x49a716
mov dword [esp + 0x1c], edi
mov esi, dword [esp + 0x7c]
mov eax, edx
sar eax, 0x10
mov eax, dword [esi + eax*4]
mov ecx, ebx
sar ecx, 0x10
add eax, ecx
mov ecx, dword [esp + 0x10]
movzx ax, byte [eax + ecx]
movzx eax, ax
test ax, ax
je 0x49a6fe
movzx ecx, ax
mov eax, dword [esp + 0x70]
movzx esi, word [eax + ecx*2]
mov ecx, dword [esp + 0x14]
movzx eax, word [ecx]
shr eax, 1
and eax, 0x7bef
mov ecx, eax
mov edi, esi
and ecx, 0xf800
and edi, 0xf800
add ecx, edi
cmp ecx, 0xf800
jbe 0x49a6c2
mov ecx, 0xf800
mov edi, eax
mov ebp, esi
and edi, 0x7e0
and ebp, 0x7e0
add edi, ebp
cmp edi, 0x7e0
jbe 0x49a6e1
mov edi, 0x7e0
and eax, 0x1f
and esi, 0x1f
add eax, esi
cmp eax, 0x1f
jbe 0x49a6f3
mov eax, 0x1f
or ecx, edi
or ecx, eax
mov eax, dword [esp + 0x14]
mov word [eax], cx
add ebx, dword [esp + 0x38]
add edx, dword [esp + 0x3c]
sub dword [esp + 0x14], 2
sub dword [esp + 0x1c], 1
jne 0x49a662
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x78]
jge 0x49a72a
mov ecx, dword [esp + 0x34]
sub dword [esp + 0x24], ecx
jmp 0x49a732
mov edx, dword [esp + 0x40]
add dword [esp + 0x24], edx
cmp eax, dword [esp + 0x64]
jge 0x49a742
mov ecx, dword [esp + 0x40]
add dword [esp + 0x20], ecx
jmp 0x49a74a
mov edx, dword [esp + 0x34]
sub dword [esp + 0x20], edx
add dword [esp + 0x2c], 4
inc eax
cmp eax, dword [esp + 0x50]
mov dword [esp + 0x30], eax
jle 0x49a51c
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x49aa30
cmp esi, dword [esp + 0x50]
jg 0x49aa32
mov eax, dword [esp + 0x1c]
fild dword [esp + 0x6c]
shl eax, 0x10
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x14]
fstp dword [esp + 0x28]
fild dword [esp + 0x68]
shl eax, 0x10
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x2c]
fstp dword [esp + 0x44]
add esi, eax
fld qword [0x4fd988]
add esi, esi
fld dword [esp + 0x28]
add esi, esi
fld dword [esp + 0x74]
mov dword [esp + 0x2c], esi
fld dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
mov ecx, dword [0x50420c]
mov edx, dword [0x504208]
sar esi, 0x10
mov ebx, eax
sub ebx, esi
sar edi, 0x10
cmp ebx, ecx
mov dword [esp + 0x14], esi
jl 0x49a7ec
mov esi, eax
sub esi, ecx
inc esi
mov dword [esp + 0x14], esi
mov ecx, eax
sub ecx, edi
cmp ecx, edx
jge 0x49a7f8
mov edi, eax
sub edi, edx
fild dword [esp + 0x14]
fdiv dword [esp + 0x2ac]
fild dword [esp + 0x30]
fdiv dword [esp + 0x2b0]
fld st(3)
fmul st(2)
fld st(3)
fmul st(2)
fsubp st(1)
fmul st(6)
fdiv st(5)
call fcn.004dc850
fmul st(3)
fld st(2)
mov ebx, dword [esp + 0x18]
fmulp st(2)
sub ebx, eax
faddp st(1)
fmul st(4)
fdiv dword [esp + 0x44]
call fcn.004dc850
mov ebp, dword [esp + 0x48]
mov edx, dword [esp + 0x58]
sub ebp, eax
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x2c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + ecx]
sub edx, esi
lea eax, [ecx + edx*2]
add eax, dword [esp + 0x4c]
mov edx, edi
mov dword [esp + 0x14], eax
sub edx, esi
lea eax, [edx + 1]
mov ecx, eax
imul eax, dword [esp + 0x3c]
imul ecx, dword [esp + 0x38]
add eax, ebp
add ecx, ebx
cmp edi, esi
mov dword [esp + 0x1c], eax
jl 0x49a8f5
sar eax, 0x10
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x28], eax
jge 0x49a8a8
mov eax, ecx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a8a8
cmp dword [esp + 0x28], 0
jl 0x49a8a8
test eax, eax
jge 0x49a8bf
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x3c]
sub ecx, dword [esp + 0x38]
dec edi
cmp edi, esi
mov dword [esp + 0x1c], eax
jge 0x49a885
jmp 0x49a8f5
cmp esi, edi
jg 0x49a8f5
mov edx, dword [esp + 0x5c]
mov ecx, ebp
sar ecx, 0x10
cmp ecx, edx
jge 0x49a8e3
mov eax, ebx
sar eax, 0x10
cmp eax, dword [esp + 0x60]
jge 0x49a8e3
test ecx, ecx
jl 0x49a8e3
test eax, eax
jge 0x49a8f5
add ebx, dword [esp + 0x38]
add ebp, dword [esp + 0x3c]
sub dword [esp + 0x14], 2
inc esi
cmp esi, edi
jle 0x49a8c7
sub edi, esi
inc edi
test edi, edi
jle 0x49a9de
mov dword [esp + 0x1c], edi
mov edx, dword [esp + 0x7c]
mov eax, ebp
sar eax, 0x10
mov eax, dword [edx + eax*4]
mov ecx, ebx
sar ecx, 0x10
add eax, ecx
mov ecx, dword [esp + 0x10]
movzx dx, byte [eax + ecx]
movzx eax, dx
test ax, ax
je 0x49a9c6
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x14]
movzx eax, ax
movzx esi, word [ecx + eax*2]
movzx ecx, word [edx]
mov eax, ecx
and eax, 0xf800
imul eax, dword [esp + 0x2b8]
shr eax, 8
mov edx, esi
and eax, 0xf800
and edx, 0xf800
add eax, edx
cmp eax, 0xf800
jbe 0x49a96b
mov eax, 0xf800
mov edx, ecx
and edx, 0x7e0
imul edx, dword [esp + 0x2b8]
shr edx, 8
mov edi, esi
and edx, 0x7e0
and edi, 0x7e0
add edx, edi
cmp edx, 0x7e0
jbe 0x49a99b
mov edx, 0x7e0
and ecx, 0x1f
imul ecx, dword [esp + 0x2b8]
shr ecx, 8
and ecx, 0x1f
and esi, 0x1f
add ecx, esi
cmp ecx, 0x1f
jbe 0x49a9bb
mov ecx, 0x1f
or eax, edx
or eax, ecx
mov ecx, dword [esp + 0x14]
mov word [ecx], ax
add ebx, dword [esp + 0x38]
add ebp, dword [esp + 0x3c]
sub dword [esp + 0x14], 2
sub dword [esp + 0x1c], 1
jne 0x49a904
mov eax, dword [esp + 0x30]
cmp eax, dword [esp + 0x78]
jge 0x49a9f2
mov edx, dword [esp + 0x34]
sub dword [esp + 0x24], edx
jmp 0x49a9fa
mov ecx, dword [esp + 0x40]
add dword [esp + 0x24], ecx
cmp eax, dword [esp + 0x64]
jge 0x49aa0a
mov edx, dword [esp + 0x40]
add dword [esp + 0x20], edx
jmp 0x49aa12
mov ecx, dword [esp + 0x34]
sub dword [esp + 0x20], ecx
add dword [esp + 0x2c], 4
inc eax
cmp eax, dword [esp + 0x50]
mov dword [esp + 0x30], eax
jle 0x49a7b9
fstp st(3)
fstp st(0)
fstp st(1)
jmp 0x49aa30
fstp st(0)
fstp st(0)
pop esi
mov ecx, dword [esp + 0x284]
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.004dc814
add esp, 0x27c
ret