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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov ecx, dword [ebp + 8]
mov esi, dword [ecx + 0x130]
mov edx, ecx
mov eax, dword [ecx + 0x10c]
mov dword [esi], 0
mov dword [esi + 0x7c90], eax
mov ebx, dword [ecx + 0x110]
mov eax, dword [edx + 0x200]
mov dword [esi + 0x7c94], ebx
mov ecx, dword [ecx + 0x114]
test eax, eax
mov dword [esi + 0x7c98], ecx
jne 0x9cdf43
movzx edx, byte [esi + 0x21b70]
and edx, 0xfffffffd
mov byte [esi + 0x21b70], dl
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x1fc]
test ebx, ebx
jne 0x9cdf24
and edx, 0xfffffffe
mov byte [esi + 0x21b70], dl
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx + 0x204]
test ecx, ecx
jne 0x9cdee5
and edx, 0xfffffff3
mov byte [esi + 0x21b70], dl
mov eax, dword [esi + 0x21d20]
test eax, eax
je 0x9ce620
mov ebx, dword [esi + 0x21d24]
test ebx, ebx
je 0x9ce5f5
mov edx, dword [esi + 0x21d40]
test edx, edx
je 0x9ce5b0
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 4]
mov dword [esi + 0x7ca0], ecx
sub ecx, 1
je 0x9cdda7
cmp dword [edx + 0x2c], 3
mov eax, 2
je 0x9cddae
mov dword [esi + 0x7ca4], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x7cc4], 2
cmp dword [eax + 0x2c], 3
je 0x9cdf64
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x88]
test eax, eax
jne 0x9cd065
mov eax, dword [edx + 0x90]
cmp eax, 0x80
je 0x9cd072
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x44]
test edx, edx
je 0x9ce119
mov edx, dword [ebp + 8]
fld dword [edx + 0x48]
ftst
fnstsw ax
fstp st(0)
sahf
jbe 0x9ccaf0
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0xc]
test ecx, ecx
je 0x9ce2f3
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
mov eax, edx
imul eax, dword [esi + 0x7ca4]
shl eax, 4
push eax
mov ecx, dword [ebp + 8]
fild dword [esp]
add esp, 4
fld dword [0xbfb5e8]
fmul dword [ecx + 0x48]
mov eax, ecx
fnstcw word [ebp - 0x3e]
add eax, 0x118
movzx ebx, word [ebp - 0x3e]
fdivp st(1)
mov bh, 0xc
mov word [ebp - 0x40], bx
fldcw word [ebp - 0x40]
fistp dword [ecx + 0x44]
fldcw word [ebp - 0x3e]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.009d3c70
mov dword [esi + 0x7cc0], eax
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x38]
test ebx, ebx
je 0x9ce2cf
mov edx, dword [eax + 0x88]
test edx, edx
je 0x9ccaf0
mov edx, dword [ebp + 8]
cmp dword [edx + 0x44], 0x13f
jle 0x9ccaf0
mov dword [edx + 0x88], 0
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx + 0xa0]
test ebx, ebx
jne 0x9cdd9c
mov ebx, dword [ecx + 0x88]
test ebx, ebx
jne 0x9cdf70
mov ecx, dword [ebp + 8]
mov eax, dword [ecx + 0x44]
mov dword [esp], eax
call fcn.009d3780
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx + 0x88]
fild dword [eax*8 + 0xbfb544]
cmp dword [ecx + 0x2c], 3
je 0x9ce29e
fnstcw word [ebp - 0x3e]
mov edx, dword [ebp + 8]
movzx eax, word [ebp - 0x3e]
mov ecx, edx
mov ah, 0xc
mov word [ebp - 0x40], ax
fldcw word [ebp - 0x40]
fistp dword [edx + 0xa0]
fldcw word [ebp - 0x3e]
mov eax, dword [ecx + 0xc]
test eax, eax
jne 0x9cdd91
mov eax, ecx
mov ecx, dword [ecx + 8]
mov edx, dword [eax + 0xa0]
cmp ecx, 0xbb7f
jle 0x9cdf97
mov edi, 0xbb80
cmp edx, 0xffffffff
je 0x9ccbf3
cmp edx, 0x3e58
jg 0x9ccbeb
cmp edx, 0x3b92
mov edi, 0xac44
jg 0x9ccbeb
cmp edx, 0x2bd4
mov di, 0x7d00
jg 0x9ccbeb
cmp edx, 0x26f2
mov di, 0x5dc0
jg 0x9ccbeb
cmp edx, 0x1c3e
mov di, 0x5622
jg 0x9ccbeb
cmp edx, 0x152c
mov di, 0x3e80
jg 0x9ccbeb
cmp edx, 0x119e
mov di, 0x2ee0
jg 0x9ccbeb
xor eax, eax
cmp edx, 0xf82
setg al
sub eax, 1
and eax, 0xfffff42f
lea edi, [eax + 0x2b11]
cmp edi, ecx
jg 0x9ce112
mov ecx, dword [ebp + 8]
mov dword [ecx + 0xc], edi
cmp edx, 0x5014
mov ecx, edx
jle 0x9ccc08
mov ecx, 0x5014
mov edx, dword [ebp + 8]
mov dword [edx + 0xa0], ecx
mov edx, dword [edx + 0xc]
mov eax, edx
shr eax, 0x1f
add eax, edx
sar eax, 1
cmp eax, ecx
jle 0x9ccc23
mov eax, ecx
mov ecx, dword [ebp + 8]
test ebx, ebx
mov dword [ecx + 0xa0], eax
jne 0x9cd125
imul edx, dword [esi + 0x7ca4]
shl edx, 4
push edx
fild dword [esp]
add esp, 4
fild dword [ecx + 0x44]
fmul dword [0xbfb5e8]
fdivp st(1)
fstp dword [ecx + 0x48]
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x20]
test ecx, ecx
jne 0x9ccc72
mov dword [edx + 0x3c], 0
mov dword [edx + 0x40], 0
and byte [esi + 0x21d30], 0xfb
mov edi, dword [ebp + 8]
movzx edx, byte [esi + 0x21d30]
movzx ebx, byte [edi + 0x3c]
and edx, 0xfffffffd
and ebx, 1
add ebx, ebx
or edx, ebx
mov byte [esi + 0x21d30], dl
movzx eax, byte [edi + 0x40]
and edx, 0xfffffffe
and eax, 1
or edx, eax
test dl, 1
mov byte [esi + 0x21d30], dl
je 0x9cccb0
or edx, 4
mov byte [esi + 0x21d30], dl
test byte [esi + 0x21d30], 2
jne 0x9cdeb6
test byte [esi + 0x21d30], 1
je 0x9cccd4
mov ebx, dword [ebp + 8]
mov edi, dword [ebx + 0x24]
test edi, edi
je 0x9ce2b6
mov edi, dword [ebp + 8]
cmp dword [edi + 0xc], 0x5dc0
setg al
movzx ecx, al
lea edx, [ecx + 1]
sub ecx, 1
mov dword [esi + 0x7c9c], edx
mov edx, dword [ebp + 8]
and ecx, 0xfffffdc0
add ecx, 0x480
fild dword [edx + 8]
fild dword [edx + 0xc]
fdivp st(1)
mov eax, dword [edx + 0x88]
mov dword [edx + 0x124], ecx
mov dword [edx + 0x11c], 0x240
cmp eax, 3
fstp dword [esi + 0x7ca8]
je 0x9cde8a
ja 0x9cd0aa
cmp eax, 1
jb 0x9cd0b3
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x34], 0x40b66666
mov dword [ebp - 0x30], 0x40d00000
mov dword [ebp - 0x2c], 0x40e9999a
mov edx, dword [ebx + 0x8c]
mov eax, ebx
mov dword [ebp - 0x28], 0x41033333
mov dword [ebp - 0x24], 0x41200000
mov dword [ebp - 0x20], 0x413e6666
mov dword [ebp - 0x1c], 0x41500000
mov dword [ebp - 0x18], 0x41600000
mov dword [ebp - 0x14], 0x41700000
mov dword [ebp - 0x10], 0x41840000
mov ecx, dword [ebp + edx*4 - 0x34]
mov dword [ebx + 0x48], ecx
cmp dword [eax + 0x2c], 4
je 0x9cd0e4
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xa4]
test eax, eax
jle 0x9ccdfe
push eax
mov eax, dword [edx + 0xac]
fild dword [esp]
add esp, 4
fadd st(0)
test eax, eax
fstp dword [esi + 0x7cd0]
js 0x9ce286
add eax, dword [edx + 0xa4]
push eax
mov eax, dword [ebp + 8]
fild dword [esp]
add esp, 4
fadd st(0)
fstp dword [esi + 0x7cd4]
fild dword [eax + 0xc]
mov edx, eax
fld dword [esi + 0x7cd0]
fdiv st(1)
fstp dword [esi + 0x7cd0]
fdivr dword [esi + 0x7cd4]
fstp dword [esi + 0x7cd4]
mov eax, dword [edx + 0xa0]
test eax, eax
jle 0x9cce63
push eax
mov edx, dword [edx + 0xa8]
fild dword [esp]
add esp, 4
fadd st(0)
test edx, edx
fstp dword [esi + 0x7ccc]
js 0x9ce270
sub eax, edx
push eax
fild dword [esp]
add esp, 4
fadd st(0)
fst dword [esi + 0x7cc8]
ftst
fnstsw ax
fstp st(0)
sahf
jb 0x9ce2c0
mov ebx, dword [ebp + 8]
fild dword [ebx + 0xc]
fld dword [esi + 0x7cc8]
fdiv st(1)
fstp dword [esi + 0x7cc8]
fdivr dword [esi + 0x7ccc]
fstp dword [esi + 0x7ccc]
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx + 0x130]
fld dword [ebx + 0x7cc8]
ftst
fnstsw ax
sahf
jbe 0x9ce1d5
fld dword [ebx + 0x7ccc]
mov edi, 0x3e7
xor edx, edx
mov ecx, 0x20
jmp 0x9cd037
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccea1
cmp edi, edx
jle 0x9ccea1
mov edi, edx
add edx, 1
mov dword [ebp - 0x44], edx
push edx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccec1
cmp ecx, edx
jle 0x9ccec1
mov ecx, edx
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd0f7
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccedb
cmp edi, dword [ebp - 0x44]
jle 0x9ccedb
mov edi, dword [ebp - 0x44]
lea eax, [edx + 1]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccef9
cmp ecx, dword [ebp - 0x44]
jle 0x9ccef9
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd0fe
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccf13
cmp edi, dword [ebp - 0x44]
jle 0x9ccf13
mov edi, dword [ebp - 0x44]
lea eax, [edx + 2]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccf31
cmp ecx, dword [ebp - 0x44]
jle 0x9ccf31
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd0f0
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccf4b
cmp edi, dword [ebp - 0x44]
jle 0x9ccf4b
mov edi, dword [ebp - 0x44]
lea eax, [edx + 3]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccf69
cmp ecx, dword [ebp - 0x44]
jle 0x9ccf69
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd11c
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccf83
cmp edi, dword [ebp - 0x44]
jle 0x9ccf83
mov edi, dword [ebp - 0x44]
lea eax, [edx + 4]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccfa1
cmp ecx, dword [ebp - 0x44]
jle 0x9ccfa1
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd115
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccfbb
cmp edi, dword [ebp - 0x44]
jle 0x9ccfbb
mov edi, dword [ebp - 0x44]
lea eax, [edx + 5]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9ccfd9
cmp ecx, dword [ebp - 0x44]
jle 0x9ccfd9
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd10c
fcomp st(1)
fnstsw ax
sahf
jae 0x9ccff3
cmp edi, dword [ebp - 0x44]
jle 0x9ccff3
mov edi, dword [ebp - 0x44]
lea eax, [edx + 6]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9cd011
cmp ecx, dword [ebp - 0x44]
jle 0x9cd011
mov ecx, dword [ebp - 0x44]
fcom st(2)
fnstsw ax
sahf
jbe 0x9cd105
fcomp st(1)
fnstsw ax
sahf
jae 0x9cd02b
cmp edi, dword [ebp - 0x44]
jle 0x9cd02b
mov edi, dword [ebp - 0x44]
add edx, 7
cmp edx, 0x20
je 0x9cd158
push edx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jb 0x9cd051
cmp ecx, edx
jle 0x9cd051
mov ecx, edx
fcom st(2)
fnstsw ax
sahf
ja 0x9cce94
fstp st(0)
nop
jmp 0x9ccea1
mov dword [edx + 0x38], 0
jne 0x9ccada
mov eax, dword [edx + 0x44]
test eax, eax
jne 0x9cca4b
mov ecx, dword [ebp + 8]
fld dword [ecx + 0x48]
ftst
fnstsw ax
sahf
jne 0x9cca51
fstp st(0)
mov ebx, dword [ecx + 0x88]
mov dword [ecx + 0x48], 0x41306666
test ebx, ebx
jne 0x9ccada
jmp 0x9cca5e
cmp eax, 4
je 0x9ccd3b
mov edi, dword [ebp + 8]
mov ebx, dword [edi + 0xc]
mov eax, edi
imul ebx, dword [esi + 0x7ca4]
shl ebx, 4
push ebx
fild dword [esp]
add esp, 4
fild dword [edi + 0x44]
fmul dword [0xbfb5e8]
cmp dword [eax + 0x2c], 4
fdivp st(1)
fstp dword [edi + 0x48]
jne 0x9ccd9d
mov dword [eax + 0x2c], 1
jmp 0x9ccd9d
fstp st(0)
jmp 0x9ccf4b
fstp st(0)
jmp 0x9ccedb
fstp st(0)
jmp 0x9ccf13
fstp st(0)
jmp 0x9cd02b
fstp st(0)
nop
jmp 0x9ccff3
fstp st(0)
jmp 0x9ccfbb
fstp st(0)
nop
jmp 0x9ccf83
cmp ebx, 3
jne 0x9ccc53
imul edx, dword [esi + 0x7ca4]
shl edx, 4
push edx
mov ebx, dword [ebp + 8]
fild dword [esp]
add esp, 4
fild dword [ebx + 0x90]
fmul dword [0xbfb5e8]
fdivp st(1)
fstp dword [ebx + 0x48]
jmp 0x9ccc53
fstp st(0)
fstp st(0)
cmp edi, 0x3e7
je 0x9ce055
push edi
fild dword [esp]
fsub dword [0xbfb620]
fmul qword [0xbfb618]
fstp dword [ebx + 0x7cc8]
mov dword [esp], ecx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fstp dword [ebx + 0x7ccc]
fld dword [ebx + 0x7cd4]
ftst
fnstsw ax
sahf
jbe 0x9cd3e9
fld st(0)
fcomp qword [0xbfb628]
fnstsw ax
sahf
jb 0x9ce01f
fld dword [ebx + 0x7cd0]
xor edx, edx
mov edi, 0xffffffff
mov ecx, 0xffffffff
jmp 0x9cd306
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd1dd
cmp edi, edx
jge 0x9cd1dd
mov edi, edx
add edx, 1
mov dword [ebp - 0x44], edx
push edx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd388
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd208
cmp edi, edx
jge 0x9cd208
mov edi, edx
lea eax, [edx + 1]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd375
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd231
cmp edi, dword [ebp - 0x44]
jge 0x9cd231
mov edi, dword [ebp - 0x44]
lea eax, [edx + 2]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd361
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd25a
cmp edi, dword [ebp - 0x44]
jge 0x9cd25a
mov edi, dword [ebp - 0x44]
lea eax, [edx + 3]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd34e
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd283
cmp edi, dword [ebp - 0x44]
jge 0x9cd283
mov edi, dword [ebp - 0x44]
lea eax, [edx + 4]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd33b
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd2ac
cmp edi, dword [ebp - 0x44]
jge 0x9cd2ac
mov edi, dword [ebp - 0x44]
lea eax, [edx + 5]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd32f
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd2d1
cmp edi, dword [ebp - 0x44]
jge 0x9cd2d1
mov edi, dword [ebp - 0x44]
lea eax, [edx + 6]
mov dword [ebp - 0x44], eax
fild dword [ebp - 0x44]
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
jbe 0x9cd39b
fcomp st(2)
fnstsw ax
sahf
jae 0x9cd2fa
cmp edi, dword [ebp - 0x44]
jge 0x9cd2fa
mov edi, dword [ebp - 0x44]
add edx, 7
cmp edx, 0x20
je 0x9cd3ae
push edx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fcom st(1)
fnstsw ax
sahf
ja 0x9cd1d0
fstp st(0)
cmp ecx, edx
jge 0x9cd1dd
mov ecx, edx
jmp 0x9cd1dd
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd2d1
mov ecx, dword [ebp - 0x44]
jmp 0x9cd2d1
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd2ac
mov ecx, dword [ebp - 0x44]
jmp 0x9cd2ac
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd283
mov ecx, dword [ebp - 0x44]
jmp 0x9cd283
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd25a
mov ecx, dword [ebp - 0x44]
nop
jmp 0x9cd25a
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd231
mov ecx, dword [ebp - 0x44]
jmp 0x9cd231
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd208
mov ecx, dword [ebp - 0x44]
jmp 0x9cd208
fstp st(0)
cmp ecx, dword [ebp - 0x44]
jge 0x9cd2fa
mov ecx, dword [ebp - 0x44]
jmp 0x9cd2fa
fstp st(0)
fstp st(0)
push ecx
fild dword [esp]
add esp, 4
cmp edi, 0xffffffff
fld qword [0xbfb618]
fld st(1)
fmul st(1)
fstp dword [ebx + 0x7cd0]
je 0x9ce186
fstp st(1)
push edi
fild dword [esp]
add esp, 4
fadd dword [0xbfb620]
fmulp st(1)
fst dword [ebx + 0x7cd4]
fld dword [ebx + 0x7cc8]
xor edx, edx
fld dword [ebx + 0x7ccc]
fsub st(1)
push edx
fld qword [0xbfb630]
fld st(0)
fsubp st(2)
fild dword [esp]
add esp, 4
fld dword [ebx + 0x7cd0]
fsubr st(5)
faddp st(2)
fxch st(1)
fdivp st(4)
fxch st(3)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
jbe 0x9ce1bb
fstp st(0)
fldz
fxch st(3)
fsub st(2)
fdiv st(1)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
jbe 0x9ce19b
fstp st(0)
fstp st(2)
fxch st(1)
fldz
fstp dword [ebx + edx*4 + 0x10004]
add edx, 1
fld dword [ebx + 0x7cd4]
jmp 0x9cd501
fstp st(0)
fldz
fxch st(1)
fsub st(3)
fld st(2)
fdivp st(1)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
jbe 0x9cd550
fstp st(0)
fstp st(0)
fldz
lea ecx, [edx + 1]
cmp ecx, 0x20
fstp dword [ebx + edx*4 + 0x10004]
mov edx, ecx
je 0x9cd5bc
fld dword [ebx + 0x7cd4]
push ecx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fld st(1)
fsub st(1)
fxch st(2)
fsub dword [ebx + 0x7cd0]
fld qword [0xbfb630]
faddp st(1)
fdivp st(2)
fxch st(1)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
jbe 0x9cd580
fstp st(0)
fldz
fxch st(1)
fsub st(3)
fld st(2)
fdivp st(1)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
jbe 0x9cd568
fstp st(0)
fstp st(0)
fldz
fstp dword [ebx + edx*4 + 0x10004]
fld dword [ebx + 0x7cd4]
lea edx, [ecx + 1]
push edx
fild dword [esp]
add esp, 4
fmul qword [0xbfb618]
fld st(1)
fsub st(1)
fxch st(2)
fsub dword [ebx + 0x7cd0]
fld qword [0xbfb630]
faddp st(1)
fdivp st(2)
fxch st(1)
fcom dword [0xbfb5c8]
fnstsw ax
sahf
ja 0x9cd460
ftst
fnstsw ax
sahf
jbe 0x9cd598
fld qword [0xbfb638]
fmulp st(1)
fcos
fxch st(1)
jmp 0x9cd466
ftst
fnstsw ax
sahf
jbe 0x9cd5a3
fld qword [0xbfb638]
fmulp st(1)
fcos
fmulp st(1)
jmp 0x9cd481
ftst
fnstsw ax
sahf
jbe 0x9cd5b5
fld qword [0xbfb638]
fmulp st(1)
fcos
fmulp st(1)
jmp 0x9cd4f1
ftst
fnstsw ax
sahf
jbe 0x9cd5aa
fld qword [0xbfb638]
fmulp st(1)
fcos
fxch st(1)
jmp 0x9cd4d6
fstp st(0)
fld1
fxch st(1)
jmp 0x9cd466
fstp st(0)
jmp 0x9cd481
fstp st(0)
fld1
fxch st(1)
jmp 0x9cd4d6
fstp st(0)
jmp 0x9cd4f1
fstp st(0)
fstp st(0)
mov ecx, dword [ebp + 8]
add ecx, 0x118
mov dword [esp + 4], ecx
mov edx, dword [ebp + 8]
mov ebx, dword [edx + 0xc]
mov dword [esp], ebx
call fcn.009d3c70
test eax, eax
mov dword [esi + 0x7cc0], eax
js 0x9ce34f
mov ecx, dword [ebp + 8]
mov edi, dword [ecx + 0x88]
test edi, edi
jne 0x9cd60b
mov eax, dword [ecx + 0x38]
test eax, eax
je 0x9ce322
mov dword [esi + 0x7cbc], 0
mov dword [esp], esi
xor ebx, ebx
call fcn.009d81e0
mov ecx, dword [ebp + 8]
mov edi, dword [ecx + 0x118]
cmp dword [ecx + 0xc], 0x3e7f
mov ecx, 1
setg bl
lea edx, [edi + edi*2]
sub ebx, 1
add edx, dword [esi + 0x7cc0]
and ebx, 6
lea edi, [edx + ebx]
imul edx, edi, 0xcc
mov eax, dword [edx + 0xbfd260]
add edx, 0xbfd264
mov dword [esi + 0x13098], eax
mov eax, dword [edx]
mov ebx, dword [edx + 4]
mov dword [esi + ecx*4 + 0x13098], eax
mov eax, dword [edx + 8]
mov dword [esi + ecx*4 + 0x1309c], ebx
mov ebx, dword [edx + 0xc]
mov dword [esi + ecx*4 + 0x130a0], eax
mov eax, dword [edx + 0x10]
mov dword [esi + ecx*4 + 0x130a4], ebx
mov ebx, dword [edx + 0x14]
mov dword [esi + ecx*4 + 0x130a8], eax
mov eax, dword [edx + 0x18]
mov dword [esi + ecx*4 + 0x130ac], ebx
mov ebx, dword [edx + 0x1c]
mov dword [esi + ecx*4 + 0x130b0], eax
mov eax, dword [edx + 0x20]
mov dword [esi + ecx*4 + 0x130b4], ebx
mov ebx, dword [edx + 0x24]
mov dword [esi + ecx*4 + 0x130b8], eax
mov eax, dword [edx + 0x28]
add edx, 0x2c
mov dword [esi + ecx*4 + 0x130bc], ebx
mov dword [esi + ecx*4 + 0x130c0], eax
add ecx, 0xb
cmp ecx, 0x17
jne 0x9cd657
mov ebx, dword [esi + 0x130ec]
mov eax, 0x2aaaaaab
mov ecx, dword [esi + 0x130f0]
mov dword [esi + 0x13144], 0x240
mov dword [esi + 0x1312c], ebx
sub ecx, ebx
mov dword [ebp - 0x44], ecx
imul dword [ebp - 0x44]
sar dword [ebp - 0x44], 0x1f
mov ecx, edx
sub ecx, dword [ebp - 0x44]
lea eax, [ecx + ebx]
mov dword [esi + 0x13130], eax
lea eax, [ecx + ecx]
lea edx, [eax + ebx]
add eax, ecx
add eax, ebx
mov dword [esi + 0x13138], eax
lea eax, [ecx*4]
mov dword [esi + 0x13134], edx
lea edx, [eax + ebx]
add eax, ecx
add eax, ebx
mov dword [esi + 0x13140], eax
imul eax, edi, 0xcc
mov dword [esi + 0x1313c], edx
add eax, 0xbfd26c
mov ebx, dword [eax + 0x50]
mov edx, dword [eax + 0x54]
mov edi, dword [eax + 0x58]
mov ecx, dword [eax + 0x5c]
mov dword [esi + 0x130f4], ebx
mov ebx, dword [eax + 0x60]
mov dword [esi + 0x130f8], edx
mov edx, dword [eax + 0x64]
mov dword [esi + 0x130fc], edi
mov edi, dword [eax + 0x68]
mov dword [esi + 0x13100], ecx
mov ecx, dword [eax + 0x6c]
mov dword [esi + 0x13104], ebx
mov ebx, dword [eax + 0x70]
mov dword [esi + 0x13108], edx
mov edx, dword [eax + 0x74]
mov dword [esi + 0x1310c], edi
mov dword [esi + 0x13110], ecx
mov dword [esi + 0x13114], ebx
mov dword [esi + 0x13118], edx
mov ecx, dword [eax + 0x7c]
mov ebx, dword [eax + 0x84]
mov edi, dword [eax + 0x78]
mov dword [esi + 0x13160], 0xc0
mov dword [esi + 0x13120], ecx
mov ecx, dword [eax + 0x80]
mov eax, 0x2aaaaaab
mov dword [esi + 0x13128], ebx
mov dword [esi + 0x1311c], edi
mov edi, ebx
sub edi, ecx
imul edi
sar edi, 0x1f
mov dword [esi + 0x13124], ecx
mov dword [esi + 0x13148], ecx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + ebx]
lea edi, [eax + ecx]
add eax, ebx
add eax, ecx
mov dword [esi + 0x13154], eax
mov eax, dword [ebp + 8]
lea edx, [ecx + ebx]
mov dword [esi + 0x13150], edi
lea edi, [ebx*4]
mov dword [esi + 0x1314c], edx
lea edx, [edi + ecx]
add edi, ebx
add edi, ecx
mov dword [esi + 0x13158], edx
mov dword [esi + 0x1315c], edi
cmp dword [eax + 0x118], 1
je 0x9cdfff
xor edx, edx
cmp dword [esi + 0x7ca4], 1
setne dl
lea edi, [edx*8 + 0xd]
mov dword [esi + 0xdc00], edi
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x54]
test ecx, ecx
je 0x9cd85e
add dword [esi + 0xdc00], 2
mov eax, dword [ebp + 8]
mov edi, dword [eax + 0x130]
mov dword [eax + 0x128], 0
mov dword [esp], eax
call fcn.009ef240
lea ecx, [edi + 0x21d4c]
mov dword [esp], ecx
mov dword [esp + 8], 0x140
mov dword [esp + 4], 0
call sub.msvcrt.dll_memset
lea edx, [edi + 0x21e8c]
mov dword [esp + 8], 0x180
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
mov ecx, dword [ebp + 8]
mov dword [edi + 0x21d34], 0
mov ebx, dword [ecx + 0x20]
test ebx, ebx
jne 0x9cdfb9
mov ecx, dword [esi + 0x7c9c]
mov edx, 1
mov dword [esi], 0xfff88e3b
mov edi, ecx
imul edi, dword [esi + 0x7ca4]
imul ebx, edi, 0x2bc
push ebx
fild dword [esp]
add esp, 4
fstp dword [esi + 0x21c24]
mov ebx, ecx
imul ebx, dword [esi + 0x7ca4]
imul edi, ebx, 0x2bc
push edi
fild dword [esp]
add esp, 4
fst dword [esi + edx*4 + 0x21c24]
fst dword [esi + edx*4 + 0x21c28]
fst dword [esi + edx*4 + 0x21c2c]
fst dword [esi + edx*4 + 0x21c30]
fst dword [esi + edx*4 + 0x21c34]
fst dword [esi + edx*4 + 0x21c38]
fst dword [esi + edx*4 + 0x21c3c]
fst dword [esi + edx*4 + 0x21c40]
fstp dword [esi + edx*4 + 0x21c44]
add edx, 9
cmp edx, 0x13
jne 0x9cd8fa
mov eax, dword [ebp + 8]
cmp dword [eax + 0xc8], 0xffffffff
je 0x9cdfca
mov edx, dword [ebp + 8]
mov ecx, dword [esi + 0x21d24]
mov eax, dword [edx + 0x1bc]
mov dword [ecx + 8], 0
mov dword [esi + 0x21d04], eax
mov eax, dword [edx + 0x88]
cmp eax, 2
je 0x9ce08d
cmp eax, 4
je 0x9cddf7
sub eax, 1
je 0x9cdded
mov edx, dword [ebp + 8]
mov dword [esi + 0xd1dc], 0
mov ecx, dword [edx + 0x28]
test ecx, ecx
js 0x9ce485
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cf4f0
test eax, eax
mov ebx, eax
je 0x9ce163
mov dword [esp + 8], 0
mov edx, dword [ebp + 8]
mov ecx, dword [edx + 0x90]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.009e0530
mov dword [esp + 4], ebx
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.009cf4d0
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x21d24]
mov edi, dword [ecx + 0xb4]
mov dword [edx], edi
mov ebx, dword [ecx + 0xb8]
mov dword [edx + 4], ebx
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cf4f0
test eax, eax
je 0x9cdadb
mov ecx, dword [ebp + 8]
mov dword [esi + 0x7cb4], 1
mov dword [esi + 0x7cb8], 0xe
mov edx, dword [ecx + 0x94]
test edx, edx
jne 0x9ce54f
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x98]
test edx, edx
jne 0x9ce580
mov ebx, dword [ebp + 8]
mov edx, dword [ebx + 0x118]
shl edx, 4
mov ecx, edx
mov edi, edx
add ecx, dword [esi + 0x7cb4]
mov eax, dword [ecx*4 + 0xbfc460]
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x94], eax
mov eax, edx
add edi, dword [esi + 0x7cb8]
mov ebx, dword [edi*4 + 0xbfc460]
mov dword [ecx + 0x98], ebx
mov ebx, dword [ecx + 0x90]
add eax, dword [esi + 0x7cb8]
mov ecx, dword [eax*4 + 0xbfc460]
cmp ecx, ebx
jle 0x9cdab4
mov ecx, ebx
mov edi, dword [ebp + 8]
mov dword [edi + 0x90], ecx
add edx, dword [esi + 0x7cb4]
mov eax, dword [edx*4 + 0xbfc460]
mov edx, ecx
cmp ecx, eax
jge 0x9cdad2
mov edx, eax
mov eax, dword [ebp + 8]
mov dword [eax + 0x90], edx
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0xf8]
test edx, edx
je 0x9cdaf9
mov edi, dword [eax + 0xfc]
mov ebx, dword [esi + 0x21d24]
mov eax, dword [ebp + 8]
mov dword [ebx], edi
mov dword [esp], eax
call fcn.009c95e0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xd4]
test eax, eax
js 0x9ce25f
mov ebx, dword [esi + 0x21d20]
mov dword [ebx], eax
mov edi, dword [ebp + 8]
fld qword [0xbfb648]
fmul dword [edi + 0xdc]
mov dword [esp], 0
mov dword [esp + 4], 0x40240000
fstp qword [esp + 8]
call sub.msvcrt.dll_pow
mov edx, dword [esi + 0x21d24]
fstp dword [ebx + 4]
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0xe0]
push eax
fild dword [esp]
add esp, 4
test eax, eax
jle 0x9ce252
fstp dword [edx + 0xc]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xe4]
cmp eax, 0xffffffff
je 0x9cdfd9
test eax, eax
jne 0x9cdb88
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x2c], 1
jbe 0x9cdff0
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.009cf3e0
test eax, eax
js 0x9ce3bd
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.009cf400
test eax, eax
js 0x9ce425
mov edi, dword [ebp + 8]
mov dword [esp], edi
call fcn.009cfec0
ftst
fnstsw ax
fstp st(0)
sahf
jb 0x9ce405
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.009cf6d0
test eax, eax
js 0x9cddb8
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cf6d0
cmp eax, 2
je 0x9cddb8
mov dword [esp + 4], 1
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.009cf6b0
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cf460
and eax, 0xfffffffe
mov dword [esp + 4], eax
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.009cf450
mov edi, dword [ebp + 8]
mov dword [esp], edi
call fcn.009cfbb0
ftst
fnstsw ax
fstp st(0)
sahf
jb 0x9ce3ed
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.009cfbf0
ftst
fnstsw ax
fstp st(0)
sahf
jb 0x9ce3d5
mov edi, dword [ebp + 8]
fldz
fcomp dword [edi + 0x10]
fnstsw ax
sahf
ja 0x9ce1eb
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc8]
test edx, edx
js 0x9ce1dc
mov ebx, dword [ebp + 8]
fldz
fcomp dword [ebx + 0xcc]
fnstsw ax
sahf
ja 0x9ce240
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd8]
test edx, edx
js 0x9ce231
mov ecx, dword [ebp + 8]
fldz
fcom dword [ecx + 0xec]
fnstsw ax
sahf
ja 0x9ce223
fstp st(0)
mov ecx, dword [ebp + 8]
mov edi, dword [ecx + 0xe8]
test edi, edi
js 0x9ce214
mov eax, dword [ebp + 8]
mov dword [esi + 0xcec0], 0
mov dword [esi + 0xcec4], 0
mov edx, dword [eax + 0x88]
test edx, edx
jne 0x9cdd05
mov ebx, dword [eax + 0x118]
mov ecx, eax
imul edx, dword [eax + 0x44], 0x11940
add ebx, 1
imul edx, ebx
mov eax, edx
sar edx, 0x1f
idiv dword [ecx + 0xc]
mov dword [esi + 0xcec0], edx
mov dword [esi + 0xcec4], edx
mov edi, dword [ebp + 8]
mov edx, dword [edi + 0x104]
mov ecx, dword [edi + 0x100]
mov dword [esi + 0xd1e4], edx
fld dword [edi + 0x104]
fsub dword [edi + 0x108]
mov dword [esi + 0xd1e0], ecx
fstp dword [esi + 0xd1e8]
fldz
fcom dword [esi + 0xd1e4]
fnstsw ax
sahf
ja 0x9ce209
fstp st(0)
fld dword [esi + 0xd1e8]
ftst
fnstsw ax
sahf
jb 0x9ce1fa
fld dword [esi + 0xd1e4]
fcom st(1)
fnstsw ax
fstp st(1)
sahf
jae 0x9cde83
fstp dword [esi + 0xd1e8]
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009d1880
mov esi, dword [ebp + 8]
mov dword [esp], esi
call fcn.009e48f0
xor edx, edx
add esp, 0x4c
mov eax, edx
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ecx + 0xa0]
jmp 0x9ccbf9
mov ebx, dword [ecx + 0x88]
jmp 0x9ccb55
mov dword [edx + 0x2c], 3
mov eax, 1
jmp 0x9cc9fe
mov dword [esp + 4], 2
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.009cf6b0
mov edi, dword [ebp + 8]
mov dword [esp], edi
call fcn.009cf460
or eax, 1
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.009cf450
jmp 0x9cdc1d
mov dword [edx + 0x88], 4
mov dword [esp + 8], 0
mov ebx, dword [ebp + 8]
mov edi, 0x1f4
mov ecx, dword [ebx + 0x8c]
mov dword [esp], ebx
lea edx, [ecx + ecx*4]
add edx, edx
sub edi, edx
mov dword [esp + 4], edi
call fcn.009e0530
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x28]
test eax, eax
js 0x9ce3a4
cmp eax, 7
jg 0x9ce35e
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0xe0]
test ebx, ebx
jle 0x9ce37d
mov ecx, dword [ebp + 8]
mov ebx, dword [esi + 0x21d24]
mov edx, dword [ecx + 0xb4]
mov dword [ebx + 8], 1
mov eax, dword [ecx + 0x6c]
mov dword [ebx], edx
mov edi, dword [ecx + 0xb8]
test eax, eax
mov dword [ebx + 4], edi
je 0x9ce075
mov dword [esi + 0xd1dc], 0
jmp 0x9cda17
fstp st(0)
jmp 0x9cdd6f
mov eax, dword [edx + 0xc]
imul eax, dword [esi + 0x7ca4]
shl eax, 4
push eax
mov eax, edx
fild dword [esp]
add esp, 4
fild dword [edx + 0x90]
fmul dword [0xbfb5e8]
fdivp st(1)
fstp dword [edx + 0x48]
jmp 0x9ccd93
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0xc]
mov dword [esp + 4], ecx
mov edx, dword [esi + 0x21d40]
mov dword [esp], edx
call fcn.009d60c0
mov edx, 0xfffffffa
test eax, eax
jne 0x9cccbd
add esp, 0x4c
mov eax, edx
pop ebx
pop esi
pop edi
pop ebp
ret
call fcn.009d3ec0
movzx ecx, byte [esi + 0x21b70]
and ecx, 0xfffffffb
and eax, 1
shl eax, 2
or ecx, eax
mov byte [esi + 0x21b70], cl
call fcn.009d3eb0
movzx edx, byte [esi + 0x21b70]
and edx, 0xfffffff7
and eax, 1
shl eax, 3
or edx, eax
mov byte [esi + 0x21b70], dl
jmp 0x9cc9b0
call fcn.009d3ee0
movzx edx, byte [esi + 0x21b70]
and edx, 0xfffffffe
and eax, 1
or edx, eax
mov byte [esi + 0x21b70], dl
jmp 0x9cc996
call fcn.009d3ed0
movzx edx, byte [esi + 0x21b70]
and edx, 0xfffffffd
and eax, 1
add eax, eax
or edx, eax
mov byte [esi + 0x21b70], dl
jmp 0x9cc97c
mov dword [eax + 0x34], 0
jmp 0x9cca1b
cmp ebx, 3
je 0x9ce155
mov eax, dword [ebp + 8]
cmp dword [eax + 0x8c], 9
jbe 0x9ce3b0
mov ecx, dword [ebp + 8]
fld dword [0xbfb5f0]
jmp 0x9ccb2d
cmp ecx, 0xac43
jg 0x9ce121
cmp ecx, 0x7cff
jle 0x9ce451
mov edi, 0x7d00
jmp 0x9ccb7c
mov dword [esp], ecx
lea esi, [esi]
call fcn.009f0c20
jmp 0x9cd8cd
mov dword [eax + 0xc8], 4
jmp 0x9cd967
mov ecx, dword [ebp + 8]
mov dword [edx + 0xe4], 0
cmp dword [ecx + 0x2c], 1
ja 0x9cdb88
mov dword [ecx + 0xe4], 1
jmp 0x9cdb88
xor ebx, ebx
cmp dword [esi + 0x7ca4], 1
setne bl
sub ebx, 1
and ebx, 0xfffffff1
add ebx, 0x24
mov dword [esi + 0xdc00], ebx
jmp 0x9cd84d
fstp st(0)
xor edi, edi
mov dword [ebx + 0x7cd0], edi
mov dword [ebx + 0x7cd4], edi
mov dword [esp + 4], 0xbfb498
mov dword [esp], ebx
call fcn.009d3f50
fld dword [ebx + 0x7cd4]
ftst
fnstsw ax
sahf
ja 0x9cd1b5
jmp 0x9cd3e9
push ecx
fild dword [esp]
add esp, 4
fld st(0)
fsub dword [0xbfb620]
fmul qword [0xbfb618]
fstp dword [ebx + 0x7cc8]
jmp 0x9cd187
cmp dword [ecx + 0xc], 0xabe0
setg al
movzx ecx, al
mov dword [esi + 0xd1dc], ecx
jmp 0x9cda17
mov dword [esp + 8], 0
mov ecx, dword [edx + 0x8c]
mov ebx, edx
mov edi, 0x1f4
mov dword [esp], ebx
lea edx, [ecx + ecx*4]
add edx, edx
sub edi, edx
mov dword [esp + 4], edi
call fcn.009e0530
mov edi, dword [ebp + 8]
mov edx, dword [esi + 0x21d24]
mov eax, dword [edi + 0xb4]
cmp dword [edi + 0xb0], 1
mov dword [edx], eax
mov ecx, dword [edi + 0xb8]
mov dword [edx + 4], ecx
je 0x9ce17a
mov eax, dword [ebp + 8]
mov ebx, dword [eax + 0x6c]
test ebx, ebx
je 0x9ce12b
mov ecx, dword [ebp + 8]
mov dword [esi + 0xd1dc], 0
mov eax, dword [ecx + 0x28]
cmp eax, 6
jg 0x9ce149
test eax, eax
jns 0x9cda17
mov edx, dword [ebp + 8]
mov dword [edx + 0x28], 3
jmp 0x9cda17
mov edi, ecx
jmp 0x9ccbf3
mov dword [ecx + 0x44], eax
jmp 0x9cd075
mov edi, 0xac44
jmp 0x9ccb7c
mov edi, eax
xor eax, eax
cmp dword [edi + 0xc], 0xabe0
mov ecx, edi
setg al
mov dword [esi + 0xd1dc], eax
mov eax, dword [ecx + 0x28]
cmp eax, 6
jle 0x9ce0fb
mov dword [ecx + 0x28], 6
jmp 0x9cda17
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x90]
jmp 0x9ccb15
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x44]
mov dword [esp], edi
mov dword [esp + 4], eax
call fcn.009cf530
jmp 0x9cd9d1
mov dword [edx + 8], 1
jmp 0x9ce0dc
fxch st(1)
fadd dword [0xbfb620]
fmulp st(1)
fst dword [ebx + 0x7cd4]
jmp 0x9cd3e9
ftst
fnstsw ax
sahf
jbe 0x9ce43d
fld qword [0xbfb638]
fmulp st(1)
fcos
fmulp st(3)
fxch st(1)
fxch st(2)
jmp 0x9cd44a
ftst
fnstsw ax
sahf
jbe 0x9ce448
fld qword [0xbfb638]
fmulp st(1)
fcos
jmp 0x9cd42d
fstp st(0)
jmp 0x9cd193
mov dword [ecx + 0xc8], 4
jmp 0x9cdc6f
mov ecx, dword [ebp + 8]
mov dword [ecx + 0x10], 0x3f800000
jmp 0x9cdc5e
fstp st(0)
fldz
fst dword [esi + 0xd1e8]
jmp 0x9cdd56
fstp dword [esi + 0xd1e4]
jmp 0x9cdd45
mov dword [ecx + 0xe8], 1
jmp 0x9cdcbb
mov ebx, dword [ebp + 8]
fstp dword [ebx + 0xec]
jmp 0x9cdcaa
mov dword [ecx + 0xd8], 2
jmp 0x9cdc94
mov edi, dword [ebp + 8]
mov dword [edi + 0xcc], 0x40800000
jmp 0x9cdc83
fstp st(0)
fld dword [0xbfb650]
jmp 0x9cdb62
mov ebx, dword [esi + 0x21d20]
mov dword [ebx], 3
jmp 0x9cdb1a
mov edx, dword [ebp + 8]
fild dword [edx + 0xa0]
fadd st(0)
fstp dword [esi + 0x7cc8]
jmp 0x9cce43
mov ecx, dword [ebp + 8]
fild dword [ecx + 0xa4]
mov eax, ecx
fadd st(0)
fstp dword [esi + 0x7cd4]
jmp 0x9ccddf
test ebx, ebx
je 0x9ce2ab
cmp ebx, 3
jne 0x9ccb37
fmul dword [0xbfb614]
jmp 0x9ccb37
call fcn.009d7c00
jmp 0x9cccd4
mov dword [esi + 0x7cc8], 0
jmp 0x9cce43
mov ecx, eax
mov eax, dword [eax + 0x118]
mov dword [esp + 4], eax
mov ebx, dword [ecx + 0x44]
mov dword [esp], ebx
call fcn.009d3530
mov edx, dword [ebp + 8]
mov dword [edx + 0x44], eax
mov eax, edx
jmp 0x9ccad0
fild dword [edx + 8]
fnstcw word [ebp - 0x3e]
fmul qword [0xbfb5e0]
movzx eax, word [ebp - 0x3e]
mov ah, 0xc
mov word [ebp - 0x40], ax
fldcw word [ebp - 0x40]
fistp dword [esp]
fldcw word [ebp - 0x3e]
call fcn.009d3af0
mov edx, dword [ebp + 8]
mov dword [edx + 0xc], eax
jmp 0x9cca6c
mov edx, dword [ebp + 8]
mov edi, dword [edx + 0xc]
mov dword [esp + 8], edi
mov ecx, dword [edx + 0x118]
mov dword [esp + 4], ecx
mov ebx, dword [edx + 0x44]
mov dword [esp], ebx
call fcn.009d3b70
test eax, eax
mov dword [esi + 0x7cbc], eax
jns 0x9cd60b
add esp, 0x4c
mov edx, 0xffffffff
pop ebx
mov eax, edx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 8]
mov dword [eax + 0x28], 7
mov dword [esp + 4], 0xbfb4dc
mov dword [esp], esi
call fcn.009d3ef0
jmp 0x9cde37
fild dword [eax + 0xc]
fnstcw word [ebp - 0x3e]
fmul qword [0xbfb640]
movzx edx, word [ebp - 0x3e]
mov dh, 0xc
mov word [ebp - 0x40], dx
fldcw word [ebp - 0x40]
fistp dword [eax + 0xe0]
fldcw word [ebp - 0x3e]
jmp 0x9cde48
mov dword [edx + 0x28], 3
jmp 0x9cde37
mov eax, dword [eax + 0x8c]
jmp dword [eax*4 + 0xbfb510]
mov dword [esp + 4], 1
mov edx, dword [ebp + 8]
mov dword [esp], edx
call fcn.009cf3d0
jmp 0x9cdb9b
mov dword [esp + 4], 0x41c80000
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cfbd0
jmp 0x9cdc4d
mov dword [esp + 4], 0x408ccccd
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.009cfb90
jmp 0x9cdc35
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.009cfea0
jmp 0x9cdbc6
mov dword [esp + 4], 0
mov ebx, dword [ebp + 8]
mov dword [esp], ebx
call fcn.009cf3f0
jmp 0x9cdbae
fstp st(0)
fxch st(1)
fxch st(2)
jmp 0x9cd44a
fstp st(0)
fld1
jmp 0x9cd42d
cmp ecx, 0x5dbf
jg 0x9ce495
cmp ecx, 0x5621
nop
jg 0x9ce51d
cmp ecx, 0x3e7f
lea esi, [esi]
jle 0x9ce527
mov edi, 0x3e80
nop
lea esi, [esi]
jmp 0x9ccb7c
mov dword [edx + 0x28], 3
lea esi, [esi]
jmp 0x9cd9bc
mov edi, 0x5dc0
jmp 0x9ccb7c
mov ecx, dword [ebp + 8]
fld dword [0xbfb5f4]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb610]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb5ec]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb600]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb604]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb608]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb60c]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb5f8]
jmp 0x9ccb2d
mov ecx, dword [ebp + 8]
fld dword [0xbfb5fc]
jmp 0x9ccb2d
mov edi, 0x5622
jmp 0x9ccb7c
cmp ecx, 0x2edf
jg 0x9ce545
cmp ecx, 0x2b10
jle 0x9ce5dc
mov edi, 0x2b11
jmp 0x9ccb7c
mov edi, 0x2ee0
jmp 0x9ccb7c
mov eax, dword [ecx + 0xc]
mov dword [esp + 8], eax
mov edi, dword [ecx + 0x118]
mov dword [esp], edx
mov dword [esp + 4], edi
call fcn.009d3b70
test eax, eax
mov dword [esi + 0x7cb4], eax
jns 0x9cda4f
jmp 0x9ce34f
mov edi, dword [eax + 0xc]
mov dword [esp + 8], edi
mov ebx, dword [eax + 0x118]
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.009d3b70
test eax, eax
mov dword [esi + 0x7cb8], eax
jns 0x9cda60
jmp 0x9ce34f
mov dword [esp + 4], 0x20e88
mov dword [esp], 1
call sub.msvcrt.dll_calloc
test eax, eax
mov dword [esi + 0x21d40], eax
jne 0x9cc9da
mov edx, 0xfffffffe
jmp 0x9cdd87
cmp ecx, 0x1f3f
jle 0x9ccb7c
mov edi, 0x1f40
lea esi, [esi]
jmp 0x9ccb7c
mov dword [esp + 4], 0x110
mov dword [esp], 1
call sub.msvcrt.dll_calloc
test eax, eax
mov dword [esi + 0x21d24], eax
jne 0x9cc9cc
jmp 0x9ce5d2
mov dword [esp + 4], 0x9d4
mov dword [esp], 1
call sub.msvcrt.dll_calloc
test eax, eax
mov dword [esi + 0x21d20], eax
jne 0x9cc9be
jmp 0x9ce5d2