Function at 0x6de36920
Capabilities:
Inspect section memory permissions

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x638
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x12fcc]
mov ecx, dword [ebx + 0x12fa4]
mov edx, dword [ebx + 0x13284]
mov dword [ebp - 0x78], ecx
mov ecx, dword [ebx + 0x13278]
mov dword [ebp - 0x20], eax
mov eax, dword [ebx + 0x12fc8]
add ecx, eax
mov dword [ebp - 0x30], ecx
mov ecx, dword [ebx + 0x1327c]
add ecx, eax
add edx, eax
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebx + 0x13280]
add ecx, eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x130a8]
mov eax, dword [eax + 0x268]
mov dword [ebp - 0xbc], edx
mov edx, dword [ebx + 0x12fd4]
mov dword [ebp - 0x50], edx
mov edx, dword [ebx + 0x12fc0]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebx + 0x12fbc]
mov edi, dword [ebx + 0x12fdc]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x6c], ecx
xor ecx, ecx
mov dword [ebp - 0x28], edx
mov edx, dword [ebx + 0x12fe0]
xor esi, esi
test eax, 0x8000000
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x48], edx
mov dword [ebp - 0xe8], edi
jne 0x6de36a3c
mov eax, dword [ebx + 0x13268]
add eax, edi
mov dword [ebp - 0x58], eax
mov eax, dword [ebx + 0x1326c]
add eax, edi
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x13270]
add eax, edi
mov dword [ebp - 0x38], eax
mov eax, dword [ebx + 0x13274]
add eax, edi
lea edx, [edi + 0xc]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebx + 0x1325c]
mov dword [ebp - 0x5c], edx
lea edx, [edx + eax*4]
mov eax, dword [ebx + 0x12fd0]
test eax, eax
mov dword [ebp - 0x54], edx
je 0x6de36abb
mov eax, dword [ebx + 0x13264]
add eax, edi
mov dword [ebp - 0xe8], eax
jmp 0x6de36abb
mov eax, dword [ebx + 0x12fe4]
mov edx, dword [ebx + 0x13004]
mov ecx, dword [ebx + 0x12ff4]
mov esi, dword [ebx + 0x13054]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebx + 0x1300c]
mov dword [ebp - 0x3c], edx
mov edx, dword [ebx + 0x12ffc]
mov dword [ebp - 0x38], eax
mov eax, dword [ebx + 0x12fec]
mov dword [ebp - 0x8c], edx
mov edx, dword [ebx + 0x12fd0]
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebx + 0x1305c]
mov dword [ebp - 0x54], eax
xor eax, eax
test edx, edx
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x74], ecx
jbe 0x6de36abb
lea edx, [ebx + 0x13014]
mov dword [ebp + 8], edx
lea esp, [esp]
mov edx, dword [ebp + 8]
mov edx, dword [edx]
mov dword [ebp + eax*4 - 0xe8], edx
add dword [ebp + 8], 8
mov edx, dword [ebx + 0x12fd0]
inc eax
cmp eax, edx
jb 0x6de36aa0
mov eax, dword [ebp - 0x94]
test ah, 0x20
jne 0x6de36ad9
lea eax, [ebx + 0x11a88]
mov dword [ebp - 0x54], eax
xor eax, eax
mov dword [ebx + 0x12ff0], eax
jmp 0x6de36adb
xor eax, eax
mov dword [ebx + 0x11af8], eax
mov dword [ebx + 0x11b50], eax
mov eax, dword [ebx + 0x12fa8]
test ah, 4
mov dword [ebx + 0x11ac8], 0xffffffff
mov dword [ebp + 8], eax
mov edx, 1
je 0x6de36c46
lea edx, [ebx + 0x11aac]
mov edi, dword [edx]
lea eax, [ebx + 0x11a9c]
mov dword [eax], edi
mov edi, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], edi
xor edi, edi
mov dword [eax + 8], edx
mov eax, dword [ebx + 0x12fbc]
test eax, 0x10000000
mov dword [ebx + 0x11abc], edi
mov dword [ebx + 0x11ac0], edi
mov dword [ebx + 0x11ac4], edi
je 0x6de36c3e
mov edx, dword [ebx + 0x12fb8]
test dl, 0x40
je 0x6de36bc4
cmp dword [ebx + 0x11b90], edi
jne 0x6de36b73
mov eax, dword [ebp + 8]
or eax, 0x2200
mov dword [ebx + 0x12fa8], eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0xc8], eax
cmp dword [ebx + 0x11b88], edi
jne 0x6de36b8e
or dword [ebx + 0x12fa8], 0x4200
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x98], eax
cmp dword [ebx + 0x11b84], edi
jne 0x6de36ba9
or dword [ebx + 0x12fa8], 0x10200
lea eax, [ebp - 0x3c]
mov dword [ebp - 0xc0], eax
cmp dword [ebx + 0x11b8c], edi
jne 0x6de36bc4
or dword [ebx + 0x12fa8], 0x8200
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x9c], eax
test dl, dl
mov edx, 1
jns 0x6de36c43
cmp dword [ebx + 0x11b90], edx
jne 0x6de36be8
or dword [ebx + 0x12fa8], 0x2200
lea eax, [ebp - 0x38]
mov dword [ebp - 0xc8], eax
cmp dword [ebx + 0x11b88], edx
jne 0x6de36c03
or dword [ebx + 0x12fa8], 0x4200
lea eax, [ebp - 0x38]
mov dword [ebp - 0x98], eax
cmp dword [ebx + 0x11b84], edx
jne 0x6de36c1e
or dword [ebx + 0x12fa8], 0x10200
lea eax, [ebp - 0x38]
mov dword [ebp - 0xc0], eax
cmp dword [ebx + 0x11b8c], edx
mov edi, dword [ebp - 0x4c]
jne 0x6de36c46
or dword [ebx + 0x12fa8], 0x8200
lea eax, [ebp - 0x38]
mov dword [ebp - 0x9c], eax
jmp 0x6de36c46
mov edx, 1
mov edi, dword [ebp - 0x4c]
mov eax, dword [ebx + 0x130a8]
cmp dword [eax + 0x274], 0
je 0x6de36c7c
mov dword [ebp - 0x70], edx
mov edx, dword [eax + 0x278]
mov dword [ebp - 0xf8], edx
mov edx, dword [eax + 0x27c]
mov eax, dword [eax + 0x280]
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x12c], eax
mov edx, dword [ebx + 0x12fa8]
test edx, 0x10000000
je 0x6de36c91
mov dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x48]
lea eax, [eax + eax*4]
shl eax, 1
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x28]
lea eax, [eax + eax*4]
shl eax, 1
mov dword [ebp - 0x7c], eax
mov eax, dword [ebx + 0x12ff8]
mov dword [ebp - 0x84], eax
lea eax, [eax + eax*4]
shl eax, 1
mov dword [ebp - 0x100], eax
mov eax, dword [ebx + 0x12fe8]
lea eax, [eax + eax*4]
shl eax, 1
mov dword [ebp - 0x108], eax
mov eax, dword [ebx + 0x12ff0]
lea eax, [eax + eax*4]
shl eax, 1
mov dword [ebp - 0x110], eax
test dword [ebp - 0x94], 0x80000
jne 0x6de36d0f
mov dword [ebp - 0xc4], 0x6de36220
mov dword [ebx + 0x11c1c], 0xffffffff
mov dword [ebx + 0x11c18], 0
jmp 0x6de36d27
xor eax, eax
mov dword [ebp - 0xc4], 0x6de36690
mov dword [ebx + 0x11c1c], eax
mov dword [ebx + 0x11c18], eax
test dl, 0xc0
je 0x6de36d5b
test dl, 0x40
mov eax, dword [ebx + 0x130a8]
mov eax, dword [eax + 0x2a8]
mov dword [ebx + 0x13254], eax
je 0x6de36d4d
mov dword [ebx + 0x12fe0], 0xc
test dl, dl
jns 0x6de36d5b
mov dword [ebx + 0x12ff8], 0xc
mov eax, edi
mov edi, dword [ebp - 0x58]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], edi
mov edx, dword [ebp - 0x78]
cmp edx, 0xa
jb 0x6de36d73
mov edx, 0xa
test byte [ebx + 0x12fa8], 0x40
mov dword [ebp - 0x60], edx
je 0x6de36f0a
xor ecx, ecx
cmp edx, 4
mov dword [ebp + 8], ecx
jl 0x6de36e95
fld dword [ebx + 0x13254]
add edx, 0xfffffffc
shr edx, 2
inc edx
mov dword [ebp - 0x64], edx
shl edx, 2
lea ecx, [ebp - 0x200]
mov dword [ebp + 8], edx
lea ecx, [ecx]
fld dword [esi]
mov edx, dword [ebp - 0x48]
fsub dword [eax]
fmul st(1)
fadd dword [eax]
fstp dword [ecx - 8]
fld dword [esi + 4]
fsub dword [eax + 4]
fmul st(1)
fadd dword [eax + 4]
fstp dword [ecx - 4]
fld dword [esi + 8]
fsub dword [eax + 8]
fmul st(1)
fadd dword [eax + 8]
add eax, edx
add esi, dword [ebx + 0x13058]
fstp dword [ecx]
mov edx, dword [ebp - 0x48]
fld dword [esi]
fsub dword [eax]
fmul st(1)
fadd dword [eax]
fstp dword [ecx + 4]
fld dword [esi + 4]
fsub dword [eax + 4]
fmul st(1)
fadd dword [eax + 4]
fstp dword [ecx + 8]
fld dword [esi + 8]
fsub dword [eax + 8]
fmul st(1)
fadd dword [eax + 8]
add eax, edx
add esi, dword [ebx + 0x13058]
fstp dword [ecx + 0xc]
mov edx, dword [ebp - 0x48]
fld dword [esi]
fsub dword [eax]
fmul st(1)
fadd dword [eax]
fstp dword [ecx + 0x10]
fld dword [esi + 4]
fsub dword [eax + 4]
fmul st(1)
fadd dword [eax + 4]
fstp dword [ecx + 0x14]
fld dword [esi + 8]
fsub dword [eax + 8]
fmul st(1)
fadd dword [eax + 8]
add eax, edx
add esi, dword [ebx + 0x13058]
fstp dword [ecx + 0x18]
fld dword [esi]
fsub dword [eax]
fmul st(1)
fadd dword [eax]
fstp dword [ecx + 0x1c]
fld dword [esi + 4]
fsub dword [eax + 4]
fmul st(1)
fadd dword [eax + 4]
fstp dword [ecx + 0x20]
fld dword [esi + 8]
fsub dword [eax + 8]
mov edx, dword [ebp - 0x48]
fmul st(1)
add ecx, 0x30
fadd dword [eax + 8]
add eax, edx
add esi, dword [ebx + 0x13058]
mov edx, dword [ebp - 0x64]
fstp dword [ecx - 0xc]
dec edx
mov dword [ebp - 0x64], edx
jne 0x6de36db0
mov edx, dword [ebp - 0x60]
fstp st(0)
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x64], eax
cmp ecx, edx
jae 0x6de36efe
fld dword [ebx + 0x13254]
lea ecx, [ecx + ecx*2]
lea ecx, [ebp + ecx*4 - 0x200]
mov dword [ebp - 4], ecx
sub edx, dword [ebp + 8]
mov ecx, dword [ebp - 4]
mov dword [ebp + 8], edx
fld dword [esi]
mov edx, dword [ebp - 0x48]
fsub dword [eax]
add ecx, 0xc
fmul st(1)
fadd dword [eax]
fstp dword [ecx - 0x14]
fld dword [esi + 4]
fsub dword [eax + 4]
fmul st(1)
fadd dword [eax + 4]
fstp dword [ecx - 0x10]
fld dword [esi + 8]
fsub dword [eax + 8]
fmul st(1)
fadd dword [eax + 8]
add eax, edx
add esi, dword [ebx + 0x13058]
mov edx, dword [ebp + 8]
fstp dword [ecx - 0xc]
dec edx
mov dword [ebp + 8], edx
jne 0x6de36eb5
mov edx, dword [ebp - 0x60]
fstp st(0)
mov dword [ebp - 0x80], esi
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x74]
lea eax, [ebp - 0x208]
mov dword [ebp - 0x4c], eax
mov al, byte [ebx + 0x12fa8]
test al, al
jns 0x6de3708f
xor eax, eax
cmp edx, 4
mov dword [ebp + 8], eax
jl 0x6de3701f
fld dword [ebx + 0x13254]
mov esi, dword [ebx + 0x13060]
add edx, 0xfffffffc
shr edx, 2
inc edx
mov dword [ebp - 0x68], edx
shl edx, 2
lea eax, [ebp - 0x278]
mov dword [ebp + 8], edx
jmp 0x6de36f50
fld dword [ecx]
mov edx, dword [ebp - 0x84]
fsub dword [edi]
fmul st(1)
fadd dword [edi]
fstp dword [eax - 8]
fld dword [ecx + 4]
fsub dword [edi + 4]
fmul st(1)
fadd dword [edi + 4]
fstp dword [eax - 4]
fld dword [ecx + 8]
add ecx, esi
fsub dword [edi + 8]
fmul st(1)
fadd dword [edi + 8]
add edi, edx
fstp dword [eax]
fld dword [ecx]
fsub dword [edi]
fmul st(1)
fadd dword [edi]
fstp dword [eax + 4]
fld dword [ecx + 4]
fsub dword [edi + 4]
fmul st(1)
fadd dword [edi + 4]
fstp dword [eax + 8]
fld dword [ecx + 8]
add ecx, esi
fsub dword [edi + 8]
fmul st(1)
fadd dword [edi + 8]
add edi, edx
fstp dword [eax + 0xc]
fld dword [ecx]
fsub dword [edi]
fmul st(1)
fadd dword [edi]
fstp dword [eax + 0x10]
fld dword [ecx + 4]
fsub dword [edi + 4]
fmul st(1)
fadd dword [edi + 4]
fstp dword [eax + 0x14]
fld dword [ecx + 8]
add ecx, esi
fsub dword [edi + 8]
fmul st(1)
fadd dword [edi + 8]
add edi, edx
fstp dword [eax + 0x18]
fld dword [ecx]
fsub dword [edi]
fmul st(1)
fadd dword [edi]
fstp dword [eax + 0x1c]
fld dword [ecx + 4]
fsub dword [edi + 4]
fmul st(1)
fadd dword [edi + 4]
fstp dword [eax + 0x20]
fld dword [ecx + 8]
fsub dword [edi + 8]
fmul st(1)
fadd dword [edi + 8]
add edi, edx
add ecx, esi
fstp dword [eax + 0x24]
mov edx, dword [ebp - 0x68]
add eax, 0x30
dec edx
mov dword [ebp - 0x68], edx
jne 0x6de36f50
mov eax, dword [ebp + 8]
fstp st(0)
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x68], edi
cmp eax, edx
jae 0x6de37086
fld dword [ebx + 0x13254]
mov esi, edx
mov edx, dword [ebp + 8]
lea eax, [eax + eax*2]
lea eax, [ebp + eax*4 - 0x278]
sub esi, edx
lea ebx, [ebx]
fld dword [ecx]
mov edx, dword [ebp - 0x84]
fsub dword [edi]
add eax, 0xc
fmul st(1)
fadd dword [edi]
fstp dword [eax - 0x14]
fld dword [ecx + 4]
fsub dword [edi + 4]
fmul st(1)
fadd dword [edi + 4]
fstp dword [eax - 0x10]
fld dword [ecx + 8]
fsub dword [edi + 8]
fmul st(1)
fadd dword [edi + 8]
add edi, edx
add ecx, dword [ebx + 0x13060]
dec esi
fstp dword [eax - 0xc]
jne 0x6de37040
mov edx, dword [ebp - 0x60]
fstp st(0)
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x68], edi
lea eax, [ebp - 0x280]
mov dword [ebp - 0x58], eax
mov esi, dword [ebp - 0x4c]
lea ecx, [ebp - 0x20]
push ecx
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x5c]
push ecx
push eax
push esi
push edx
push ebx
call dword [ebp - 0xc4]
mov ecx, dword [ebx + 0x12fa8]
add esp, 0x1c
test ch, 5
mov dword [ebp + 8], eax
jne 0x6de370cf
mov ecx, dword [ebp - 0x70]
test ecx, ecx
jne 0x6de370cf
test dword [ebx + 0x12fbc], 0x60000000
je 0x6de370ed
xor eax, eax
mov ecx, 0xaa
lea edi, [ebp - 0x548]
rep stosd dword es:[edi], eax
test dword [ebx + 0x12fbc], 0x60000000
mov eax, dword [ebp + 8]
jne 0x6de370f8
mov ecx, dword [ebp - 0x70]
test ecx, ecx
je 0x6de37577
test eax, eax
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x18], ecx
je 0x6de37577
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
lea esi, [ebp - 0x51c]
mov dword [ebp - 4], edx
jmp 0x6de37130
test dword [ebx + 0x12fbc], 0x20000000
jne 0x6de3714b
mov edi, dword [ebp - 0x70]
xor edx, edx
cmp edi, edx
je 0x6de372ff
jmp 0x6de3714d
xor edx, edx
cmp dword [ebx + 0x13258], edx
jne 0x6de371ce
fld dword [ebx + 0x8290]
fmul dword [ecx + 4]
fld dword [ebx + 0x82a0]
fmul dword [ecx + 8]
faddp st(1)
fld dword [ebx + 0x8280]
fmul dword [ecx]
faddp st(1)
fadd dword [ebx + 0x82b0]
fstp dword [esi - 4]
fld dword [ebx + 0x8294]
fmul dword [ecx + 4]
fld dword [ebx + 0x82a4]
fmul dword [ecx + 8]
faddp st(1)
fld dword [ebx + 0x8284]
fmul dword [ecx]
faddp st(1)
fadd dword [ebx + 0x82b4]
fstp dword [esi]
fld dword [ebx + 0x8298]
fmul dword [ecx + 4]
fld dword [ebx + 0x82a8]
fmul dword [ecx + 8]
faddp st(1)
fld dword [ebx + 0x8288]
fmul dword [ecx]
faddp st(1)
fadd dword [ebx + 0x82b8]
fstp dword [esi + 4]
jmp 0x6de372fb
mov edi, dword [ebx + 0x1325c]
mov dword [ebp - 0xa0], 0
mov dword [esi - 4], edx
mov dword [esi], edx
mov dword [esi + 4], edx
mov dword [ebp - 8], edx
cmp edx, edi
jne 0x6de371fe
fld dword [0x6dd37a68]
fsub dword [ebp - 0xa0]
fstp dword [ebp - 0xc]
jmp 0x6de37213
mov edi, dword [ebp - 0x34]
fld dword [edi + edx*4]
fst dword [ebp - 0xc]
fadd dword [ebp - 0xa0]
fstp dword [ebp - 0xa0]
mov edi, dword [ebp - 0x18]
movzx edx, byte [edx + edi]
lea edi, [edx + 0x20a]
shl edi, 6
mov dword [ebp - 0x10], edx
mov edx, dword [ebx + edx*8 + 0x10a84]
add edi, ebx
cmp edx, dword [ebx + 0x11a84]
ja 0x6de37284
jb 0x6de3724b
mov edx, dword [ebp - 0x10]
mov edx, dword [ebx + edx*8 + 0x10a80]
cmp edx, dword [ebx + 0x11a80]
jae 0x6de37284
mov eax, dword [ebp - 0x10]
add eax, 0xa
shl eax, 6
push ebx
add eax, ebx
push eax
push edi
call fcn.6de199f0
mov ecx, dword [ebx + 0x11a80]
mov eax, dword [ebp - 0x10]
mov dword [ebx + eax*8 + 0x10a80], ecx
mov edx, dword [ebx + 0x11a84]
mov ecx, dword [ebp - 0x14]
mov dword [ebx + eax*8 + 0x10a84], edx
mov eax, dword [ebp - 0x1c]
add esp, 0xc
fld dword [edi + 0x20]
mov edx, dword [ebp - 8]
fmul dword [ecx + 8]
inc edx
fld dword [edi + 0x10]
mov dword [ebp - 8], edx
fmul dword [ecx + 4]
faddp st(1)
fld dword [ecx]
fmul dword [edi]
faddp st(1)
fadd dword [edi + 0x30]
fmul dword [ebp - 0xc]
fadd dword [esi - 4]
fstp dword [esi - 4]
fld dword [edi + 0x24]
fmul dword [ecx + 8]
fld dword [edi + 4]
fmul dword [ecx]
faddp st(1)
fld dword [edi + 0x14]
fmul dword [ecx + 4]
faddp st(1)
fadd dword [edi + 0x34]
fmul dword [ebp - 0xc]
fadd dword [esi]
fstp dword [esi]
fld dword [edi + 0x28]
fmul dword [ecx + 8]
fld dword [edi + 8]
fmul dword [ecx]
faddp st(1)
fld dword [edi + 0x18]
fmul dword [ecx + 4]
faddp st(1)
fadd dword [edi + 0x38]
mov edi, dword [ebx + 0x1325c]
cmp edx, edi
fmul dword [ebp - 0xc]
fadd dword [esi + 4]
fstp dword [esi + 4]
jbe 0x6de371eb
xor edx, edx
or dword [esi + 0x14], 1
test dword [ebx + 0x12fbc], 0x40000000
je 0x6de3753a
cmp dword [ebx + 0x13258], edx
jne 0x6de3737f
fld dword [ebx + 0xc280]
fmul dword [eax]
fld dword [ebx + 0xc284]
fmul dword [eax + 4]
faddp st(1)
fld dword [ebx + 0xc288]
fmul dword [eax + 8]
faddp st(1)
fstp dword [esi + 8]
fld dword [ebx + 0xc290]
fmul dword [eax]
fld dword [ebx + 0xc294]
fmul dword [eax + 4]
faddp st(1)
fld dword [ebx + 0xc298]
fmul dword [eax + 8]
faddp st(1)
fstp dword [esi + 0xc]
fld dword [ebx + 0xc2a0]
fmul dword [eax]
fld dword [ebx + 0xc2a4]
fmul dword [eax + 4]
faddp st(1)
fld dword [ebx + 0xc2a8]
fmul dword [eax + 8]
faddp st(1)
fstp dword [esi + 0x10]
jmp 0x6de3750a
mov dword [ebp - 0x90], 0
mov dword [esi + 8], edx
mov dword [esi + 0xc], edx
mov dword [esi + 0x10], edx
mov dword [ebp - 0x2c], edx
cmp edx, dword [ebx + 0x1325c]
jne 0x6de373ae
fld dword [0x6dd37a68]
fsub dword [ebp - 0x90]
fstp dword [ebp - 0x10]
jmp 0x6de373c3
mov ecx, dword [ebp - 0x34]
fld dword [ecx + edx*4]
fst dword [ebp - 0x10]
fadd dword [ebp - 0x90]
fstp dword [ebp - 0x90]
mov ecx, dword [ebp - 0x18]
movzx ecx, byte [edx + ecx]
mov edx, dword [ebx + 0x11a84]
lea edi, [ecx + 0x30a]
shl edi, 6
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebx + ecx*8 + 0x11284]
add edi, ebx
cmp ecx, edx
ja 0x6de37499
jb 0x6de37405
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebx + edx*8 + 0x11280]
cmp ecx, dword [ebx + 0x11a80]
jae 0x6de37499
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebx + ecx*8 + 0x10a84]
lea eax, [ecx + 0x20a]
shl eax, 6
add eax, ebx
mov dword [ebp - 8], eax
cmp edx, dword [ebx + 0x11a84]
ja 0x6de3746c
jb 0x6de37436
mov eax, dword [ebx + ecx*8 + 0x10a80]
cmp eax, dword [ebx + 0x11a80]
jae 0x6de3746c
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
add ecx, 0xa
shl ecx, 6
push ebx
add ecx, ebx
push ecx
push edx
call fcn.6de199f0
mov ecx, dword [ebx + 0x11a80]
mov eax, dword [ebp - 0xc]
mov dword [ebx + eax*8 + 0x10a80], ecx
mov edx, dword [ebx + 0x11a84]
add esp, 0xc
mov dword [ebx + eax*8 + 0x10a84], edx
mov eax, dword [ebp - 8]
push edi
push eax
call fcn.6de19420
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebx + 0x11a80]
mov dword [ebx + eax*8 + 0x11280], ecx
mov edx, dword [ebx + 0x11a84]
mov dword [ebx + eax*8 + 0x11284], edx
mov eax, dword [ebp - 0x1c]
add esp, 8
fld dword [edi + 4]
mov edx, dword [ebp - 0x2c]
fmul dword [eax + 4]
mov ecx, dword [ebp - 0x14]
fld dword [edi + 8]
inc edx
fmul dword [eax + 8]
mov dword [ebp - 0x2c], edx
faddp st(1)
fld dword [eax]
fmul dword [edi]
faddp st(1)
fmul dword [ebp - 0x10]
fadd dword [esi + 8]
fstp dword [esi + 8]
fld dword [edi + 0x14]
fmul dword [eax + 4]
fld dword [edi + 0x18]
fmul dword [eax + 8]
faddp st(1)
fld dword [edi + 0x10]
fmul dword [eax]
faddp st(1)
fmul dword [ebp - 0x10]
fadd dword [esi + 0xc]
fstp dword [esi + 0xc]
fld dword [edi + 0x24]
fmul dword [eax + 4]
fld dword [edi + 0x28]
fmul dword [eax + 8]
faddp st(1)
fld dword [edi + 0x20]
mov edi, dword [ebx + 0x1325c]
cmp edx, edi
fmul dword [eax]
faddp st(1)
fmul dword [ebp - 0x10]
fadd dword [esi + 0x10]
fstp dword [esi + 0x10]
jbe 0x6de37395
test dword [ebx + 0x12fbc], 0x2000000
je 0x6de37526
lea ecx, [esi + 8]
mov edx, ecx
call fcn.6de19e0c
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
mov edi, dword [esi + 0x14]
mov edx, dword [ebx + 0x12ff8]
or edi, 2
add eax, edx
mov dword [esi + 0x14], edi
mov dword [ebp - 0x1c], eax
mov edx, dword [ebx + 0x12fe0]
mov edi, dword [ebp - 0x34]
add ecx, edx
mov edx, dword [ebx + 0x12fe8]
add edi, edx
mov edx, dword [ebx + 0x12ff0]
mov dword [ebp - 0x34], edi
mov edi, dword [ebp - 0x18]
add edi, edx
mov edx, dword [ebp - 4]
add esi, 0x44
dec edx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], edi
mov dword [ebp - 4], edx
jne 0x6de37130
mov esi, dword [ebp - 0x4c]
mov eax, dword [ebp + 8]
mov ecx, dword [ebx + 0x12fa8]
test ch, 4
je 0x6de37c87
mov edi, dword [ebx + 0x11b58]
test edi, edi
je 0x6de375f4
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x5c]
push edx
push eax
mov eax, dword [ebp + 8]
push ecx
push esi
push edi
lea edx, [ebp - 0x548]
push edx
push eax
push ebx
call dword [edi + 0xbc]
mov edi, dword [edi + 0x58]
add esp, 0x28
test edi, edi
je 0x6de375f4
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x58]
push ecx
mov ecx, dword [ebp - 0x54]
push edx
mov edx, dword [ebp - 0x5c]
push eax
push ecx
mov ecx, dword [ebp + 8]
push edx
push esi
push edi
lea eax, [ebp - 0x548]
push eax
push ecx
push ebx
call dword [edi + 0xc0]
mov edi, dword [edi + 0x58]
add esp, 0x28
test edi, edi
jne 0x6de375c2
mov eax, dword [ebx + 0x12fa8]
test ah, 2
mov ecx, dword [ebp + 8]
je 0x6de37a55
test ecx, ecx
je 0x6de37d30
mov edi, dword [ebp - 0x40]
lea eax, [ebp - 0x534]
mov dword [ebp - 4], ecx
lea ebx, [ebx]
mov ecx, dword [ebx + 0x12fa8]
mov edx, ecx
and edx, 0x12000
mov dword [ebp - 0x2c], edx
je 0x6de377a3
mov edx, dword [eax + 0x2c]
test dl, 8
jne 0x6de37649
xor esi, esi
mov dword [eax - 4], esi
mov dword [eax], esi
mov dword [eax + 4], esi
test ecx, 0x10000
je 0x6de376c5
mov ecx, dword [ebp - 0xc0]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov esi, ecx
shr esi, 0x10
and esi, 0xff
test esi, esi
mov dword [ebp - 8], esi
fild dword [ebp - 8]
jge 0x6de37676
fadd dword [0x6dd37a3c]
fmul dword [ebx + 0x11aec]
mov esi, ecx
shr esi, 8
and esi, 0xff
test esi, esi
fadd dword [eax - 4]
mov dword [ebp - 8], esi
fstp dword [eax - 4]
fild dword [ebp - 8]
jge 0x6de3769d
fadd dword [0x6dd37a3c]
fmul dword [ebx + 0x11af0]
and ecx, 0xff
test ecx, ecx
mov dword [ebp - 8], ecx
fadd dword [eax]
fstp dword [eax]
fild dword [ebp - 8]
jge 0x6de376bd
fadd dword [0x6dd37a3c]
fmul dword [ebx + 0x11af4]
jmp 0x6de376f3
fld dword [ebx + 0x11b1c]
fmul dword [ebx + 0x11adc]
fadd dword [eax - 4]
fstp dword [eax - 4]
fld dword [ebx + 0x11b20]
fmul dword [ebx + 0x11ae0]
fadd dword [eax]
fstp dword [eax]
fld dword [ebx + 0x11b24]
fmul dword [ebx + 0x11ae4]
fadd dword [eax + 4]
mov ecx, dword [ebx + 0x12fa8]
test ch, 0x20
fstp dword [eax + 4]
je 0x6de37766
mov ecx, dword [ebp - 0xc8]
mov ecx, dword [ecx]
mov ecx, dword [ecx]
mov esi, ecx
shr esi, 0x10
and esi, 0xff
test esi, esi
mov dword [ebp - 8], esi
fild dword [ebp - 8]
jge 0x6de37729
fadd dword [0x6dd37a3c]
fadd dword [eax - 4]
mov esi, ecx
shr esi, 8
and esi, 0xff
test esi, esi
fstp dword [eax - 4]
mov dword [ebp - 8], esi
fild dword [ebp - 8]
jge 0x6de3774a
fadd dword [0x6dd37a3c]
fadd dword [eax]
and ecx, 0xff
test ecx, ecx
mov dword [ebp - 8], ecx
fstp dword [eax]
fild dword [ebp - 8]
jge 0x6de37794
fadd dword [0x6dd37a3c]
jmp 0x6de37794
fld dword [ebx + 0x11b3c]
fmul dword [0x6dd37a64]
fadd dword [eax - 4]
fstp dword [eax - 4]
fld dword [ebx + 0x11b40]
fmul dword [0x6dd37a64]
fadd dword [eax]
fstp dword [eax]
fld dword [ebx + 0x11b44]
fmul dword [0x6dd37a64]
fadd dword [eax + 4]
or edx, 8
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x2c]
fstp dword [eax + 4]
test byte [eax + 0x2c], 8
je 0x6de378ae
test edx, edx
jne 0x6de377d3
fld dword [ebx + 0x11aac]
fadd dword [eax - 4]
fstp dword [eax - 4]
fld dword [ebx + 0x11ab0]
fadd dword [eax]
fstp dword [eax]
fld dword [ebx + 0x11ab4]
fadd dword [eax + 4]
fstp dword [eax + 4]
mov edx, dword [eax - 4]
mov dword [ebp - 0x120], edx
fld dword [ebp - 0x120]
fistp qword [ebp - 0x160]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x11c], edx
fld dword [ebp - 0x11c]
fistp qword [ebp - 0x158]
mov edx, dword [eax + 4]
mov edi, dword [ebp - 0x158]
mov dword [ebp - 0x118], edx
fld dword [ebp - 0x118]
fistp qword [ebp - 0x140]
test ecx, ecx
mov edx, dword [ebp - 0x140]
jge 0x6de3782b
xor ecx, ecx
jmp 0x6de37838
cmp ecx, 0xff
jle 0x6de37838
mov ecx, 0xff
test edi, edi
jge 0x6de37840
xor edi, edi
jmp 0x6de3784d
cmp edi, 0xff
jle 0x6de3784d
mov edi, 0xff
mov esi, dword [ebp - 0x140]
test esi, esi
jge 0x6de3785b
xor edx, edx
jmp 0x6de37868
cmp esi, 0xff
jle 0x6de37868
mov edx, 0xff
mov esi, dword [ebx + 0x12fa8]
shl ecx, 8
add ecx, edi
shl ecx, 8
test esi, 0x4000
jne 0x6de37890
add ecx, dword [ebx + 0x11aa8]
mov edi, dword [ebp - 0x40]
add ecx, edx
mov edx, dword [ebp - 0x44]
mov dword [edx], ecx
jmp 0x6de378e4
mov esi, dword [ebp - 0x98]
mov esi, dword [esi]
mov esi, dword [esi]
mov edi, dword [ebp - 0x40]
add ecx, edx
and esi, 0xff000000
add esi, ecx
mov ecx, dword [ebp - 0x44]
mov dword [ecx], esi
jmp 0x6de378e4
mov ecx, dword [ebx + 0x12fa8]
test ch, 0x40
jne 0x6de378c7
mov edx, dword [ebx + 0x11b80]
mov ecx, dword [ebx + 0x11aa8]
jmp 0x6de378dd
mov edx, dword [ebp - 0x98]
mov ecx, dword [edx]
mov edx, dword [ecx]
mov ecx, dword [ebx + 0x11b80]
and edx, 0xff000000
add edx, ecx
mov ecx, dword [ebp - 0x44]
mov dword [ecx], edx
test byte [eax + 0x2c], 4
je 0x6de379c2
mov edx, dword [eax + 8]
mov dword [ebp - 0x128], edx
fld dword [ebp - 0x128]
fistp qword [ebp - 0x180]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0x130], edx
fld dword [ebp - 0x130]
fistp qword [ebp - 0x188]
mov esi, dword [eax + 0x10]
mov edx, dword [ebp - 0x188]
mov dword [ebp - 0xf4], esi
fld dword [ebp - 0xf4]
fistp qword [ebp - 0x138]
test ecx, ecx
mov edi, dword [ebp - 0x138]
jge 0x6de37947
xor ecx, ecx
jmp 0x6de37954
cmp ecx, 0xff
jle 0x6de37954
mov ecx, 0xff
test edx, edx
jge 0x6de3795c
xor edx, edx
jmp 0x6de37969
cmp edx, 0xff
jle 0x6de37969
mov edx, 0xff
mov esi, dword [ebp - 0x138]
test esi, esi
jge 0x6de37977
xor edi, edi
jmp 0x6de37984
cmp esi, 0xff
jle 0x6de37984
mov edi, 0xff
mov esi, dword [ebx + 0x12fa8]
shl ecx, 8
add ecx, edx
shl ecx, 8
test esi, 0x8000
jne 0x6de379a9
add ecx, dword [ebx + 0x11b54]
add ecx, edi
mov edi, dword [ebp - 0x40]
mov dword [edi], ecx
jmp 0x6de37a14
mov edx, dword [ebp - 0x9c]
mov edx, dword [edx]
mov edx, dword [edx]
add ecx, edi
mov edi, dword [ebp - 0x40]
and edx, 0xff000000
add edx, ecx
jmp 0x6de37a12
mov ecx, dword [ebx + 0x12fa8]
test ecx, 0x100000
jne 0x6de37a14
mov edx, dword [ebx + 0x12fbc]
test dh, 8
jne 0x6de379f4
mov cl, byte [ebx + 0x12fb8]
test cl, cl
jns 0x6de379ec
mov ecx, dword [ebp - 0x38]
mov edx, dword [ecx]
jmp 0x6de37a12
mov dword [edi], 0
jmp 0x6de37a14
test ch, ch
js 0x6de37a02
mov ecx, dword [ebx + 0x11b54]
mov dword [edi], ecx
jmp 0x6de37a14
mov edx, dword [ebp - 0x9c]
mov ecx, dword [edx]
mov edx, dword [ecx]
and edx, 0xff000000
mov dword [edi], edx
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x44]
mov edx, dword [ebp - 0x3c]
add esi, ecx
add edi, ecx
mov ecx, dword [ebx + 0x13008]
add edx, ecx
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x44], esi
mov esi, dword [ebp - 0x38]
mov dword [ebp - 0x3c], edx
mov edx, dword [ebx + 0x13010]
add esi, edx
add eax, 0x44
dec ecx
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 4], ecx
jne 0x6de37620
jmp 0x6de37d30
test ecx, ecx
je 0x6de37d30
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 0x534]
mov dword [ebp - 4], ecx
lea esp, [esp]
test byte [eax + 0x2c], 8
je 0x6de37b44
fld dword [ebx + 0x11aac]
fadd dword [eax - 4]
fst dword [eax - 4]
fld dword [ebx + 0x11ab0]
fadd dword [eax]
fstp dword [eax]
fld dword [ebx + 0x11ab4]
fadd dword [eax + 4]
fstp dword [eax + 4]
fstp dword [ebp - 0x2c]
fld dword [ebp - 0x2c]
fistp qword [ebp - 0x190]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x190]
mov dword [ebp - 0x114], edx
fld dword [ebp - 0x114]
fistp qword [ebp - 0x170]
mov esi, dword [eax + 4]
mov edx, dword [ebp - 0x170]
mov dword [ebp - 0xfc], esi
fld dword [ebp - 0xfc]
fistp qword [ebp - 0x148]
test ecx, ecx
mov esi, dword [ebp - 0x148]
jge 0x6de37aeb
xor ecx, ecx
jmp 0x6de37af8
cmp ecx, 0xff
jle 0x6de37af8
mov ecx, 0xff
test edx, edx
jge 0x6de37b00
xor edx, edx
jmp 0x6de37b0d
cmp edx, 0xff
jle 0x6de37b0d
mov edx, 0xff
mov edi, dword [ebp - 0x148]
test edi, edi
jge 0x6de37b1b
xor esi, esi
jmp 0x6de37b28
cmp edi, 0xff
jle 0x6de37b28
mov esi, 0xff
mov edi, dword [ebx + 0x11aa8]
shl ecx, 8
add ecx, edx
mov edx, dword [ebp - 0x44]
shl ecx, 8
add ecx, edi
add ecx, esi
mov dword [edx], ecx
mov edx, dword [ebp - 0x40]
jmp 0x6de37b57
mov esi, dword [ebx + 0x11aa8]
mov ecx, dword [ebx + 0x11b80]
add ecx, esi
mov esi, dword [ebp - 0x44]
mov dword [esi], ecx
test byte [eax + 0x2c], 4
je 0x6de37c0e
mov edx, dword [eax + 8]
mov dword [ebp - 0x124], edx
fld dword [ebp - 0x124]
fistp qword [ebp - 0x178]
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x178]
mov dword [ebp - 0x104], edx
fld dword [ebp - 0x104]
fistp qword [ebp - 0x168]
mov esi, dword [eax + 0x10]
mov edx, dword [ebp - 0x168]
mov dword [ebp - 0xec], esi
fld dword [ebp - 0xec]
fistp qword [ebp - 0x150]
test ecx, ecx
mov esi, dword [ebp - 0x150]
jge 0x6de37bba
xor ecx, ecx
jmp 0x6de37bc7
cmp ecx, 0xff
jle 0x6de37bc7
mov ecx, 0xff
test edx, edx
jge 0x6de37bcf
xor edx, edx
jmp 0x6de37bdc
cmp edx, 0xff
jle 0x6de37bdc
mov edx, 0xff
mov edi, dword [ebp - 0x150]
test edi, edi
jge 0x6de37bea
xor esi, esi
jmp 0x6de37bf7
cmp edi, 0xff
jle 0x6de37bf7
mov esi, 0xff
mov edi, dword [ebx + 0x11b54]
shl ecx, 8
add ecx, edx
mov edx, dword [ebp - 0x40]
shl ecx, 8
add ecx, edi
add ecx, esi
jmp 0x6de37c44
test dword [ebx + 0x12fa8], 0x100000
jne 0x6de37c46
mov ecx, dword [ebx + 0x12fbc]
test ch, 8
jne 0x6de37c3e
mov cl, byte [ebx + 0x12fb8]
test cl, cl
jns 0x6de37c36
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ecx]
jmp 0x6de37c44
mov dword [edx], 0
jmp 0x6de37c46
mov ecx, dword [ebx + 0x11b54]
mov dword [edx], ecx
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x44]
mov edi, dword [ebp - 0x3c]
add esi, ecx
add edx, ecx
mov ecx, dword [ebx + 0x13008]
add edi, ecx
mov ecx, dword [ebx + 0x13010]
mov dword [ebp - 0x44], esi
mov esi, dword [ebp - 0x38]
add esi, ecx
mov ecx, dword [ebp - 4]
add eax, 0x44
dec ecx
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 4], ecx
jne 0x6de37a70
jmp 0x6de37d30
test ecx, ecx
js 0x6de37cd2
test byte [ebx + 0x12fb8], 0x40
je 0x6de37cb8
test eax, eax
je 0x6de37cd2
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
mov esi, eax
mov edi, dword [ecx]
mov dword [edx], edi
add edx, dword [ebp - 0x28]
add ecx, dword [ebx + 0x13008]
dec esi
jne 0x6de37ca0
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x44], edx
jmp 0x6de37cd2
test eax, eax
je 0x6de37cd2
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x44]
mov edx, eax
mov dword [ecx], 0xffffffff
add ecx, esi
dec edx
jne 0x6de37cc4
mov dword [ebp - 0x44], ecx
test dword [ebx + 0x12fa8], 0x100000
mov esi, dword [ebp - 0x28]
jne 0x6de37d30
mov cl, byte [ebx + 0x12fb8]
test cl, cl
jns 0x6de37d19
test eax, eax
je 0x6de37d30
mov ecx, dword [ebp - 0x40]
mov edx, eax
mov eax, dword [ebp - 0x38]
jmp 0x6de37d00
mov edi, dword [eax]
mov dword [ecx], edi
mov edi, dword [ebx + 0x13010]
add ecx, esi
add eax, edi
dec edx
jne 0x6de37d00
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x40], ecx
jmp 0x6de37d30
test eax, eax
je 0x6de37d30
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [eax], 0
add eax, esi
dec ecx
jne 0x6de37d22
mov dword [ebp - 0x40], eax
mov eax, dword [ebx + 0x12fa8]
test ah, 1
je 0x6de37db7
mov eax, dword [ebp + 8]
test eax, eax
je 0x6de37db7
mov eax, dword [ebp - 0x94]
mov edx, dword [ebp + 8]
mov esi, dword [ebp - 0x6c]
and eax, 4
mov dword [ebp - 0x2c], eax
lea edi, [ebp - 0x518]
mov dword [ebp - 4], edx
jmp 0x6de37d62
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x6de37d8e
fld dword [edi]
fld dword [edi - 4]
fld dword [edi - 8]
fld st(1)
fmul st(2)
fld st(1)
fmul st(2)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp st(3)
fstp st(0)
fstp st(0)
fstp dword [ebp - 0x6c]
mov eax, dword [ebp - 0x6c]
jmp 0x6de37d98
mov eax, dword [edi]
mov dword [ebp - 0x6c], eax
and eax, 0x7fffffff
push esi
push eax
push ebx
call fcn.6de1aca0
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
add esp, 0xc
add esi, edx
add edi, 0x44
dec eax
mov dword [ebp - 4], eax
jne 0x6de37d5f
mov dword [ebp - 0x6c], esi
test byte [ebx + 0x12fc4], 0x20
je 0x6de37e7f
mov eax, dword [ebp + 8]
test eax, eax
je 0x6de37e7f
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ebp - 0xbc]
lea edi, [ebp - 0x51c]
mov esi, eax
test byte [ebx + 0x12fb8], 0x20
je 0x6de37df0
fld dword [ecx]
jmp 0x6de37df6
fld dword [ebp - 0x10c]
mov eax, dword [ebp - 0x70]
test eax, eax
je 0x6de37e5f
fld dword [edi + 4]
fld dword [edi]
fld dword [edi - 4]
fld st(0)
fmul st(1)
fld st(3)
fmul st(4)
faddp st(1)
fld st(2)
fmul st(3)
faddp st(1)
fsqrt
fstp st(3)
fstp st(0)
fstp st(0)
fld dword [ebp - 0x12c]
fmul st(1)
fadd dword [ebp - 0xf0]
fmulp st(1)
fadd dword [ebp - 0xf8]
fcom dword [0x6dd31404]
fnstsw ax
test ah, 0x41
jp 0x6de37e4c
fstp st(0)
fstp st(0)
fld dword [ebx + 0x13820]
jmp 0x6de37e5c
fdivr qword [0x6dd31688]
fsqrt
fmul dword [ebx + 0x11bf8]
fmulp st(1)
add edi, 0x44
mov eax, dword [ebp - 0x28]
fstp dword [edx]
add edx, eax
add ecx, dword [ebx + 0x13000]
dec esi
jne 0x6de37de3
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0xbc], edx
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x6de389c4
mov eax, dword [ebx + 0x12fbc]
test eax, 0x8000000
je 0x6de38484
test eax, 0x4010000
jne 0x6de37f50
mov eax, dword [ebp + 8]
test eax, eax
je 0x6de389c4
mov ecx, eax
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x50]
mov edi, dword [ebp - 0x30]
xor eax, eax
test ecx, ecx
mov dword [ebp - 4], edi
jbe 0x6de37f33
lea edx, [ebx + 0x13018]
lea ecx, [ebx + 0x13068]
mov dword [ebp - 0x2c], edx
mov dword [ebp - 8], ecx
jmp 0x6de37ee0
mov edx, dword [ebp - 8]
mov ecx, dword [edx]
mov esi, dword [ebp + eax*4 - 0xe8]
mov dword [ebp - 0x34], ecx
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 4]
mov esi, dword [ebp + eax*4 - 0xe8]
mov ecx, edx
add edi, ecx
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx]
add edx, esi
add ecx, 8
mov dword [ebp + eax*4 - 0xe8], edx
mov edx, dword [ebp - 8]
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x50]
inc eax
add edx, 4
cmp eax, ecx
mov dword [ebp - 4], edi
mov dword [ebp - 8], edx
jb 0x6de37ee0
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x30]
add ecx, eax
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x18], eax
jne 0x6de37eb6
jmp 0x6de389c4
test eax, 0x10000
jne 0x6de38073
mov eax, dword [ebp - 0x50]
test eax, eax
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 8], 0
jbe 0x6de38066
lea edx, [ebx + 0x131d0]
lea eax, [ebx + 0x13018]
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x34], eax
jmp 0x6de37f90
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x34]
mov esi, dword [edx - 0x168]
mov edi, dword [eax]
mov ecx, dword [edx - 0x148]
mov edx, dword [edx]
test edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0xe8]
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], edi
jne 0x6de37ffe
mov ecx, dword [ebp + 8]
test ecx, ecx
mov edi, dword [ebp - 0x18]
mov dword [ebp - 4], edi
je 0x6de38020
mov dword [ebp - 0x2c], ecx
lea ebx, [ebx]
mov ecx, dword [ebp - 0x10]
mov edx, ecx
shr ecx, 2
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x28]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 4]
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x2c]
add edi, edx
add eax, esi
dec ecx
mov dword [ebp - 4], edi
mov dword [ebp - 0x2c], ecx
jne 0x6de37fd0
jmp 0x6de38020
shr esi, 2
shr ecx, 2
lea ecx, [ecx + esi*4]
mov esi, dword [ebp - 0x28]
push esi
mov esi, dword [ebp + 8]
push edi
push esi
push edx
mov edx, dword [ebp - 0x18]
push edx
push eax
call dword [ecx*4 + 0x6de439c4]
add esp, 0x18
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp - 0x34]
add ecx, eax
mov eax, dword [ebp - 0x14]
lea edx, [eax + eax*4]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp + eax*4 - 0xe8]
lea ecx, [ecx + edx*2]
mov edx, dword [ebp - 0xc]
mov dword [ebp + eax*4 - 0xe8], ecx
mov ecx, dword [ebp - 0x50]
inc eax
add esi, 8
add edx, 4
cmp eax, ecx
mov dword [ebp - 8], eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0xc], edx
jb 0x6de37f90
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x30]
add eax, edx
jmp 0x6de389c1
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xc], eax
mov eax, dword [ebx + 0x131cc]
test eax, eax
mov dword [ebp - 0x2c], 0
jbe 0x6de38435
lea ecx, [ebx + 0x13068]
lea edx, [ebx + 0x130c8]
mov dword [ebp - 8], ecx
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
mov esi, dword [ebp - 0x14]
mov eax, dword [esi]
test eax, eax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x18], ecx
jne 0x6de380ca
mov ecx, dword [esi - 0x1c]
mov eax, dword [ebp + ecx*4 - 0xe8]
mov ecx, dword [ebx + ecx*8 + 0x13018]
jmp 0x6de382f1
cmp eax, 0x20000
jne 0x6de380e1
lea eax, [ebp - 0x520]
mov ecx, 0x44
jmp 0x6de382f1
cmp eax, 0x10000
jne 0x6de380f8
lea eax, [ebp - 0x514]
mov ecx, 0x44
jmp 0x6de382f1
test dword [ebx + 0x12fbc], 0x1000000
je 0x6de381ad
test edx, edx
jbe 0x6de382e6
lea edi, [ebp - 0x5b8]
lea esi, [ebp - 0x50c]
mov dword [ebp - 4], edx
nop
lea edx, [esi - 0x14]
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [ebp - 0xb0], edx
lea edx, [ebp - 0xb8]
mov dword [ebp - 0xb4], ecx
mov ecx, edx
mov dword [ebp - 0xb8], eax
call fcn.6de19e0c
fld dword [ebp - 0xb0]
fmul dword [esi]
mov eax, dword [ebp - 4]
fld dword [ebp - 0xb8]
add edi, 0xc
fmul dword [esi - 8]
add esi, 0x44
dec eax
mov dword [ebp - 4], eax
faddp st(1)
fld dword [ebp - 0xb4]
fmul dword [esi - 0x48]
faddp st(1)
fadd st(0), st(0)
fld st(0)
fmul dword [esi - 0x4c]
fsubr dword [ebp - 0xb8]
fstp dword [edi - 0x14]
fld st(0)
fmul dword [esi - 0x48]
fsubr dword [ebp - 0xb4]
fstp dword [edi - 0x10]
fmul dword [esi - 0x44]
fsubr dword [ebp - 0xb0]
fstp dword [edi - 0xc]
jne 0x6de38120
mov edx, dword [ebp + 8]
jmp 0x6de382e3
xor edi, edi
cmp edx, 4
jl 0x6de38298
lea esi, [edx - 4]
shr esi, 2
inc esi
lea ecx, [ebp - 0x5b8]
lea eax, [ebp - 0x50c]
lea edi, [esi*4]
fld dword [eax]
add ecx, 0x30
fadd st(0), st(0)
add eax, 0x110
dec esi
fld st(0)
fmul dword [eax - 0x118]
fchs
fstp dword [ecx - 0x38]
fld st(0)
fmul dword [eax - 0x114]
fchs
fstp dword [ecx - 0x34]
fmul dword [eax - 0x110]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x30]
fld dword [eax - 0xcc]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0xd4]
fchs
fstp dword [ecx - 0x2c]
fld st(0)
fmul dword [eax - 0xd0]
fchs
fstp dword [ecx - 0x28]
fmul dword [eax - 0xcc]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x24]
fld dword [eax - 0x88]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0x90]
fchs
fstp dword [ecx - 0x20]
fld st(0)
fmul dword [eax - 0x8c]
fchs
fstp dword [ecx - 0x1c]
fmul dword [eax - 0x88]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x18]
fld dword [eax - 0x44]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0x4c]
fchs
fstp dword [ecx - 0x14]
fld st(0)
fmul dword [eax - 0x48]
fchs
fstp dword [ecx - 0x10]
fmul dword [eax - 0x44]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0xc]
jne 0x6de381d2
mov esi, dword [ebp - 0x14]
cmp edi, edx
jae 0x6de382e6
mov eax, edi
imul eax, eax, 0x44
lea ecx, [edi + edi*2]
mov esi, edx
lea ecx, [ebp + ecx*4 - 0x5b8]
lea eax, [ebp + eax - 0x50c]
sub esi, edi
fld dword [eax]
add ecx, 0xc
fadd st(0), st(0)
add eax, 0x44
dec esi
fld st(0)
fmul dword [eax - 0x4c]
fchs
fstp dword [ecx - 0x14]
fld st(0)
fmul dword [eax - 0x48]
fchs
fstp dword [ecx - 0x10]
fmul dword [eax - 0x44]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0xc]
jne 0x6de382b6
mov esi, dword [ebp - 0x14]
lea eax, [ebp - 0x5c0]
mov ecx, 0xc
mov edi, dword [esi + 4]
test edi, edi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], ecx
je 0x6de3839f
mov eax, dword [esi - 8]
test eax, eax
mov esi, dword [ebp - 0xc]
jne 0x6de38346
test edx, edx
je 0x6de38403
mov ecx, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 4], ecx
lea ecx, [ecx]
mov edx, dword [ebp - 0x18]
push edx
push esi
push edi
call fcn.6de1bfe0
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
add esp, 0xc
add edi, edx
add esi, ecx
dec eax
mov dword [ebp - 4], eax
jne 0x6de38320
jmp 0x6de38403
test edx, edx
je 0x6de38403
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 4], eax
mov edx, dword [edi - 8]
mov ecx, dword [edi - 4]
push edx
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0x290]
push eax
push edx
call dword [ecx*4 + 0x6de43998]
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x290]
push esi
push ecx
call fcn.6de1bfe0
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x28]
add eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 4]
add esp, 0x18
add esi, ecx
dec eax
mov dword [ebp - 4], eax
jne 0x6de38357
jmp 0x6de38403
mov esi, dword [esi - 8]
test esi, esi
jne 0x6de383e4
test edx, edx
mov eax, dword [ebp - 0xc]
je 0x6de38403
mov ecx, dword [ebp + 8]
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 0x18]
mov edx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x28]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
add esi, edi
add eax, edx
dec ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 4], ecx
jne 0x6de383b6
jmp 0x6de38403
mov edi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov edx, dword [edx - 4]
push edi
push ecx
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0xc]
push esi
push ecx
push eax
call dword [edx*4 + 0x6de439d8]
add esp, 0x18
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
mov ecx, dword [ebx + 0x131cc]
add eax, edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x2c]
inc eax
add esi, 4
add edx, 0x24
cmp eax, ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 8], esi
mov dword [ebp - 0x14], edx
jb 0x6de380a0
mov eax, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebx + 0x12fd0]
add edx, eax
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x30], edx
jbe 0x6de389c4
mov esi, ecx
lea edx, [ebx + 0x13018]
jmp 0x6de38460
mov ecx, dword [edx]
mov edi, dword [ebp + eax*4 - 0xe8]
lea ecx, [ecx + ecx*4]
shl ecx, 1
add edi, ecx
mov dword [ebp + eax*4 - 0xe8], edi
inc eax
add edx, 8
cmp eax, esi
jb 0x6de38460
jmp 0x6de389c4
test eax, 0x4010000
jne 0x6de384de
mov eax, dword [ebp + 8]
test eax, eax
je 0x6de389c4
mov edi, dword [ebp - 0x30]
mov edx, eax
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 4], edx
mov ecx, dword [ebx + 0x12fd8]
mov edx, ecx
shr ecx, 2
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x48]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x30]
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
add edi, esi
add eax, edx
dec ecx
mov dword [ebp - 0x30], edi
mov dword [ebp - 4], ecx
jne 0x6de384a4
mov dword [ebp - 0xe8], eax
jmp 0x6de389c4
test eax, 0x10000
mov ecx, dword [ebp - 0x30]
jne 0x6de385e6
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x50]
test eax, eax
mov dword [ebp - 0x34], ecx
jbe 0x6de385c2
lea edx, [ebx + 0x131d0]
mov dword [ebp - 8], edx
mov dword [ebp - 0x10], eax
nop
mov eax, dword [ebp - 8]
mov ecx, dword [eax - 0x168]
mov edx, dword [eax - 0x148]
mov eax, dword [eax]
test eax, eax
mov dword [ebp - 0xc], ecx
mov dword [ebp - 0x14], edx
jne 0x6de3856e
mov ecx, dword [ebp + 8]
test ecx, ecx
mov edi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 4], edi
je 0x6de38596
mov dword [ebp - 0x2c], ecx
mov edi, edi
mov ecx, dword [ebp - 0xc]
mov edx, ecx
shr ecx, 2
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x28]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 4]
mov esi, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x2c]
add edi, edx
add eax, esi
dec ecx
mov dword [ebp - 4], edi
mov dword [ebp - 0x2c], ecx
jne 0x6de38540
jmp 0x6de38596
shr edx, 2
shr ecx, 2
lea ecx, [edx + ecx*4]
mov edx, dword [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x48]
push edx
mov edx, dword [ebp + 8]
push edx
mov edx, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x34]
push eax
push edx
call dword [ecx*4 + 0x6de439c4]
add esp, 0x18
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x14]
mov esi, dword [ebp - 0x18]
add edx, ecx
mov ecx, dword [ebp - 8]
add esi, eax
mov eax, dword [ebp - 0x10]
add ecx, 4
dec eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x34], edx
mov dword [ebp - 8], ecx
mov dword [ebp - 0x10], eax
jne 0x6de38510
mov esi, dword [ebp - 0xe8]
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x7c]
add esi, edx
add ecx, eax
mov dword [ebp - 0xe8], esi
mov dword [ebp - 0x30], ecx
jmp 0x6de389c4
mov eax, dword [ebx + 0x131cc]
test eax, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x2c], 0
jbe 0x6de389a5
lea edx, [ebx + 0x13068]
lea eax, [ebx + 0x130c8]
mov dword [ebp - 8], edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 8]
mov esi, dword [ebp - 0x14]
mov edx, dword [ecx]
mov eax, dword [esi]
test eax, eax
mov dword [ebp - 0x18], edx
mov edx, dword [ebp + 8]
jne 0x6de38637
mov ecx, dword [ebp - 0xe8]
mov eax, dword [esi - 0x18]
add eax, ecx
mov ecx, dword [ebp - 0x48]
jmp 0x6de38861
cmp eax, 0x20000
jne 0x6de3864e
lea eax, [ebp - 0x520]
mov ecx, 0x44
jmp 0x6de38861
cmp eax, 0x10000
jne 0x6de38665
lea eax, [ebp - 0x514]
mov ecx, 0x44
jmp 0x6de38861
test dword [ebx + 0x12fbc], 0x1000000
je 0x6de3871d
test edx, edx
jbe 0x6de38856
lea edi, [ebp - 0x630]
lea esi, [ebp - 0x50c]
mov dword [ebp - 4], edx
lea esp, [esp]
lea eax, [esi - 0x14]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ebp - 0xa8], edx
lea edx, [ebp - 0xac]
mov dword [ebp - 0xac], ecx
mov ecx, edx
mov dword [ebp - 0xa4], eax
call fcn.6de19e0c
fld dword [ebp - 0xa4]
fmul dword [esi]
mov eax, dword [ebp - 4]
fld dword [ebp - 0xac]
add edi, 0xc
fmul dword [esi - 8]
add esi, 0x44
dec eax
mov dword [ebp - 4], eax
faddp st(1)
fld dword [ebp - 0xa8]
fmul dword [esi - 0x48]
faddp st(1)
fadd st(0), st(0)
fld st(0)
fmul dword [esi - 0x4c]
fsubr dword [ebp - 0xac]
fstp dword [edi - 0x14]
fld st(0)
fmul dword [esi - 0x48]
fsubr dword [ebp - 0xa8]
fstp dword [edi - 0x10]
fmul dword [esi - 0x44]
fsubr dword [ebp - 0xa4]
fstp dword [edi - 0xc]
jne 0x6de38690
mov edx, dword [ebp + 8]
jmp 0x6de38853
xor edi, edi
cmp edx, 4
jl 0x6de38808
lea esi, [edx - 4]
shr esi, 2
inc esi
lea ecx, [ebp - 0x630]
lea eax, [ebp - 0x50c]
lea edi, [esi*4]
fld dword [eax]
add ecx, 0x30
fadd st(0), st(0)
add eax, 0x110
dec esi
fld st(0)
fmul dword [eax - 0x118]
fchs
fstp dword [ecx - 0x38]
fld st(0)
fmul dword [eax - 0x114]
fchs
fstp dword [ecx - 0x34]
fmul dword [eax - 0x110]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x30]
fld dword [eax - 0xcc]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0xd4]
fchs
fstp dword [ecx - 0x2c]
fld st(0)
fmul dword [eax - 0xd0]
fchs
fstp dword [ecx - 0x28]
fmul dword [eax - 0xcc]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x24]
fld dword [eax - 0x88]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0x90]
fchs
fstp dword [ecx - 0x20]
fld st(0)
fmul dword [eax - 0x8c]
fchs
fstp dword [ecx - 0x1c]
fmul dword [eax - 0x88]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0x18]
fld dword [eax - 0x44]
fadd st(0), st(0)
fld st(0)
fmul dword [eax - 0x4c]
fchs
fstp dword [ecx - 0x14]
fld st(0)
fmul dword [eax - 0x48]
fchs
fstp dword [ecx - 0x10]
fmul dword [eax - 0x44]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0xc]
jne 0x6de38742
mov esi, dword [ebp - 0x14]
cmp edi, edx
jae 0x6de38856
mov eax, edi
imul eax, eax, 0x44
lea ecx, [edi + edi*2]
mov esi, edx
lea ecx, [ebp + ecx*4 - 0x630]
lea eax, [ebp + eax - 0x50c]
sub esi, edi
fld dword [eax]
add ecx, 0xc
fadd st(0), st(0)
add eax, 0x44
dec esi
fld st(0)
fmul dword [eax - 0x4c]
fchs
fstp dword [ecx - 0x14]
fld st(0)
fmul dword [eax - 0x48]
fchs
fstp dword [ecx - 0x10]
fmul dword [eax - 0x44]
fsubr dword [0x6dd37a68]
fstp dword [ecx - 0xc]
jne 0x6de38826
mov esi, dword [ebp - 0x14]
lea eax, [ebp - 0x638]
mov ecx, 0xc
mov edi, dword [esi + 4]
test edi, edi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0xc], ecx
je 0x6de3890f
mov eax, dword [esi - 8]
test eax, eax
mov esi, dword [ebp - 0x10]
jne 0x6de388b6
test edx, edx
je 0x6de38973
mov ecx, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 4], ecx
lea ecx, [ecx]
mov edx, dword [ebp - 0x18]
push edx
push esi
push edi
call fcn.6de1bfe0
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
add esp, 0xc
add edi, edx
add esi, ecx
dec eax
mov dword [ebp - 4], eax
jne 0x6de38890
jmp 0x6de38973
test edx, edx
je 0x6de38973
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x14]
mov dword [ebp - 4], eax
mov edx, dword [edi - 8]
mov ecx, dword [edi - 4]
push edx
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0x2a0]
push eax
push edx
call dword [ecx*4 + 0x6de43998]
mov eax, dword [ebp - 0x18]
push eax
lea ecx, [ebp - 0x2a0]
push esi
push ecx
call fcn.6de1bfe0
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x28]
add eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 4]
add esp, 0x18
add esi, ecx
dec eax
mov dword [ebp - 4], eax
jne 0x6de388c7
jmp 0x6de38973
mov esi, dword [esi - 8]
test esi, esi
jne 0x6de38954
test edx, edx
mov eax, dword [ebp - 0x10]
je 0x6de38973
mov ecx, dword [ebp + 8]
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 0x18]
mov edx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, dword [ebp - 0x28]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
add esi, edi
add eax, edx
dec ecx
mov dword [ebp - 0x1c], esi
mov dword [ebp - 4], ecx
jne 0x6de38926
jmp 0x6de38973
mov edi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x14]
mov edx, dword [edx - 4]
push edi
push ecx
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x10]
push esi
push ecx
push eax
call dword [edx*4 + 0x6de439d8]
add esp, 0x18
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov esi, dword [ebp - 8]
mov ecx, dword [ebx + 0x131cc]
add eax, edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x2c]
inc eax
add esi, 4
add edx, 0x24
cmp eax, ecx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 8], esi
mov dword [ebp - 0x14], edx
jb 0x6de38610
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xe8]
add ecx, eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xe8], ecx
mov ecx, dword [ebp - 0x7c]
add eax, ecx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 8]
cmp eax, dword [ebp - 0x60]
jne 0x6de38a1f
mov edx, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x5c]
add ecx, edx
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp - 0x88]
add edi, ecx
mov ecx, dword [ebp - 0x110]
add esi, edx
mov edx, dword [ebp - 0x54]
add edx, ecx
mov ecx, dword [ebp - 0x78]
sub ecx, eax
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x78], ecx
je 0x6de38a30
mov edi, dword [ebp - 0x68]
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x74]
mov esi, dword [ebp - 0x80]
jmp 0x6de36d66
mov edx, dword [ebx + 0x12fa4]
sub edx, dword [ebp - 0x78]
add edx, eax
mov dword [ebx + 0x13810], edx
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x84]
pop edi
mov dword [ebx + 0x12fe0], eax
mov eax, dword [ebx + 0x11c1c]
pop esi
mov dword [ebx + 0x12ff8], ecx
pop ebx
mov esp, ebp
pop ebp
ret