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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1017c775
mov eax, dword fs:[0]
push eax
sub esp, 0x288
mov eax, dword [0x101e26c8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
push 0x50
mov ebx, ecx
mov dword [ebp - 0x15c], eax
call fcn.100358b5
xor esi, esi
add esp, 4
cmp eax, esi
je 0x10014abf
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], esi
mov dword [eax + 0x18], esi
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], esi
mov dword [eax + 0x28], esi
mov dword [eax + 0x30], esi
mov dword [eax + 0x34], esi
mov dword [eax + 0x38], esi
mov dword [eax + 0x40], esi
mov dword [eax + 0x44], esi
mov dword [eax + 0x48], esi
mov edi, eax
mov dword [ebp - 0x180], eax
jmp 0x10014ac7
xor edi, edi
mov dword [ebp - 0x180], edi
lea edx, [ebp - 0x15c]
lea ecx, [ebx + 0xc]
push edx
call fcn.1001ac70
mov dword [eax], edi
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0x150]
push ecx
lea edx, [ebp - 0x15c]
push edx
mov dword [ebp - 0x178], 1
call dword [sym.imp.PmsrwData.dll__IGETUPDOWNZRC_12]
mov edi, eax
mov dword [ebp - 0x188], edi
cmp edi, esi
je 0x10014b19
cmp dword [ebx + 0x184f8c], esi
jne 0x10014b19
cmp dword [ebx + 0x184f90], esi
je 0x10014b30
mov eax, dword [ebp - 0x15c]
mov edi, 1
mov dword [ebp - 0x188], edi
mov dword [ebp - 0x150], eax
push 0x2ee1
call fcn.100358e4
push 0xfa1
mov dword [ebp - 0x1cc], eax
call fcn.100358e4
add esp, 8
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x26c], esi
mov dword [ebp - 0x264], esi
mov dword [ebp - 0x1f0], esi
mov dword [ebp - 0x1fc], esi
mov dword [ebp - 0x1d8], esi
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x160], esi
mov dword [ebp - 0x168], esi
mov dword [ebp - 0x1ec], esi
mov dword [ebp - 0x1f4], esi
mov dword [ebp - 0x1bc], esi
cmp edi, esi
jle 0x1001636e
mov esi, dword [ebp - 0x15c]
lea esp, [esp]
mov edi, dword [ebp - 0x1bc]
mov edx, dword [ebp + edi*4 - 0x150]
mov dword [ebp - 0x184], edx
cmp edx, esi
je 0x10014c1b
mov esi, dword [ebx + 0x10]
mov ecx, esi
mov eax, dword [ecx + 4]
cmp byte [eax + 0x15], 0
jne 0x10014be9
cmp dword [eax + 0xc], edx
jge 0x10014bdf
mov eax, dword [eax + 8]
jmp 0x10014be3
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0x15], 0
je 0x10014bd5
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x178], ecx
cmp ecx, eax
je 0x10014c03
cmp edx, dword [ecx + 0xc]
jl 0x10014c03
lea eax, [ebp - 0x178]
jmp 0x10014c0f
mov dword [ebp - 0x1c4], eax
lea eax, [ebp - 0x1c4]
cmp dword [eax], esi
jne 0x10014c1b
push edx
mov ecx, ebx
call fcn.10014a40
mov ecx, dword [ebp - 0x1cc]
push 0x2ee1
push 0
push ecx
call fcn.10129410
mov edx, dword [ebp - 0x1d0]
push 0xfa1
push 0
push edx
call fcn.10129410
add esp, 0x18
push str.Calc:RedLyr
mov ecx, ebx
call fcn.10013140
lea eax, [ebx + 0x64]
push eax
mov eax, dword [ebp - 0x15c]
push eax
mov ecx, ebx
call fcn.100143a0
push str.Calc:RedLyr
mov ecx, ebx
call fcn.10013170
test edi, edi
jne 0x100153c8
mov ecx, dword [ebp - 0x15c]
mov edx, dword [0x101e5eb8]
push ecx
push edx
push str.ID_3J_DRVNOXFLR
call fcn.1001f3b0
add esp, 8
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.10019420
push 0x50
lea ecx, [ebp - 0x60]
push ecx
push 2
call fcn.1001ffd0
mov edx, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov ecx, dword [edx + 0x16c]
mov eax, 0x50
cdq
idiv dword [ecx]
add dword [ebx + 0x184f84], eax
mov eax, dword [ebx + 0x184f84]
push eax
call fcn.1001ffb0
add esp, 0x1c
push str.Calc:InitFloorData
mov ecx, ebx
call fcn.10013140
push 0xfa00
call fcn.100358e4
push 0x7d00
mov dword [ebp - 0x1ac], eax
call fcn.100358e4
push 0x639c0
mov dword [ebp - 0x1c8], eax
call fcn.100358e4
push 0x17700
mov dword [ebp - 0x1d4], eax
call fcn.100358e4
mov dword [ebp - 0x268], eax
xor eax, eax
add esp, 0x10
cmp dword [ebx + 0x68], eax
jle 0x10014d77
mov dword [ebp - 0x170], eax
lea edx, [ebx + 0x119ac]
fld dword [edx - 0xbb80]
mov ecx, dword [ebp - 0x268]
mov edi, dword [ebp - 0x1d4]
fstp dword [ecx + eax*8]
fld dword [edx]
inc eax
fstp dword [ecx + eax*8 - 4]
mov ecx, dword [ebp - 0x170]
mov esi, dword [ebx + 0x12d0f0]
add dword [ebp - 0x170], 0x22
add esi, ecx
add edi, ecx
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
add edx, 4
cmp eax, dword [ebx + 0x68]
jl 0x10014d33
mov ecx, dword [ebx + 0xdcfa4]
xor eax, eax
mov dword [ebp - 0x18c], ecx
test ecx, ecx
jle 0x10014de7
mov esi, dword [ebp - 0x1ac]
xor edx, edx
jmp 0x10014da0
movsx edi, word [edx + ebx + 0xdcfaa]
mov di, word [ebx + edi*2 + 0x5829a]
mov word [esi + eax*4], di
movsx edi, word [edx + ebx + 0xdcfaa]
movzx ecx, word [ebx + edi*2 + 0x66cfa]
mov edi, dword [ebp - 0x1c8]
mov word [esi + eax*4 + 2], cx
movzx ecx, word [ebx + edx + 0xdcfa8]
mov word [edi + eax*2], cx
inc eax
add edx, 0x14
cmp eax, dword [ebx + 0xdcfa4]
jl 0x10014da0
push 0x5dc20
call fcn.100358e4
push 0x5dc20
push 0
push eax
mov dword [ebp - 0x1b0], eax
call fcn.10129410
mov edx, dword [ebx + 0xb00dc]
mov esi, dword [ebp - 0x180]
add esp, 0x10
inc edx
lea ecx, [esi + 0x30]
push edx
call fcn.1001ae80
mov eax, 1
cmp dword [ebx + 0xb00dc], eax
jl 0x10014e63
lea edx, [ebx + 0xb00e2]
lea ecx, [eax + 0xb]
mov dword [ebp - 0x170], edx
lea esp, [esp]
mov edx, dword [ebp - 0x170]
movsx edx, word [edx]
mov edi, dword [esi + 0x30]
add dword [ebp - 0x170], 0x18
mov dword [ecx + edi + 8], edx
inc eax
add ecx, 0xc
cmp eax, dword [ebx + 0xb00dc]
jle 0x10014e40
mov eax, dword [ebx + 0xcd5a0]
inc eax
lea edi, [esi + 0x40]
push eax
mov ecx, edi
call fcn.1001af50
mov eax, 1
mov dword [ebp - 0x17c], eax
cmp dword [ebx + 0xcd5a0], eax
jl 0x10014eec
lea edx, [eax + 0x1b]
lea ecx, [eax + 0xf]
jmp 0x10014e96
mov edi, dword [ebp - 0x178]
movsx esi, word [ecx + ebx + 0xcd596]
movsx esi, word [ebx + esi*2 + 0x5829a]
mov edi, dword [edi]
mov dword [edx + edi + 0x14], esi
movsx esi, word [ecx + ebx + 0xcd596]
movsx edi, word [ebx + esi*2 + 0x66cfa]
mov esi, dword [ebp - 0x180]
lea eax, [esi + 0x40]
mov dword [ebp - 0x178], eax
mov eax, dword [eax]
mov dword [edx + eax + 0x18], edi
mov eax, dword [ebp - 0x17c]
inc eax
add ecx, 0x10
add edx, 0x1c
mov dword [ebp - 0x17c], eax
cmp eax, dword [ebx + 0xcd5a0]
jle 0x10014e90
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov edi, dword [ebx + 0x68]
mov eax, ecx
sub eax, edx
inc edi
sar eax, 2
mov dword [ebp - 0x178], edi
cmp eax, edi
jbe 0x10014f3d
lea edi, [edx + edi*4]
cmp edi, ecx
je 0x10014fd1
mov eax, ecx
sub eax, ecx
sar eax, 2
add eax, eax
add eax, eax
push eax
push ecx
push edi
mov dword [ebp - 0x178], eax
call fcn.1012a0c0
mov ecx, dword [ebp - 0x178]
add esp, 0xc
add ecx, edi
mov dword [esi + 4], ecx
jmp 0x10014fd1
jae 0x10014fd1
mov ecx, edi
sub ecx, eax
mov dword [ebp - 0x174], eax
mov eax, 0x3fffffff
sub eax, ecx
cmp eax, dword [ebp - 0x174]
jb 0x100165ef
mov eax, dword [ebp - 0x174]
add eax, ecx
mov ecx, dword [esi + 8]
sub ecx, edx
sar ecx, 2
mov dword [ebp - 0x174], eax
cmp eax, ecx
jbe 0x10014fa3
mov eax, ecx
shr eax, 1
mov edx, 0x3fffffff
sub edx, eax
cmp edx, ecx
jae 0x10014f8d
xor ecx, ecx
jmp 0x10014f8f
add ecx, eax
mov eax, dword [ebp - 0x174]
cmp ecx, eax
jae 0x10014f9b
mov ecx, eax
push ecx
mov ecx, esi
call fcn.10019aa0
mov edx, dword [esi + 4]
mov eax, edx
sub eax, dword [esi]
mov ecx, edi
sar eax, 2
sub ecx, eax
je 0x10014fbf
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x178]
mov eax, dword [esi + 4]
mov ecx, eax
sub ecx, dword [esi]
sar ecx, 2
sub edi, ecx
lea edx, [eax + edi*4]
mov dword [esi + 4], edx
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
mov eax, dword [ebx + 0x68]
lea edi, [esi + 0x10]
sub ecx, edx
inc eax
sar ecx, 2
mov dword [ebp - 0x17c], eax
cmp ecx, eax
jbe 0x10015037
mov ecx, dword [edi + 4]
lea eax, [edx + eax*4]
mov dword [ebp - 0x17c], eax
cmp eax, ecx
je 0x100150ee
mov eax, ecx
sub eax, ecx
sar eax, 2
add eax, eax
add eax, eax
push eax
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x17c]
push ecx
push eax
call fcn.1012a0c0
mov ecx, dword [ebp - 0x178]
add esp, 0xc
add ecx, dword [ebp - 0x17c]
mov dword [edi + 4], ecx
jmp 0x100150ee
jae 0x100150ee
mov edx, eax
sub edx, ecx
mov dword [ebp - 0x174], ecx
mov ecx, 0x3fffffff
sub ecx, edx
mov dword [ebp - 0x178], ecx
mov ecx, dword [ebp - 0x174]
mov dword [ebp - 0x1a4], edx
cmp dword [ebp - 0x178], ecx
jb 0x100165ef
add ecx, edx
mov dword [ebp - 0x174], ecx
mov ecx, dword [edi + 8]
sub ecx, dword [edi]
sar ecx, 2
cmp dword [ebp - 0x174], ecx
jbe 0x100150b3
mov eax, ecx
shr eax, 1
mov edx, 0x3fffffff
sub edx, eax
cmp edx, ecx
jae 0x10015097
xor ecx, ecx
jmp 0x10015099
add ecx, eax
mov eax, dword [ebp - 0x174]
cmp ecx, eax
jae 0x100150a5
mov ecx, eax
push ecx
mov ecx, edi
call fcn.10019aa0
mov eax, dword [ebp - 0x17c]
mov edx, dword [edi + 4]
mov ecx, edx
sub ecx, dword [edi]
sar ecx, 2
mov dword [ebp - 0x178], ecx
mov ecx, eax
sub ecx, dword [ebp - 0x178]
je 0x100150d9
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x17c]
mov ecx, dword [esi + 0x14]
lea edi, [esi + 0x10]
mov edx, ecx
sub edx, dword [edi]
sar edx, 2
sub eax, edx
lea eax, [ecx + eax*4]
mov dword [edi + 4], eax
mov ecx, dword [ebx + 0x68]
mov eax, dword [esi]
lea edx, [ecx*4 + 4]
push edx
push 0
push eax
call fcn.10129410
mov ecx, dword [ebx + 0x68]
mov eax, dword [edi]
lea edx, [ecx*4 + 4]
push edx
push 0
push eax
call fcn.10129410
mov eax, dword [esi + 0x24]
mov edi, dword [ebx + 0x68]
mov ecx, dword [esi + 0x20]
mov edx, eax
inc edi
sub edx, ecx
add esp, 0x18
cmp edx, edi
jbe 0x10015157
add ecx, edi
mov dword [ebp - 0x178], ecx
cmp ecx, eax
je 0x100151d4
mov edi, eax
sub edi, eax
push edi
push eax
push ecx
call fcn.1012a0c0
add esp, 0xc
add edi, dword [ebp - 0x178]
mov dword [esi + 0x24], edi
jmp 0x100151d4
jae 0x100151d4
sub ecx, eax
mov dword [ebp - 0x174], edx
add ecx, edi
or edx, 0xffffffff
sub edx, ecx
cmp edx, dword [ebp - 0x174]
jb 0x100165ef
mov edx, dword [ebp - 0x174]
mov eax, dword [esi + 0x28]
sub eax, dword [esi + 0x20]
add edx, ecx
mov dword [ebp - 0x174], edx
cmp edx, eax
jbe 0x100151b4
mov ecx, eax
shr ecx, 1
or edx, 0xffffffff
sub edx, ecx
cmp edx, eax
jae 0x1001519d
xor eax, eax
jmp 0x1001519f
add eax, ecx
mov ecx, dword [ebp - 0x174]
cmp eax, ecx
jae 0x100151ab
mov eax, ecx
push eax
lea ecx, [esi + 0x20]
call fcn.10019950
mov ecx, dword [esi + 0x24]
mov eax, edi
sub eax, ecx
add eax, dword [esi + 0x20]
je 0x100151cc
push eax
push 0
push ecx
call fcn.10129410
add esp, 0xc
mov eax, dword [esi + 0x20]
add eax, edi
mov dword [esi + 0x24], eax
mov ecx, dword [ebx + 0x68]
mov edx, dword [esi + 0x20]
inc ecx
push ecx
push 0
push edx
call fcn.10129410
add esp, 0xc
mov ecx, ebx
call fcn.1000a450
test eax, eax
je 0x10015287
mov eax, dword [ebx + 0x68]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov dword [ebp - 0x1d8], eax
mov eax, dword [ebx + 0x68]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov edx, dword [ebp - 0x1d8]
mov esi, eax
mov eax, dword [ebx + 0x68]
lea ecx, [eax*4 + 4]
push ecx
push 0
push edx
mov dword [ebp - 0x1f8], esi
call fcn.10129410
mov eax, dword [ebx + 0x68]
lea ecx, [eax*4 + 4]
push ecx
push 0
push esi
call fcn.10129410
push 0x163c80
call fcn.100358e4
push 0x163c80
mov dword [ebp - 0x1f0], eax
call fcn.100358e4
add esp, 0x28
mov dword [ebp - 0x1fc], eax
push str.Calc:InitFloorData
mov ecx, ebx
call fcn.10013170
mov eax, dword [ebx + 0xdcfa4]
xor ecx, ecx
lea eax, [eax + eax*2]
mov edx, 6
mul edx
seto cl
neg ecx
or ecx, eax
xor eax, eax
mov dword [ebp - 0x178], eax
mov eax, ecx
mov ecx, 4
mul ecx
mov ecx, dword [ebp - 0x178]
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov esi, eax
mov eax, dword [ebx + 0xdcfa4]
xor ecx, ecx
lea eax, [eax + eax*2]
mov edx, 6
mul edx
seto cl
mov dword [ebp - 0x1ec], esi
neg ecx
or ecx, eax
xor eax, eax
mov dword [ebp - 0x178], eax
mov eax, ecx
mov ecx, 4
mul ecx
mov ecx, dword [ebp - 0x178]
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov edi, eax
mov eax, dword [ebx + 0xdcfa4]
lea edx, [eax + eax*8]
add edx, edx
add edx, edx
add edx, edx
push edx
push 0
push esi
mov dword [ebp - 0x1f4], edi
call fcn.10129410
mov eax, dword [ebx + 0xdcfa4]
lea eax, [eax + eax*8]
add eax, eax
add eax, eax
add eax, eax
push eax
push 0
push edi
call fcn.10129410
mov ecx, dword [ebx + 0x184fc0]
mov edx, dword [ebp - 0x15c]
add esp, 0x20
cmp dword [ecx + edx*4 - 4], 0
jne 0x100153c8
mov eax, dword [ebx + 0x68]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov ecx, dword [ebx + 0x184fc0]
mov edx, dword [ebp - 0x15c]
mov dword [ecx + edx*4 - 4], eax
mov eax, dword [ebx + 0x184fc0]
mov ecx, dword [ebp - 0x15c]
mov edx, dword [eax + ecx*4 - 4]
mov eax, dword [ebx + 0x68]
mov dword [edx], eax
mov ecx, dword [ebx + 0x68]
mov edx, dword [ebx + 0x184fc0]
mov eax, dword [ebp - 0x15c]
add ecx, ecx
add ecx, ecx
push ecx
mov ecx, dword [edx + eax*4 - 4]
add ecx, 4
push 0
push ecx
call fcn.10129410
add esp, 0x10
lea edx, [ebp - 0x184]
push edx
lea ecx, [ebx + 0xc]
call fcn.1001ac70
mov edi, dword [eax]
push str.Calc:LoadDirectTrans
mov ecx, ebx
mov dword [ebp - 0x158], edi
call fcn.10013140
lea eax, [ebp - 0x178]
push eax
lea ecx, [ebp - 0xb0]
push ecx
lea edx, [ebp - 0x184]
push edx
mov dword [ebp - 0x178], 2
call dword [sym.imp.PmsrwData.dll__IGETUPDOWNZRC_12]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x15c]
cmp dword [ebp - 0x184], eax
jne 0x1001542f
mov dword [ebp - 0xb0], eax
jmp 0x100157eb
mov esi, dword [edi + 4]
sub esi, dword [edi]
mov dword [ebp - 0x164], 1
sar esi, 2
mov dword [ebp - 0x16c], esi
cmp esi, 1
jle 0x100155cb
mov edi, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x158]
mov eax, dword [ecx]
add edi, edi
add edi, edi
fld dword [edi + eax]
fldz
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x10015489
mov ecx, dword [ecx + 0x10]
fld dword [edi + ecx]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x100155b6
jmp 0x1001548b
fstp st(0)
mov ecx, dword [ebp - 0x184]
shl ecx, 4
add ecx, dword [ebx + 0x184f58]
lea edx, [ebp - 0x15c]
push edx
call fcn.1001ac70
mov eax, dword [eax]
cmp dword [edi + eax], 0
jle 0x100155b6
cmp dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
jle 0x10015533
lea esi, [ebp - 0xb0]
jmp 0x100154d0
mov ecx, dword [esi]
mov edx, dword [ebp - 0x15c]
cmp ecx, edx
je 0x10015515
mov eax, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov eax, dword [eax + 0x184]
fld dword [eax + ecx*4 - 4]
fld dword [eax + edx*4 - 4]
fcompp
fnstsw ax
test ah, 5
jp 0x10015515
mov ecx, dword [ebp - 0x184]
shl ecx, 4
add ecx, dword [ebx + 0x184f58]
push esi
call fcn.1001ac70
mov ecx, dword [eax]
cmp dword [edi + ecx], 0
jg 0x1001552d
mov eax, dword [ebp - 0x170]
inc eax
add esi, 4
mov dword [ebp - 0x170], eax
cmp eax, dword [ebp - 0x174]
jl 0x100154d0
mov esi, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x170]
cmp edx, dword [ebp - 0x174]
jne 0x100155b6
mov eax, dword [ebp - 0x158]
mov esi, dword [eax]
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, dword [ebp - 0x184]
shl ecx, 4
add ecx, dword [ebx + 0x184f58]
call fcn.1001ac70
fld dword [esi + edi]
mov edx, dword [eax]
mov eax, dword [edi + edx]
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
fstp dword [edx + eax*4]
mov eax, dword [ebp - 0x158]
mov esi, dword [eax + 0x10]
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, dword [ebp - 0x184]
shl ecx, 4
add ecx, dword [ebx + 0x184f58]
add esi, edi
call fcn.1001ac70
fld dword [esi]
mov edx, dword [eax]
mov eax, dword [ebp - 0x180]
mov edi, dword [edi + edx]
mov ecx, dword [eax + 0x10]
mov esi, dword [ebp - 0x16c]
fstp dword [ecx + edi*4]
mov eax, dword [ebp - 0x164]
inc eax
mov dword [ebp - 0x164], eax
cmp eax, esi
jl 0x10015450
cmp dword [ebp - 0x1bc], 0
jne 0x100157eb
mov edx, dword [ebx + 0x48]
mov ecx, edx
mov eax, dword [ecx + 4]
cmp byte [eax + 0x15], 0
jne 0x1001560a
jmp 0x100155f0
mov edi, dword [eax + 0xc]
cmp edi, dword [ebp - 0x15c]
jge 0x10015600
mov eax, dword [eax + 8]
jmp 0x10015604
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0x15], 0
je 0x100155f0
mov eax, dword [ebx + 0x48]
mov dword [ebp - 0x178], ecx
cmp ecx, eax
je 0x1001562a
mov edi, dword [ebp - 0x15c]
cmp edi, dword [ecx + 0xc]
jl 0x1001562a
lea eax, [ebp - 0x178]
jmp 0x10015636
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x198]
cmp dword [eax], edx
je 0x100157eb
lea edx, [ebp - 0x15c]
push edx
lea ecx, [ebx + 0x44]
call fcn.1001ac70
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov edi, dword [eax]
lea eax, [ebp - 0x15c]
push eax
lea ecx, [ebx + 0x44]
mov dword [ebp - 0x16c], edi
call fcn.1001ac70
mov eax, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x178], eax
cmp edi, eax
je 0x100157eb
lea esp, [esp]
mov eax, dword [edi + 0xc]
mov edx, dword [ebx + 0x12d0f0]
lea esi, [edi + 0xc]
mov ecx, eax
shl ecx, 4
add ecx, eax
cmp word [edx + ecx*2 - 0x22], 0
jg 0x10015752
mov edx, dword [ebx + 0x12d0ec]
mov ecx, eax
shl ecx, 4
add ecx, eax
cmp word [edx + ecx*2 - 0x22], 0
jg 0x10015752
mov eax, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov ecx, dword [eax + 0x170]
mov edx, dword [ebp - 0x15c]
movsx eax, word [ecx + edx*2 - 2]
push esi
lea ecx, [ebp - 0x154]
push ecx
mov dword [ebp - 0x154], eax
call dword [sym.imp.PmsrwData.dll__JCOLEX_LAY_8]
test eax, eax
jne 0x10015752
cmp dword [ebx + 4], eax
jle 0x10015797
mov edx, dword [ebx + 8]
lea ecx, [edx + 0x28]
mov edi, dword [ebp - 0x15c]
cmp dword [ecx + 0xc], edi
jne 0x1001570b
cmp dword [ecx], edi
jne 0x1001570b
mov edi, dword [ecx + 8]
cmp edi, dword [esi]
je 0x10015716
inc eax
add ecx, 0x3c
cmp eax, dword [ebx + 4]
jl 0x100156f5
jmp 0x10015791
mov edi, eax
shl edi, 4
sub edi, eax
mov eax, dword [ebp - 0x16c]
fld dword [eax + 0x10]
add edi, edi
add edi, edi
fadd dword [edi + edx + 4]
lea ecx, [ebp - 0x15c]
push ecx
lea ecx, [ebx + 0x54]
fstp dword [edi + edx + 4]
call fcn.1001ac70
mov ecx, dword [eax]
push esi
call fcn.1001acf0
mov edx, dword [ebx + 8]
lea edi, [edx + edi + 8]
jmp 0x1001578b
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx]
mov eax, dword [esi]
lea eax, [edx + eax*4]
mov edx, dword [ebp - 0x16c]
fld dword [edx + 0x10]
lea edx, [ebp - 0x15c]
fadd dword [eax]
push edx
fstp dword [eax]
mov ecx, dword [ecx + 0x10]
mov eax, dword [esi]
lea edi, [ecx + eax*4]
lea ecx, [ebx + 0x54]
call fcn.1001ac70
mov ecx, dword [eax]
push esi
call fcn.1001acf0
fld dword [edi]
fadd dword [eax]
fstp dword [edi]
mov edi, dword [ebp - 0x16c]
cmp byte [edi + 0x15], 0
jne 0x100157df
mov ecx, dword [edi + 8]
cmp byte [ecx + 0x15], 0
jne 0x100157be
mov eax, dword [ecx]
cmp byte [eax + 0x15], 0
jne 0x100157ba
mov edi, edi
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x15], 0
je 0x100157b0
mov edi, ecx
jmp 0x100157d9
mov eax, dword [edi + 4]
cmp byte [eax + 0x15], 0
jne 0x100157d7
cmp edi, dword [eax + 8]
jne 0x100157d7
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x15], 0
je 0x100157c7
mov edi, eax
mov dword [ebp - 0x16c], edi
cmp edi, dword [ebp - 0x178]
jne 0x10015680
mov ecx, dword [ebp - 0x184]
shl ecx, 4
add ecx, dword [ebx + 0x184f58]
lea eax, [ebp - 0x15c]
push eax
call fcn.1001ac70
mov edx, dword [ebp - 0x184]
mov ecx, dword [eax]
mov dword [ebp - 0x1c0], ecx
cmp edx, dword [ebp - 0x15c]
je 0x10015d14
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x34]
sub ecx, dword [eax + 0x30]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov esi, 1
mov dword [ebp - 0x16c], eax
cmp eax, esi
jle 0x10015929
mov dword [ebp - 0x170], 0xc
lea esp, [esp]
mov eax, dword [ebx + 0x184f5c]
mov ecx, dword [ebp - 0x184]
mov edx, dword [eax + ecx*4]
mov eax, dword [edx + esi*4]
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 0x15c]
jne 0x10015915
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x30]
add ecx, dword [ebp - 0x170]
mov eax, dword [ebp - 0x1c0]
mov edx, dword [ecx + 8]
mov edi, dword [eax + edx*4]
test edi, edi
je 0x10015915
mov edx, dword [ebx + 0x12d0f4]
movsx eax, word [edx + edi*2 - 2]
test eax, eax
je 0x10015915
mov edx, dword [ebp - 0x180]
mov edx, dword [edx + 0x30]
lea eax, [eax + eax*2]
add eax, eax
add eax, eax
fld dword [edx + eax]
fadd dword [ecx]
fstp dword [edx + eax]
mov edx, dword [ebp - 0x180]
mov edx, dword [edx + 0x30]
fld dword [ecx + 4]
fadd dword [eax + edx + 4]
lea eax, [eax + edx + 4]
fstp dword [eax]
mov eax, dword [ebp - 0x1cc]
mov byte [esi + eax], 1
mov eax, dword [ebx + 0x184fc0]
mov edx, dword [ebp - 0x15c]
mov edx, dword [eax + edx*4 - 4]
cmp dword [edx + edi*4], 0
lea edx, [edx + edi*4]
jne 0x10015915
mov edi, dword [ebp - 0x184]
mov ecx, dword [ecx + 8]
mov eax, dword [eax + edi*4 - 4]
mov ecx, dword [eax + ecx*4]
inc ecx
mov dword [edx], ecx
add dword [ebp - 0x170], 0xc
inc esi
cmp esi, dword [ebp - 0x16c]
jl 0x10015860
mov edx, dword [ebp - 0x15c]
cmp dword [ebp - 0x184], edx
je 0x10015d14
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x44]
sub ecx, dword [eax + 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
mov esi, 1
add eax, edx
mov dword [ebp - 0x164], esi
mov dword [ebp - 0x16c], eax
cmp eax, esi
jle 0x10015b3d
mov dword [ebp - 0x170], 0x1c
lea ecx, [ecx]
mov eax, dword [ebx + 0x184f60]
mov ecx, dword [ebp - 0x184]
mov edx, dword [eax + ecx*4]
mov eax, dword [edx + esi*4]
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 0x15c]
jne 0x10015b1d
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x40]
add ecx, dword [ebp - 0x170]
mov edx, dword [ebp - 0x1c0]
mov eax, dword [ecx + 0x14]
mov esi, dword [ecx + 0x18]
lea eax, [edx + eax*4]
lea edx, [edx + esi*4]
mov esi, dword [eax]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x17c], edx
test esi, esi
je 0x10015b1d
mov edx, dword [edx]
mov dword [ebp - 0x178], edx
test edx, edx
je 0x10015b1d
mov edx, 1
cmp dword [ebx + 0xcd5a0], edx
jl 0x10015b1d
mov dword [ebp - 0x174], 0x10
jmp 0x10015a10
mov edi, dword [ebp - 0x174]
movsx edi, word [ebx + edi + 0xcd596]
movsx edi, word [ebx + edi*2 + 0x5829a]
cmp edi, esi
jne 0x10015a48
mov edi, dword [ebp - 0x174]
movsx edi, word [ebx + edi + 0xcd596]
movsx eax, word [ebx + edi*2 + 0x66cfa]
cmp eax, dword [ebp - 0x178]
je 0x10015a5d
add dword [ebp - 0x174], 0x10
inc edx
cmp edx, dword [ebx + 0xcd5a0]
jle 0x10015a10
jmp 0x10015b1d
mov esi, dword [ebp - 0x180]
fld dword [ecx]
lea eax, [edx*8]
sub eax, edx
mov edx, dword [esi + 0x40]
add eax, eax
add eax, eax
fadd dword [edx + eax]
fstp dword [edx + eax]
mov edx, dword [esi + 0x40]
fld dword [ecx + 4]
lea edx, [eax + edx + 4]
fadd dword [edx]
fstp dword [edx]
mov edx, dword [esi + 0x40]
fld dword [ecx + 8]
lea edx, [eax + edx + 8]
fadd dword [edx]
fstp dword [edx]
mov edx, dword [esi + 0x40]
fld dword [ecx + 0xc]
lea eax, [eax + edx + 0xc]
fadd dword [eax]
mov edx, dword [ebp - 0x164]
fstp dword [eax]
mov eax, dword [ebp - 0x1d0]
mov byte [edx + eax], 1
mov eax, dword [ebx + 0x184fc0]
mov edx, dword [ebp - 0x1a4]
mov esi, dword [ebp - 0x15c]
mov edx, dword [edx]
mov esi, dword [eax + esi*4 - 4]
cmp dword [esi + edx*4], 0
lea edx, [esi + edx*4]
jne 0x10015ae9
mov edi, dword [ebp - 0x184]
mov eax, dword [eax + edi*4 - 4]
mov esi, dword [ecx + 0x14]
mov eax, dword [eax + esi*4]
inc eax
mov dword [edx], eax
mov eax, dword [ebx + 0x184fc0]
mov edx, dword [ebp - 0x17c]
mov esi, dword [ebp - 0x15c]
mov edx, dword [edx]
mov esi, dword [eax + esi*4 - 4]
cmp dword [esi + edx*4], 0
lea edx, [esi + edx*4]
jne 0x10015b1d
mov esi, dword [ebp - 0x184]
mov ecx, dword [ecx + 0x18]
mov eax, dword [eax + esi*4 - 4]
mov ecx, dword [eax + ecx*4]
inc ecx
mov dword [edx], ecx
mov esi, dword [ebp - 0x164]
add dword [ebp - 0x170], 0x1c
inc esi
mov dword [ebp - 0x164], esi
cmp esi, dword [ebp - 0x16c]
jl 0x10015980
mov edx, dword [ebp - 0x15c]
cmp dword [ebp - 0x184], edx
je 0x10015d14
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x34]
sub ecx, dword [eax + 0x30]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
mov edi, 1
add eax, edx
mov dword [ebp - 0x170], edi
mov dword [ebp - 0x1a4], eax
cmp eax, edi
jle 0x10015d14
mov dword [ebp - 0x174], 0xc
mov edi, edi
mov eax, dword [ebx + 0x184f5c]
mov ecx, dword [ebp - 0x184]
mov edx, dword [eax + ecx*4]
mov eax, dword [edx + edi*4]
cdq
xor eax, edx
sub eax, edx
cmp eax, dword [ebp - 0x15c]
jne 0x10015cfa
mov eax, dword [ebp - 0x1cc]
cmp byte [edi + eax], 1
je 0x10015cfa
mov ecx, dword [ebp - 0x158]
mov ecx, dword [ecx + 0x30]
add ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x1c0]
mov eax, dword [ecx + 8]
mov eax, dword [edx + eax*4]
test eax, eax
je 0x10015cfa
mov esi, dword [ebx + 0x12d0ec]
mov edx, eax
shl edx, 4
add edx, eax
add edx, edx
cmp word [esi + edx - 0x22], 0
jle 0x10015c5b
mov esi, dword [ebp - 0x180]
mov edx, dword [esi]
fld dword [edx + eax*4]
lea edx, [edx + eax*4]
fadd dword [ecx]
fstp dword [edx]
mov edx, dword [esi + 0x10]
fld dword [ecx + 4]
lea edx, [edx + eax*4]
fadd dword [edx]
fstp dword [edx]
mov edx, dword [ebp - 0x1cc]
mov byte [edi + edx], 0
mov edx, dword [ebx + 0x184fc0]
mov esi, dword [ebp - 0x15c]
mov esi, dword [edx + esi*4 - 4]
cmp dword [esi + eax*4], 0
lea eax, [esi + eax*4]
jne 0x10015cfa
mov esi, dword [ebp - 0x184]
mov ecx, dword [ecx + 8]
mov edx, dword [edx + esi*4 - 4]
mov ecx, dword [edx + ecx*4]
inc ecx
mov dword [eax], ecx
jmp 0x10015cfa
mov esi, dword [ebx + 0x12d0f0]
cmp word [esi + edx - 0x22], 0
jle 0x10015c8d
fld dword [ecx]
shl eax, 5
add eax, dword [ebp - 0x1b0]
fadd dword [eax]
fstp dword [eax]
fld dword [ecx + 4]
fadd dword [eax + 4]
fstp dword [eax + 4]
mov eax, dword [ebp - 0x1cc]
mov byte [edi + eax], 0xff
jmp 0x10015cfa
xor edx, edx
cmp edx, dword [ebx + 4]
jge 0x10015cee
mov esi, dword [ebx + 8]
add esi, 0x28
lea ebx, [ebx]
mov edi, dword [ebp - 0x15c]
cmp dword [esi + 0xc], edi
jne 0x10015cb4
cmp dword [esi], edi
jne 0x10015cb4
cmp dword [esi + 8], eax
je 0x10015cbf
inc edx
add esi, 0x3c
cmp edx, dword [ebx + 4]
jl 0x10015ca0
jmp 0x10015ce5
mov esi, dword [ebx + 8]
fld dword [ecx]
mov eax, edx
shl eax, 4
sub eax, edx
add eax, eax
add eax, eax
fadd dword [eax + esi + 4]
fstp dword [eax + esi + 4]
mov esi, dword [ebx + 8]
fld dword [ecx + 4]
lea eax, [eax + esi + 8]
fadd dword [eax]
fstp dword [eax]
mov edi, dword [ebp - 0x170]
cmp edx, dword [ebx + 4]
jne 0x10015cfa
mov ecx, dword [ebp - 0x1cc]
mov byte [edi + ecx], 0xff
add dword [ebp - 0x174], 0xc
inc edi
mov dword [ebp - 0x170], edi
cmp edi, dword [ebp - 0x1a4]
jl 0x10015b90
push str.Calc:LoadDirectTrans
mov ecx, ebx
call fcn.10013170
push str.Calc:WallLoadTransfer
mov ecx, ebx
call fcn.10013140
push str.Calc:WallLoadTransfer:MERGEJAN_3
mov ecx, ebx
call fcn.10013140
lea edx, [ebp - 0x15c]
push edx
mov eax, edx
push eax
lea ecx, [ebp - 0x184]
push ecx
call dword [sym.imp.PmsrwData.dll__MERGEJAN_3_12]
push str.Calc:WallLoadTransfer:MERGEJAN_3
mov ecx, ebx
call fcn.10013170
push 0x12d0ac
call fcn.100358b5
add esp, 4
mov dword [ebp - 0x178], eax
xor edi, edi
mov dword [ebp - 4], edi
cmp eax, edi
je 0x10015d88
mov ecx, eax
call fcn.1001c220
mov edi, eax
mov dword [ebp - 0x19c], eax
jmp 0x10015d8e
mov dword [ebp - 0x19c], edi
mov edx, dword [ebp - 0x184]
push edi
push edx
mov ecx, ebx
mov dword [ebp - 4], 0xffffffff
call fcn.100143a0
mov eax, dword [edi + 4]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov esi, eax
mov eax, dword [edi + 4]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
mov dword [ebp - 0x1a4], esi
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
add esp, 8
push str.Calc:WallLoadTransfer:FormJPass
mov ecx, ebx
mov dword [ebp - 0x17c], eax
call fcn.10013140
push esi
push 1
lea esi, [ebx + 0x64]
push esi
push edi
mov ecx, ebx
call fcn.1000ff20
mov eax, dword [ebp - 0x17c]
push eax
push 0xc
push esi
push edi
mov ecx, ebx
call fcn.1000ff20
push str.Calc:WallLoadTransfer:FormJPass
mov ecx, ebx
call fcn.10013170
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x44]
sub ecx, dword [eax + 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x164], 1
mov dword [ebp - 0x16c], eax
cmp eax, 1
jle 0x100161cc
mov esi, dword [ebp - 0x180]
mov dword [ebp - 0x174], 0x1c
lea ebx, [ebx]
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x15c]
cmp eax, ecx
je 0x100161a6
mov edx, dword [ebx + 0x184f60]
mov eax, dword [edx + eax*4]
mov edx, dword [ebp - 0x164]
mov eax, dword [eax + edx*4]
cdq
xor eax, edx
sub eax, edx
cmp eax, ecx
jne 0x100161a6
mov eax, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x1d0]
cmp byte [eax + ecx], 1
je 0x100161a6
mov edx, dword [ebp - 0x1f4]
mov ecx, dword [ebp - 0x1ec]
mov edi, dword [ebp - 0x164]
push edx
lea eax, [ebp - 0x168]
push eax
push ecx
mov ecx, dword [ebp - 0x17c]
lea edx, [ebp - 0x160]
push edx
mov edx, dword [ebp - 0x1a4]
lea eax, [ebp - 0x170]
push eax
push ecx
mov ecx, dword [ebp - 0x158]
push edx
lea eax, [ebx + 0x64]
push eax
mov eax, dword [ebp - 0x19c]
push esi
push edi
push eax
push ecx
mov ecx, ebx
mov dword [ebp - 0x170], 0
call fcn.1000a9d0
cmp dword [ebp - 0x170], 0xffffffff
jne 0x10015f2d
mov edx, dword [ebp - 0x1d0]
mov byte [edi + edx], 0xff
jmp 0x100161a6
mov eax, dword [ebp - 0x158]
mov ecx, dword [eax + 0x40]
add ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x1d0]
mov byte [edx + eax], 0
mov edx, dword [ecx + 0x14]
mov eax, dword [ebp - 0x1c0]
mov edi, dword [eax + edx*4]
mov edx, dword [ecx + 0x18]
mov edx, dword [eax + edx*4]
test edi, edi
je 0x1001651e
test edx, edx
je 0x100164d7
mov esi, dword [ebx + 0x12d0f0]
mov eax, edi
shl eax, 4
add eax, edi
add eax, eax
cmp word [esi + eax - 0x22], 0
mov dword [ebp - 0x178], eax
jne 0x10015f9e
mov eax, edx
shl eax, 4
add eax, edx
cmp word [esi + eax*2 - 0x22], 0
je 0x100164d1
fld dword [ecx]
fldz
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x10015fbd
fld dword [ecx + 4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10015fd7
mov eax, edi
shl eax, 5
add eax, dword [ebp - 0x1b0]
fld dword [eax]
fadd dword [ecx]
fstp dword [eax]
fld dword [ecx + 4]
fadd dword [eax + 4]
fstp dword [eax + 4]
fld dword [ecx + 8]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10015ff3
fld dword [ecx + 0xc]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016010
jmp 0x10015ff5
fstp st(0)
mov eax, edx
shl eax, 5
add eax, dword [ebp - 0x1b0]
fld dword [eax]
fadd dword [ecx + 8]
fstp dword [eax]
fld dword [ecx + 0xc]
fadd dword [eax + 4]
fstp dword [eax + 4]
cmp edi, edx
je 0x100161a0
mov ecx, dword [ebp - 0x18c]
fld dword [0x1018c2ac]
mov eax, dword [ebp - 0x1ac]
mov esi, dword [ebp - 0x1c8]
mov word [eax + ecx*4], di
mov ecx, dword [ebp - 0x18c]
mov word [eax + ecx*4 + 2], dx
mov ecx, dword [ebp - 0x18c]
xor eax, eax
mov word [esi + ecx*2], ax
mov eax, dword [ebx + 0x12d110]
fstp dword [ebx + eax*8 + 0x12d114]
mov ecx, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov eax, dword [ecx + 0x174]
mov ecx, dword [ebp - 0x15c]
movzx eax, word [eax + ecx*2 - 2]
mov ecx, 0x7d0
cmp cx, ax
jge 0x10016081
mov dword [ebp - 0x170], ecx
jmp 0x10016088
cwde
mov dword [ebp - 0x170], eax
fild dword [ebp - 0x170]
mov ecx, dword [ebx + 0x12d110]
fstp dword [ebx + ecx*8 + 0x12d118]
mov esi, dword [ebx + 0x12d110]
dec esi
mov dword [ebp - 0x170], esi
js 0x1001611f
lea ecx, [ebx + esi*8 + 0x12d118]
jmp 0x100160c0
mov eax, dword [ebx + 0x12d110]
fld dword [ecx - 4]
fld dword [ebx + eax*8 + 0x12d114]
fucompp
fnstsw ax
test ah, 0x44
jp 0x100160f1
mov eax, dword [ebx + 0x12d110]
fld dword [ecx]
fld dword [ebx + eax*8 + 0x12d118]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x100160ff
sub ecx, 8
dec esi
jns 0x100160c0
mov dword [ebp - 0x170], esi
jmp 0x1001611f
mov eax, dword [ebp - 0x18c]
mov ecx, dword [ebp - 0x1c8]
mov dword [ebp - 0x170], esi
inc esi
cmp dword [ebp - 0x170], 0
mov word [ecx + eax*2], si
jge 0x1001613c
inc dword [ebx + 0x12d110]
mov ax, word [ebx + 0x12d110]
mov ecx, dword [ebp - 0x18c]
mov esi, dword [ebp - 0x1c8]
mov word [esi + ecx*2], ax
mov eax, dword [ebp - 0x1d4]
mov ecx, dword [ebp - 0x178]
mov esi, 1
add dword [ebp - 0x18c], esi
add word [ecx + eax - 0x22], si
mov cx, word [ecx + eax - 0x22]
movsx ecx, cx
mov esi, edi
shl esi, 4
add esi, edi
add esi, ecx
movzx ecx, word [ebp - 0x18c]
mov word [eax + esi*2 - 0x22], cx
mov ecx, edx
shl ecx, 4
add ecx, edx
inc word [eax + ecx*2 - 0x22]
lea ecx, [eax + ecx*2 - 0x22]
mov cx, word [ecx]
mov esi, edx
shl esi, 4
add esi, edx
movsx edx, cx
movzx ecx, word [ebp - 0x18c]
add esi, edx
mov word [eax + esi*2 - 0x22], cx
mov esi, dword [ebp - 0x180]
mov eax, dword [ebp - 0x164]
add dword [ebp - 0x174], 0x1c
inc eax
mov dword [ebp - 0x164], eax
cmp eax, dword [ebp - 0x16c]
jl 0x10015e70
mov edi, dword [ebp - 0x19c]
push str.Calc:WallLoadTransfer
mov ecx, ebx
call fcn.10013170
mov ecx, ebx
call fcn.1000a450
test eax, eax
je 0x100162b1
mov ecx, dword [ebp - 0x184]
cmp ecx, dword [ebp - 0x15c]
je 0x100162b1
cmp dword [ebx + 0x184f90], 0
jne 0x100162b1
push str.Calc:GenBeamLoad
mov ecx, ebx
call fcn.10013140
lea edx, [ebp - 0x184]
push edx
mov eax, edx
push eax
lea ecx, [ebp - 0x15c]
push ecx
call dword [sym.imp.PmsrwData.dll__MERGEJAN_3_12]
mov eax, dword [ebx + 0x68]
xor ecx, ecx
inc eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
add esp, 4
mov esi, eax
push esi
push 1
push edi
lea eax, [ebx + 0x64]
push eax
mov ecx, ebx
call fcn.1000ff20
mov eax, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1d8]
mov edx, dword [ebp - 0x1fc]
push eax
push ecx
mov ecx, dword [ebp - 0x1f0]
push esi
push edx
lea eax, [ebp - 0x264]
push eax
mov eax, dword [ebp - 0x180]
push ecx
mov ecx, dword [ebp - 0x158]
lea edx, [ebp - 0x26c]
push edx
push eax
lea eax, [ebx + 0x64]
push eax
push ecx
push edi
mov ecx, ebx
call fcn.1001b670
push esi
call fcn.100358ef
add esp, 4
push str.Calc:GenBeamLoad
mov ecx, ebx
call fcn.10013170
mov edx, dword [ebp - 0x1a4]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x17c]
push eax
call fcn.100358ef
add esp, 8
mov ecx, edi
call fcn.1001c6f0
push edi
call fcn.100358ef
mov edx, dword [ebp - 0x184]
mov esi, dword [ebp - 0x15c]
add esp, 4
cmp dword [edx*4 + 0x101e864c], 0
jne 0x10016353
cmp edx, esi
je 0x10016353
mov eax, esi
shl eax, 5
mov ecx, edx
shl ecx, 5
fld dword [ecx + 0x101e6e70]
mov dword [edx*4 + 0x101e864c], 1
fadd dword [eax + 0x101e6e70]
fstp dword [eax + 0x101e6e70]
fld dword [ecx + 0x101e6e74]
fadd dword [eax + 0x101e6e74]
fstp dword [eax + 0x101e6e74]
fld dword [ecx + 0x101e6e78]
fadd dword [eax + 0x101e6e78]
fstp dword [eax + 0x101e6e78]
fld dword [ecx + 0x101e6e7c]
fadd dword [eax + 0x101e6e7c]
fstp dword [eax + 0x101e6e7c]
mov eax, dword [ebp - 0x1bc]
inc eax
mov dword [ebp - 0x1bc], eax
cmp eax, dword [ebp - 0x188]
jl 0x10014bb0
xor esi, esi
push str.Calc:FORM_LAYER_SUPORT
mov ecx, ebx
call fcn.10013140
push 0xbb80
call fcn.100358e4
push 0xbb80
mov edi, eax
push esi
push edi
mov dword [ebp - 0x178], edi
call fcn.10129410
add esp, 0x10
lea eax, [ebx + 0x64]
push edi
push eax
mov ecx, ebx
call fcn.1000a580
mov eax, dword [ebx + 0x68]
xor ecx, ecx
lea esi, [ebx + 0x68]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov dword [ebp - 0x170], eax
mov eax, dword [esi]
xor ecx, ecx
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.100358e4
mov ecx, dword [ebp - 0x170]
mov dword [ebp - 0x174], eax
mov eax, dword [esi]
add eax, eax
add eax, eax
push eax
push 0
push ecx
call fcn.10129410
mov edx, dword [esi]
mov eax, dword [ebp - 0x174]
add edx, edx
add edx, edx
push edx
push 0
push eax
call fcn.10129410
mov ecx, dword [ebp - 0x174]
mov edx, dword [ebp - 0x170]
add esp, 0x20
push ecx
push edx
push edi
mov ecx, ebx
call fcn.10011170
push str.Calc:FORM_LAYER_SUPORT
mov ecx, ebx
call fcn.10013170
push str.Calc:ZHUDY
mov ecx, ebx
call fcn.10013140
lea eax, [ebx + 0x17f198]
push eax
mov eax, dword [ebp - 0x1ac]
lea ecx, [ebx + 0x17f194]
push ecx
push eax
lea ecx, [ebp - 0x18c]
push ecx
mov edi, 1
push esi
mov dword [0x101de3d0], edi
call fcn.10026e60
push str.Calc:ZHUDY
mov ecx, ebx
call fcn.10013170
mov edx, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov ecx, dword [ebp - 0x15c]
mov eax, dword [edx + 0x170]
movsx esi, word [eax + ecx*2 - 2]
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x1c4], esi
call fcn.1001d6d0
mov edx, dword [ebx + 0x20]
mov ecx, edx
mov eax, dword [ecx + 4]
cmp byte [eax + 0x15], 0
mov dword [ebp - 4], edi
jne 0x10016607
jmp 0x100164c0
cmp dword [eax + 0xc], esi
jge 0x100165f9
mov eax, dword [eax + 8]
jmp 0x100165fd
mov esi, dword [ebp - 0x180]
mov eax, dword [ebx + 0x12d0f4]
movzx eax, word [eax + edi*2 - 2]
test ax, ax
je 0x1001651e
fld dword [ecx + 8]
cwde
fadd dword [ecx]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x30]
lea eax, [eax + edx*4]
fadd dword [eax]
fstp dword [eax]
mov edx, dword [ebx + 0x12d0f4]
movsx eax, word [edx + edi*2 - 2]
fld dword [ecx + 0xc]
mov edx, dword [esi + 0x30]
fadd dword [ecx + 4]
lea eax, [eax + eax*2]
lea eax, [edx + eax*4 + 4]
fadd dword [eax]
fstp dword [eax]
jmp 0x100161a6
test edx, edx
je 0x10016569
mov eax, dword [ebx + 0x12d0f4]
movzx eax, word [eax + edx*2 - 2]
test ax, ax
je 0x10016569
fld dword [ecx + 8]
mov edi, dword [esi + 0x30]
fadd dword [ecx]
cwde
lea eax, [eax + eax*2]
lea eax, [edi + eax*4]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [ebx + 0x12d0f4]
movsx eax, word [eax + edx*2 - 2]
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x30]
lea eax, [eax + edx*4 + 4]
fadd dword [eax]
fstp dword [eax]
jmp 0x100161a6
test edi, edi
je 0x100165ab
mov esi, dword [ebx + 0x12d0ec]
mov eax, edi
shl eax, 4
add eax, edi
cmp word [esi + eax*2 - 0x22], 0
mov esi, dword [ebp - 0x180]
jle 0x100165ab
fld dword [ecx + 8]
mov edx, dword [esi]
fadd dword [ecx]
lea eax, [edx + edi*4]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [esi + 0x10]
fld dword [ecx + 0xc]
lea edi, [eax + edi*4]
fadd dword [ecx + 4]
fadd dword [edi]
fstp dword [edi]
jmp 0x100161a6
test edx, edx
je 0x100161a6
mov edi, dword [ebx + 0x12d0ec]
mov eax, edx
shl eax, 4
add eax, edx
cmp word [edi + eax*2 - 0x22], 0
jle 0x100161a6
fld dword [ecx + 8]
mov eax, dword [esi]
fadd dword [ecx]
lea eax, [eax + edx*4]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [esi + 0x10]
fld dword [ecx + 0xc]
lea edx, [eax + edx*4]
fadd dword [ecx + 4]
fadd dword [edx]
fstp dword [edx]
jmp 0x100161a6
push 0x1018c6f8
call fcn.10142e3e
mov ecx, eax
mov eax, dword [eax]
cmp byte [eax + 0x15], 0
je 0x100164c0
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x154], ecx
cmp ecx, eax
je 0x10016621
cmp esi, dword [ecx + 0xc]
jl 0x10016621
lea eax, [ebp - 0x154]
jmp 0x1001662d
mov dword [ebp - 0x198], eax
lea eax, [ebp - 0x198]
cmp dword [eax], edx
je 0x1001664e
lea edx, [ebp - 0x1c4]
push edx
lea ecx, [ebx + 0x1c]
call fcn.1001ac70
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x260]
call fcn.1001d840
mov edi, dword [ebp - 0x160]
xor edx, edx
test edi, edi
jle 0x1001669e
mov eax, dword [ebp - 0x1ec]
mov ecx, dword [ebp - 0x260]
mov esi, dword [ebp - 0x258]
add ecx, edx
lea ecx, [ecx + ecx*2]
lea ecx, [esi + ecx*8]
mov esi, dword [eax]
mov dword [ecx], esi
mov esi, dword [eax + 4]
mov dword [ecx + 4], esi
mov esi, dword [eax + 8]
mov dword [ecx + 8], esi
mov esi, dword [eax + 0xc]
mov dword [ecx + 0xc], esi
mov esi, dword [eax + 0x10]
mov dword [ecx + 0x10], esi
mov esi, dword [eax + 0x14]
inc edx
add eax, 0x18
mov dword [ecx + 0x14], esi
cmp edx, edi
jl 0x10016660
mov esi, dword [ebp - 0x168]
xor edx, edx
test esi, esi
jle 0x100166f4
mov eax, dword [ebp - 0x1f4]
mov ecx, dword [ebp - 0x25c]
mov edi, dword [ebp - 0x254]
add ecx, edx
lea ecx, [ecx + ecx*2]
lea ecx, [edi + ecx*8]
mov edi, dword [eax]
mov dword [ecx], edi
mov edi, dword [eax + 4]
mov dword [ecx + 4], edi
mov edi, dword [eax + 8]
mov dword [ecx + 8], edi
mov edi, dword [eax + 0xc]
mov dword [ecx + 0xc], edi
mov edi, dword [eax + 0x10]
mov dword [ecx + 0x10], edi
mov edi, dword [eax + 0x14]
inc edx
add eax, 0x18
mov dword [ecx + 0x14], edi
cmp edx, esi
jl 0x100166b0
mov edi, dword [ebp - 0x160]
add dword [ebp - 0x260], edi
add dword [ebp - 0x25c], esi
push 0x1018d414
mov ecx, ebx
call fcn.10013140
push 0x232800
call fcn.100358e4
mov esi, eax
push 0x8ca00
mov dword [ebp - 0x1bc], esi
call fcn.100358e4
push 0x232800
mov edi, eax
push 0
push esi
mov dword [ebp - 0x1c0], edi
call fcn.10129410
push 0x8ca00
push 0
push edi
call fcn.10129410
mov edx, dword [ebp - 0x258]
add esp, 0x20
push esi
lea esi, [ebx + 0x17f198]
push esi
lea edi, [ebx + 0x17f194]
push edi
lea eax, [ebp - 0x154]
push eax
mov eax, dword [ebx + 0x12d0f8]
mov dword [ebp - 0x1b8], edx
lea ecx, [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0x1ac]
lea edx, [ebp - 0x260]
push edx
push eax
push ecx
lea edx, [ebp - 0x18c]
push edx
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x1a8], 1
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x154], 6
call fcn.100275e0
mov eax, dword [ebp - 0x1bc]
mov edx, dword [ebp - 0x254]
add eax, 0x46500
push eax
push esi
push edi
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x154]
push eax
mov eax, dword [ebx + 0x12d0f8]
mov dword [ebp - 0x1b8], edx
lea ecx, [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0x1ac]
lea edx, [ebp - 0x25c]
push edx
push eax
push ecx
lea edx, [ebp - 0x18c]
push edx
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x1a8], 2
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x154], 6
call fcn.100275e0
mov edx, dword [ebp - 0x258]
mov dword [ebp - 0x1a8], 1
mov dword [ebp - 0x1b4], 2
mov dword [ebp - 0x1b8], edx
mov eax, dword [ebp - 0x1bc]
push eax
push esi
push edi
lea ecx, [ebp - 0x154]
push ecx
mov ecx, dword [ebx + 0x12d0f8]
lea edx, [ebp - 0x1b8]
push edx
mov edx, dword [ebp - 0x1ac]
lea eax, [ebp - 0x260]
push eax
push ecx
push edx
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1b4]
push ecx
lea edx, [ebp - 0x1a8]
push edx
mov dword [ebp - 0x154], 6
call fcn.100275e0
mov ecx, dword [ebp - 0x188]
push ecx
push esi
push edi
mov eax, 2
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x1b8], eax
lea edx, [ebp - 0x154]
push edx
mov edx, dword [ebx + 0x12d0f8]
lea eax, [ebp - 0x1b8]
push eax
mov eax, dword [ebp - 0x1ac]
lea ecx, [ebp - 0x25c]
push ecx
push edx
push eax
lea ecx, [ebp - 0x18c]
push ecx
lea edx, [ebp - 0x1b4]
push edx
lea eax, [ebp - 0x1a8]
push eax
mov dword [ebp - 0x154], 6
call fcn.100275e0
mov ecx, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov edx, dword [ecx + 0x170]
mov eax, dword [ebp - 0x15c]
movsx ecx, word [edx + eax*2 - 2]
lea edx, [ebp - 0x154]
push edx
lea eax, [ebp - 0x198]
mov dword [ebp - 0x154], ecx
push eax
lea ecx, [ebx + 0x1c]
call fcn.1001a280
mov ecx, dword [ebp - 0x198]
fldz
cmp ecx, dword [ebx + 0x20]
je 0x10016c7e
mov esi, dword [ecx + 0x10]
xor eax, eax
mov dword [ebp - 0x19c], eax
cmp dword [esi], eax
jle 0x10016aeb
mov dword [ebp - 0x158], eax
mov ecx, dword [esi + 8]
mov edx, dword [ebp - 0x158]
fcom dword [edx + ecx]
fnstsw ax
test ah, 0x41
jnp 0x10016acd
add ecx, edx
fstp st(0)
fld dword [ecx]
mov dword [ebp - 0x154], ecx
fchs
call fcn.1012a430
mov edi, eax
add eax, eax
movsx edx, word [ebx + eax*8 + 0xcd596]
movsx eax, word [ebx + eax*8 + 0xcd596]
movsx ecx, word [ebx + eax*2 + 0x66cfa]
mov eax, dword [ebx + 0x12d0f8]
movsx edx, word [ebx + edx*2 + 0x5829a]
mov dword [ebp - 0x168], ecx
mov ecx, dword [ebp - 0x154]
push ecx
mov ecx, dword [ebp - 0x168]
lea ecx, [eax + ecx*8 - 4]
push ecx
mov ecx, dword [ebp - 0x168]
lea ecx, [eax + ecx*8 - 8]
push ecx
lea ecx, [eax + edx*8 - 4]
push ecx
lea edx, [eax + edx*8 - 8]
push edx
lea eax, [ebp - 0x164]
push eax
lea ecx, [ebp - 0x16c]
push ecx
call fcn.1002bd00
mov edx, dword [ebx + 0x12d10c]
fld dword [edx + edi*4 - 4]
fstp dword [ebp - 0x154]
fldz
fld dword [ebp - 0x154]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x10016a8c
mov eax, dword [esi + 8]
mov ecx, dword [ebp - 0x158]
fld dword [ecx + eax + 4]
lea ecx, [ecx + eax + 4]
fld1
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016a5a
fld dword [ecx]
fld dword [0x1018d410]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10016a8c
fld dword [ebp - 0x16c]
fadd dword [ebp - 0x164]
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [ebp - 0x16c]
fsub dword [ebp - 0x16c]
fstp dword [ebp - 0x164]
jmp 0x10016a8e
fstp st(0)
fld dword [ebp - 0x16c]
mov ecx, dword [ebp - 0x180]
mov edx, dword [ecx + 0x40]
fld qword [0x1018ca10]
lea eax, [edi*8]
fmul st(1), st(0)
sub eax, edi
add eax, eax
add eax, eax
fld dword [edx + eax]
faddp st(2)
fxch st(1)
fstp dword [edx + eax]
mov ecx, dword [ecx + 0x40]
lea eax, [ecx + eax + 8]
fmul dword [ebp - 0x164]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [ebp - 0x19c]
add dword [ebp - 0x158], 0x18
inc eax
mov dword [ebp - 0x19c], eax
cmp eax, dword [esi]
jl 0x10016978
xor eax, eax
mov dword [ebp - 0x19c], eax
cmp dword [esi + 4], eax
jle 0x10016c7e
mov dword [ebp - 0x158], 0
mov eax, dword [ebp - 0x158]
mov edx, dword [esi + 0xc]
fcom dword [eax + edx]
fnstsw ax
test ah, 0x41
jnp 0x10016c61
add edx, dword [ebp - 0x158]
fstp st(0)
fld dword [edx]
mov dword [ebp - 0x154], edx
fchs
call fcn.1012a430
mov edi, eax
add eax, eax
movsx edx, word [ebx + eax*8 + 0xcd596]
movsx eax, word [ebx + eax*8 + 0xcd596]
movsx ecx, word [ebx + eax*2 + 0x66cfa]
mov eax, dword [ebx + 0x12d0f8]
movsx edx, word [ebx + edx*2 + 0x5829a]
mov dword [ebp - 0x168], ecx
mov ecx, dword [ebp - 0x154]
push ecx
mov ecx, dword [ebp - 0x168]
lea ecx, [eax + ecx*8 - 4]
push ecx
mov ecx, dword [ebp - 0x168]
lea ecx, [eax + ecx*8 - 8]
push ecx
lea ecx, [eax + edx*8 - 4]
push ecx
lea edx, [eax + edx*8 - 8]
push edx
lea eax, [ebp - 0x164]
push eax
lea ecx, [ebp - 0x16c]
push ecx
call fcn.1002bd00
mov edx, dword [ebx + 0x12d10c]
fld dword [edx + edi*4 - 4]
fstp dword [ebp - 0x154]
fldz
fld dword [ebp - 0x154]
fcom st(1)
fnstsw ax
test ah, 0x41
jne 0x10016c1c
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp - 0x158]
fld dword [eax + ecx + 4]
lea ecx, [eax + ecx + 4]
fld1
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016bea
fld dword [ecx]
fld dword [0x1018d410]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10016c1c
fld dword [ebp - 0x16c]
fadd dword [ebp - 0x164]
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fld st(0)
fmulp st(2)
fxch st(1)
fstp dword [ebp - 0x16c]
fsub dword [ebp - 0x16c]
fstp dword [ebp - 0x164]
jmp 0x10016c1e
fstp st(0)
fld dword [ebp - 0x16c]
mov eax, dword [ebp - 0x180]
mov edx, dword [eax + 0x40]
fld qword [0x1018ca10]
lea ecx, [edi*8]
fmul st(1), st(0)
sub ecx, edi
add ecx, ecx
add ecx, ecx
fld dword [edx + ecx + 4]
lea edx, [edx + ecx + 4]
faddp st(2)
fxch st(1)
fstp dword [edx]
mov eax, dword [eax + 0x40]
lea eax, [eax + ecx + 0xc]
fmul dword [ebp - 0x164]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [ebp - 0x19c]
add dword [ebp - 0x158], 0x18
inc eax
mov dword [ebp - 0x19c], eax
cmp eax, dword [esi + 4]
jl 0x10016b04
xor edi, edi
cmp dword [ebx + 4], edi
jle 0x10016d8b
xor esi, esi
mov ecx, dword [ebx + 8]
mov edx, dword [ebp - 0x15c]
cmp dword [esi + ecx + 0x28], edx
lea eax, [esi + ecx]
jne 0x10016d7e
cmp dword [ebx + 0x184f90], 0
je 0x10016cb5
mov ecx, edx
cmp dword [eax + 0x34], ecx
jne 0x10016d7e
fild dword [eax + 0x2c]
mov eax, dword [ebp - 0x240]
lea edx, [eax + eax*2]
mov eax, dword [ebp - 0x238]
fstp dword [eax + edx*8]
mov eax, dword [ebp - 0x240]
mov ecx, dword [ebx + 8]
fld dword [esi + ecx + 4]
lea edx, [eax + eax*2]
mov eax, dword [ebp - 0x238]
fstp dword [eax + edx*8 + 4]
mov eax, dword [ebp - 0x240]
mov edx, dword [ebp - 0x238]
lea ecx, [eax + eax*2]
fst dword [edx + ecx*8 + 8]
mov eax, dword [ebp - 0x240]
mov ecx, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fstp dword [ecx + eax*8 + 0xc]
inc dword [ebp - 0x240]
call fcn.1000a470
test eax, eax
je 0x10016d7c
mov edx, dword [ebx + 8]
fild dword [esi + edx + 0x2c]
mov eax, dword [ebp - 0x23c]
mov ecx, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [ecx + eax*8]
mov edx, dword [ebx + 8]
mov eax, dword [ebp - 0x23c]
fld dword [esi + edx + 8]
mov ecx, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [ecx + eax*8 + 4]
mov eax, dword [ebp - 0x23c]
fldz
lea edx, [eax + eax*2]
mov eax, dword [ebp - 0x234]
fst dword [eax + edx*8 + 8]
mov eax, dword [ebp - 0x23c]
mov edx, dword [ebp - 0x234]
lea ecx, [eax + eax*2]
fst dword [edx + ecx*8 + 0xc]
inc dword [ebp - 0x23c]
jmp 0x10016d7e
fldz
inc edi
add esi, 0x3c
cmp edi, dword [ebx + 4]
jl 0x10016c8b
mov edi, dword [ebp - 0x240]
mov eax, dword [ebp - 0x23c]
mov esi, dword [ebp - 0x180]
mov edx, 1
mov dword [ebp - 0x190], edi
mov dword [ebp - 0x194], eax
cmp dword [ebx + 0xb00dc], edx
jl 0x10016ea9
mov dword [ebp - 0x160], 0xc
mov ecx, dword [esi + 0x30]
add ecx, dword [ebp - 0x160]
fld dword [ecx]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016e2a
fild dword [ecx + 8]
lea eax, [edi + edi*2]
mov edi, dword [ebp - 0x238]
fstp dword [edi + eax*8]
mov eax, dword [ebp - 0x190]
fld dword [ecx]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8 + 4]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 8]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 0xc]
inc dword [ebp - 0x190]
fld dword [ecx + 4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016e8f
fild dword [ecx + 8]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8]
mov eax, dword [ebp - 0x194]
fld dword [ecx + 4]
mov ecx, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [ecx + eax*8 + 4]
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [ecx + eax*8 + 8]
mov eax, dword [ebp - 0x194]
mov ecx, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [ecx + eax*8 + 0xc]
inc dword [ebp - 0x194]
add dword [ebp - 0x160], 0xc
mov edi, dword [ebp - 0x190]
inc edx
cmp edx, dword [ebx + 0xb00dc]
jle 0x10016dc4
mov ecx, 1
mov dword [ebp - 0x158], ecx
cmp dword [ebx + 0x68], ecx
jl 0x1001707c
mov edx, dword [ebp - 0x1b0]
add edx, 0x20
jmp 0x10016ece
mov edi, dword [ebp - 0x190]
mov eax, dword [esi]
fld dword [eax + ecx*4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10016f3b
fild dword [ebp - 0x158]
lea eax, [edi + edi*2]
mov edi, dword [ebp - 0x238]
fstp dword [edi + eax*8]
mov edi, dword [esi]
fld dword [edi + ecx*4]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8 + 4]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 8]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 0xc]
mov edi, dword [ebp - 0x190]
inc edi
mov dword [ebp - 0x190], edi
fcom dword [edx]
fnstsw ax
test ah, 5
jp 0x10016f97
fild dword [ebp - 0x158]
lea eax, [edi + edi*2]
mov edi, dword [ebp - 0x238]
fstp dword [edi + eax*8]
mov eax, dword [ebp - 0x190]
fld dword [edx]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8 + 4]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 8]
mov eax, dword [ebp - 0x190]
mov edi, dword [ebp - 0x238]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 0xc]
inc dword [ebp - 0x190]
mov eax, dword [esi + 0x10]
fld dword [eax + ecx*4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10017005
mov eax, dword [ebp - 0x194]
fild dword [ebp - 0x158]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8]
mov edi, dword [esi + 0x10]
fld dword [edi + ecx*4]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8 + 4]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 8]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 0xc]
inc dword [ebp - 0x194]
fcom dword [edx + 4]
fnstsw ax
test ah, 5
jp 0x10017069
mov eax, dword [ebp - 0x194]
fild dword [ebp - 0x158]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8]
mov eax, dword [ebp - 0x194]
fld dword [edx + 4]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fstp dword [edi + eax*8 + 4]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 8]
mov eax, dword [ebp - 0x194]
mov edi, dword [ebp - 0x234]
lea eax, [eax + eax*2]
fst dword [edi + eax*8 + 0xc]
inc dword [ebp - 0x194]
inc ecx
add edx, 0x20
mov dword [ebp - 0x158], ecx
cmp ecx, dword [ebx + 0x68]
jle 0x10016ec8
mov edx, dword [ebp - 0x1bc]
fstp st(0)
mov ecx, dword [ebp - 0x238]
push edx
mov eax, 1
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1b4], eax
lea edi, [ebx + 0x17f198]
push edi
lea eax, [ebx + 0x17f194]
push eax
mov dword [ebp - 0x1b8], ecx
lea eax, [ebp - 0x154]
push eax
mov eax, dword [ebx + 0x12d0f8]
lea ecx, [ebp - 0x1b8]
push ecx
mov ecx, dword [ebp - 0x1ac]
lea edx, [ebp - 0x190]
push edx
push eax
push ecx
lea edx, [ebp - 0x18c]
push edx
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x154], 6
call fcn.100275e0
mov eax, dword [ebp - 0x188]
mov edx, dword [ebp - 0x234]
push eax
push edi
lea eax, [ebx + 0x17f194]
push eax
mov dword [ebp - 0x1b8], edx
lea ecx, [ebp - 0x154]
push ecx
mov ecx, dword [ebx + 0x12d0f8]
lea edx, [ebp - 0x1b8]
push edx
mov edx, dword [ebp - 0x1ac]
lea eax, [ebp - 0x194]
push eax
push ecx
push edx
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1b4]
push ecx
lea edx, [ebp - 0x1a8]
push edx
mov dword [ebp - 0x1a8], 2
mov dword [ebp - 0x1b4], 1
mov dword [ebp - 0x154], 6
call fcn.100275e0
cmp dword [ebp - 0x240], 0
mov dword [ebp - 0x158], 0
jle 0x100171d5
mov dword [ebp - 0x160], 0
lea ebx, [ebx]
mov edi, dword [ebp - 0x238]
add edi, dword [ebp - 0x160]
fld dword [edi]
call fcn.1012a430
test eax, eax
jle 0x100171b9
mov edx, dword [ebp - 0x1b0]
fld dword [edi + 4]
shl eax, 5
fadd dword [eax + edx]
fstp dword [eax + edx]
mov eax, dword [ebp - 0x158]
add dword [ebp - 0x160], 0x18
inc eax
mov dword [ebp - 0x158], eax
cmp eax, dword [ebp - 0x240]
jl 0x10017190
xor eax, eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x23c], eax
jle 0x10017239
mov dword [ebp - 0x160], eax
jmp 0x100171f0
mov edi, dword [ebp - 0x234]
add edi, dword [ebp - 0x160]
fld dword [edi]
call fcn.1012a430
test eax, eax
jle 0x1001721d
mov edx, dword [ebp - 0x1b0]
fld dword [edi + 4]
shl eax, 5
fadd dword [eax + edx + 4]
lea eax, [eax + edx + 4]
fstp dword [eax]
mov eax, dword [ebp - 0x158]
add dword [ebp - 0x160], 0x18
inc eax
mov dword [ebp - 0x158], eax
cmp eax, dword [ebp - 0x23c]
jl 0x100171f0
push 0x1018d414
mov ecx, ebx
call fcn.10013170
cmp dword [ebp - 0x18c], 0
je 0x100172ae
cmp dword [ebx + 0x17f194], 0
lea edi, [ebx + 0x17f194]
jle 0x100172ae
push str.Calc:JFC
mov ecx, ebx
call fcn.10013140
mov edx, dword [ebp - 0x1c8]
lea eax, [ebx + 0x17f198]
push eax
push edi
lea eax, [ebx + 0x12d114]
push eax
mov eax, dword [ebp - 0x1ac]
lea ecx, [ebp - 0x18c]
push ecx
mov ecx, dword [ebx + 0x12d0f8]
push edx
push eax
push ecx
call fcn.100280f0
lea eax, [ebx + 0x68]
push eax
call fcn.10028d10
push str.Calc:JFC
mov ecx, ebx
call fcn.10013170
push 0x1018d3f4
mov ecx, ebx
call fcn.10013140
mov edx, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x1c8]
lea eax, [ebx + 0x17f198]
push eax
lea eax, [ebx + 0x17f194]
push eax
mov eax, dword [ebx + 0x12d0f8]
push edx
mov edx, dword [ebp - 0x1ac]
lea edi, [ebx + 0x12d114]
push edi
push eax
push ecx
push edx
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x1a8], 1
call fcn.1002a0e0
mov edx, dword [ebp - 0x1c0]
mov ecx, dword [ebp - 0x1c8]
lea eax, [ebx + 0x17f198]
push eax
lea eax, [ebx + 0x17f194]
push eax
mov eax, dword [ebx + 0x12d0f8]
add edx, 0x11940
push edx
mov edx, dword [ebp - 0x1ac]
push edi
push eax
push ecx
push edx
lea eax, [ebp - 0x18c]
push eax
lea ecx, [ebp - 0x1a8]
push ecx
mov dword [ebp - 0x1a8], 2
call fcn.1002a0e0
push 0xea60
mov dword [ebp - 0x19c], 0
call fcn.100358e4
push 0xea60
mov dword [ebp - 0x16c], eax
call fcn.100358e4
xor ecx, ecx
add esp, 8
mov edi, eax
mov dword [ebp - 0x164], edi
cmp dword [ebx + 0x68], ecx
jle 0x1001763f
fldz
mov edi, dword [ebp - 0x1d4]
mov eax, ecx
shl eax, 4
add eax, ecx
add eax, eax
mov edx, 1
mov dword [ebp - 0x17c], 1
mov dword [ebp - 0x198], eax
cmp dx, word [eax + edi]
jg 0x1001749e
mov edx, ecx
shl edx, 5
add edx, dword [ebp - 0x1b0]
lea eax, [eax + edi + 2]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x160]
movsx eax, word [eax]
mov esi, dword [ebp - 0x1ac]
movsx edi, word [esi + eax*4 - 4]
lea esi, [ecx + 1]
cmp edi, esi
jne 0x100173fe
xor esi, esi
mov dword [ebp - 0x168], 1
jmp 0x1001740d
mov esi, 1
mov dword [ebp - 0x168], 0xffffffff
fild dword [ebp - 0x168]
mov edi, dword [ebp - 0x1c0]
mov dword [ebp - 0x188], esi
inc dword [ebp - 0x17c]
fstp dword [ebp - 0x154]
add dword [ebp - 0x160], 2
fld dword [edi + eax*4 - 4]
lea edi, [esi + eax*4]
fld dword [ebp - 0x154]
mov esi, dword [ebp - 0x1bc]
fld st(0)
fmulp st(2)
fld dword [esi + edi*4 - 0x10]
mov edi, dword [ebp - 0x1c0]
faddp st(2)
fld dword [edx + 0x20]
faddp st(2)
fxch st(1)
fstp dword [edx + 0x20]
fmul dword [edi + eax*4 + 0x1193c]
mov edi, dword [ebp - 0x188]
lea eax, [edi + eax*4 + 0x1193c]
fadd dword [esi + eax*4]
mov eax, dword [ebp - 0x198]
mov esi, dword [ebp - 0x1d4]
fadd dword [edx + 0x24]
fstp dword [edx + 0x24]
movsx esi, word [eax + esi]
cmp dword [ebp - 0x17c], esi
jle 0x100173d5
mov esi, dword [ebp - 0x180]
mov edi, dword [ebx + 0x12d0f4]
movzx edi, word [edi + ecx*2]
mov edx, dword [ebp - 0x1b0]
test di, di
jle 0x100174b8
movsx eax, di
jmp 0x100174f9
mov edi, dword [ebx + 0x12d0ec]
cmp word [eax + edi], 0
jle 0x100174ec
mov eax, dword [esi]
mov edi, ecx
lea eax, [eax + ecx*4 + 4]
shl edi, 5
fld dword [edx + edi + 0x20]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [esi + 0x10]
fld dword [edx + edi + 0x24]
lea eax, [eax + ecx*4 + 4]
fadd dword [eax]
fstp dword [eax]
jmp 0x1001762d
mov eax, dword [ebp - 0x178]
mov eax, dword [eax + ecx*4]
test eax, eax
jle 0x10017538
mov edi, dword [esi + 0x30]
lea eax, [eax + eax*2]
lea eax, [edi + eax*4]
mov edi, ecx
shl edi, 5
add edx, edi
mov edi, dword [esi]
fld dword [edi + ecx*4 + 4]
fadd dword [edx + 0x20]
fadd dword [eax]
fstp dword [eax]
mov edi, dword [esi + 0x10]
fld dword [edi + ecx*4 + 4]
fadd dword [edx + 0x24]
fadd dword [eax + 4]
fstp dword [eax + 4]
mov edx, dword [esi]
fst dword [edx + ecx*4 + 4]
mov eax, dword [esi + 0x10]
fst dword [eax + ecx*4 + 4]
jmp 0x1001762d
mov eax, dword [ebp - 0x170]
cmp dword [eax + ecx*4], 0
je 0x10017576
mov edi, dword [ebp - 0x174]
cmp dword [edi + ecx*4], 0
je 0x10017576
mov eax, dword [eax + ecx*4]
mov edi, ecx
shl edi, 5
fld dword [edx + edi + 0x20]
fadd dword [eax]
fstp dword [eax]
mov eax, dword [ebp - 0x174]
mov eax, dword [eax + ecx*4]
fld dword [edx + edi + 0x24]
fadd dword [eax]
fstp dword [eax]
jmp 0x1001762d
mov edx, dword [esi]
fst dword [edx + ecx*4 + 4]
mov eax, dword [esi + 0x10]
fst dword [eax + ecx*4 + 4]
mov eax, 1
mov dword [ebp - 0x168], eax
cmp dword [ebx + 4], eax
jle 0x1001762d
mov eax, 0x3c
mov dword [ebp - 0x188], eax
add eax, dword [ebx + 8]
mov edx, dword [eax + 0x28]
cmp edx, dword [ebp - 0x15c]
jne 0x10017606
lea edx, [ecx + 1]
cmp dword [eax + 0x2c], edx
jne 0x10017606
cmp dword [eax + 0x38], 0
je 0x10017606
mov eax, dword [esi]
fld dword [eax + ecx*4 + 4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10017606
mov eax, dword [ebp - 0x19c]
mov edi, dword [ebp - 0x16c]
mov dword [edi + eax*4], edx
inc eax
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x1b0]
mov edx, ecx
shl edx, 5
fld dword [eax + edx + 0x20]
add eax, edx
mov edx, dword [esi]
fstp dword [edx + ecx*4 + 4]
mov edx, dword [esi + 0x10]
fld dword [eax + 0x24]
fstp dword [edx + ecx*4 + 4]
mov edx, dword [ebp - 0x168]
mov eax, dword [ebp - 0x188]
add edx, 2
add eax, 0x78
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x188], eax
cmp edx, dword [ebx + 4]
jl 0x100175a2
inc ecx
cmp ecx, dword [ebx + 0x68]
jl 0x10017392
mov edi, dword [ebp - 0x164]
fstp st(0)
push 0x1018d3f4
mov ecx, ebx
call fcn.10013170
cmp dword [ebx + 0x184f78], 0
je 0x10017661
cmp dword [ebx + 0x184f7c], 0
je 0x100178b3
xor eax, eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x19c], eax
jle 0x100178b3
fldz
mov ecx, dword [ebp - 0x16c]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x17c], eax
mov eax, 1
xor edx, edx
cmp dword [ebx + 4], eax
jle 0x10017898
mov ecx, 0x3c
mov dword [ebp - 0x168], ecx
add ecx, dword [ebx + 8]
mov edi, dword [ecx + 0x28]
cmp edi, dword [ebp - 0x15c]
jne 0x100176cd
mov edi, dword [ecx + 0x2c]
cmp edi, dword [ebp - 0x17c]
jne 0x100176cd
cmp dword [ecx + 0x38], 0
je 0x100176cd
mov edi, dword [ebp - 0x164]
lea ecx, [eax - 1]
mov dword [edi + edx*4], ecx
inc edx
mov ecx, dword [ebp - 0x168]
add eax, 2
add ecx, 0x78
mov dword [ebp - 0x168], ecx
cmp eax, dword [ebx + 4]
jl 0x100176a1
mov dword [ebp - 0x160], edx
test edx, edx
je 0x10017892
fild dword [ebp - 0x160]
mov ecx, dword [esi]
mov eax, dword [ebp - 0x17c]
fstp dword [ebp - 0x154]
fld dword [ecx + eax*4]
mov ecx, dword [esi + 0x10]
fld dword [ebp - 0x154]
xor esi, esi
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [ebp - 0x154]
fdivr dword [ecx + eax*4]
fstp dword [ebp - 0x198]
fld dword [ebp - 0x154]
fld dword [ebp - 0x198]
cmp edx, 4
jl 0x1001782d
mov eax, dword [ebp - 0x164]
add edx, 0xfffffffc
shr edx, 2
add eax, 8
inc edx
lea esi, [edx*4]
mov ecx, dword [eax - 8]
fld st(1)
mov edi, ecx
shl edi, 4
sub edi, ecx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 4]
lea ecx, [ecx + edi*4 + 4]
add eax, 0x10
fstp dword [ecx]
mov ecx, dword [eax - 0x18]
mov edi, ecx
shl edi, 4
fld st(0)
sub edi, ecx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 8]
lea ecx, [ecx + edi*4 + 8]
fstp dword [ecx]
mov ecx, dword [eax - 0x14]
mov edi, ecx
fld st(1)
shl edi, 4
sub edi, ecx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 4]
lea ecx, [ecx + edi*4 + 4]
fstp dword [ecx]
mov ecx, dword [eax - 0x14]
mov edi, ecx
shl edi, 4
fld st(0)
sub edi, ecx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 8]
lea ecx, [ecx + edi*4 + 8]
fstp dword [ecx]
mov ecx, dword [eax - 0x10]
mov edi, ecx
shl edi, 4
sub edi, ecx
mov ecx, dword [ebx + 8]
fld dword [ecx + edi*4 + 4]
lea ecx, [ecx + edi*4 + 4]
fadd st(2)
fstp dword [ecx]
mov ecx, dword [eax - 0x10]
mov edi, ecx
shl edi, 4
sub edi, ecx
mov ecx, dword [ebx + 8]
fld dword [ecx + edi*4 + 8]
lea ecx, [ecx + edi*4 + 8]
fadd st(1)
fstp dword [ecx]
mov ecx, dword [eax - 0xc]
mov edi, ecx
fld st(1)
shl edi, 4
sub edi, ecx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 4]
lea ecx, [ecx + edi*4 + 4]
fstp dword [ecx]
mov ecx, dword [eax - 0xc]
mov edi, ecx
shl edi, 4
fld st(0)
sub edi, ecx
dec edx
mov ecx, dword [ebx + 8]
fadd dword [ecx + edi*4 + 8]
lea ecx, [ecx + edi*4 + 8]
fstp dword [ecx]
jne 0x10017755
mov edx, dword [ebp - 0x160]
mov edi, dword [ebp - 0x164]
cmp esi, edx
jge 0x1001786f
mov eax, dword [edi + esi*4]
mov ecx, eax
shl ecx, 4
sub ecx, eax
mov eax, dword [ebx + 8]
fld dword [eax + ecx*4 + 4]
lea eax, [eax + ecx*4 + 4]
fadd st(2)
inc esi
fstp dword [eax]
mov eax, dword [edi + esi*4 - 4]
mov ecx, eax
shl ecx, 4
fld st(0)
sub ecx, eax
mov eax, dword [ebx + 8]
fadd dword [eax + ecx*4 + 8]
lea eax, [eax + ecx*4 + 8]
fstp dword [eax]
cmp esi, edx
jl 0x10017837
mov eax, dword [ebp - 0x180]
fstp st(1)
mov edx, dword [eax]
fstp st(0)
mov ecx, dword [ebp - 0x17c]
mov esi, dword [ebp - 0x180]
fst dword [edx + ecx*4]
mov eax, dword [eax + 0x10]
fst dword [eax + ecx*4]
jmp 0x10017898
mov edi, dword [ebp - 0x164]
mov eax, dword [ebp - 0x158]
inc eax
mov dword [ebp - 0x158], eax
cmp eax, dword [ebp - 0x19c]
jl 0x10017677
fstp st(0)
mov ecx, dword [ebp - 0x16c]
push ecx
call fcn.100358ef
push edi
call fcn.100358ef
fld qword [0x1018ca10]
add esp, 8
cmp dword [ebx + 0x184f8c], 0
jne 0x100179e7
xor eax, eax
cmp dword [ebx + 0xb00dc], eax
jle 0x10017929
xor edx, edx
mov edi, dword [ebx + 0x12d100]
mov ecx, dword [esi + 0x30]
fld dword [edi + eax*4]
fadd dword [edx + ecx + 0xc]
lea ecx, [edx + ecx + 0xc]
inc eax
add edx, 0xc
fstp dword [ecx]
mov edi, dword [ebx + 0x12d100]
fld dword [edi + eax*4 - 4]
mov ecx, dword [ebp - 0x15c]
fmul st(1)
fadd dword [ecx*4 + 0x101e6b5c]
fstp dword [ecx*4 + 0x101e6b5c]
cmp eax, dword [ebx + 0xb00dc]
jl 0x100178e7
xor ecx, ecx
cmp dword [ebx + 0xcd5a0], ecx
jle 0x100179e7
fld dword [0x1018d154]
xor edx, edx
fld1
fldz
mov eax, dword [ebx + 0x12d10c]
fld dword [eax + ecx*4]
fstp dword [ebp - 0x160]
fld dword [ebp - 0x160]
fcom st(1)
fnstsw ax
test ah, 5
jp 0x10017977
fstp st(0)
fxch st(2)
fst dword [ebp - 0x160]
fld dword [ebp - 0x160]
fxch st(1)
fxch st(3)
fxch st(1)
mov edi, dword [ebx + 0x12d0fc]
fld st(0)
mov eax, dword [esi + 0x40]
fsubr st(3)
lea eax, [edx + eax + 0x1c]
inc ecx
fstp dword [ebp - 0x154]
fmul dword [edi + ecx*4 - 4]
fadd dword [eax]
fstp dword [eax]
mov edi, dword [ebx + 0x12d0fc]
fld dword [edi + ecx*4 - 4]
mov eax, dword [esi + 0x40]
fmul dword [ebp - 0x154]
lea eax, [edx + eax + 0x24]
add edx, 0x1c
fadd dword [eax]
fstp dword [eax]
mov edi, dword [ebx + 0x12d0fc]
fld dword [edi + ecx*4 - 4]
mov eax, dword [ebp - 0x15c]
fmul st(4)
fadd dword [eax*4 + 0x101e656c]
fstp dword [eax*4 + 0x101e656c]
cmp ecx, dword [ebx + 0xcd5a0]
jl 0x10017943
fstp st(1)
fstp st(1)
jmp 0x100179e9
fldz
fld dword [0x1018d3f0]
xor eax, eax
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x250], eax
jle 0x10017a53
mov dword [ebp - 0x160], eax
mov edi, dword [ebp - 0x248]
add edi, dword [ebp - 0x160]
fld dword [edi + 4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10017a37
fld dword [edi]
call fcn.1012a430
fld dword [edi + 8]
mov ecx, dword [esi + 0x30]
lea eax, [eax + eax*2]
fadd dword [ecx + eax*4]
lea eax, [ecx + eax*4]
fstp dword [eax]
mov eax, dword [ebp - 0x158]
add dword [ebp - 0x160], 0x14
inc eax
mov dword [ebp - 0x158], eax
cmp eax, dword [ebp - 0x250]
jl 0x10017a05
cmp dword [ebp - 0x24c], 0
mov dword [ebp - 0x158], 0
jle 0x10017ac0
mov dword [ebp - 0x160], 0
mov edi, dword [ebp - 0x160]
add edi, dword [ebp - 0x244]
fld dword [edi + 4]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10017aa4
fld dword [edi]
call fcn.1012a430
fld dword [edi + 8]
mov edx, dword [esi + 0x30]
lea ecx, [eax + eax*2]
fadd dword [edx + ecx*4 + 4]
lea eax, [edx + ecx*4 + 4]
fstp dword [eax]
mov eax, dword [ebp - 0x158]
add dword [ebp - 0x160], 0x14
inc eax
mov dword [ebp - 0x158], eax
cmp eax, dword [ebp - 0x24c]
jl 0x10017a70
mov ecx, dword [esi + 0x44]
fstp st(0)
sub ecx, dword [esi + 0x40]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov edi, edx
shr edi, 0x1f
add edi, edx
mov dword [ebp - 0x158], 1
cmp edi, 1
jle 0x10017dfb
lea eax, [edi - 1]
cmp eax, 4
jl 0x10017d4e
lea eax, [edi - 5]
shr eax, 2
inc eax
lea ecx, [eax*4 + 1]
mov dword [ebp - 0x19c], 0x1c
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x158], ecx
mov ecx, dword [esi + 0x40]
mov edx, dword [ebp - 0x19c]
fcom dword [ecx + edx]
add ecx, edx
fnstsw ax
test ah, 0x41
jne 0x10017b49
fcom dword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x10017b49
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx + 8]
fst dword [ecx]
jmp 0x10017b66
fcom dword [ecx]
fnstsw ax
test ah, 5
jp 0x10017b66
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x10017b66
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx]
fst dword [ecx + 8]
fcom dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x10017b86
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 5
jp 0x10017b86
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 0xc]
fst dword [ecx + 4]
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x10017ba6
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jne 0x10017ba6
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fst dword [ecx + 0xc]
mov eax, dword [esi + 0x40]
fcom dword [edx + eax + 0x1c]
lea ecx, [edx + eax + 0x1c]
fnstsw ax
test ah, 0x41
jne 0x10017bce
fcom dword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x10017bce
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx + 8]
fst dword [ecx]
jmp 0x10017beb
fcom dword [ecx]
fnstsw ax
test ah, 5
jp 0x10017beb
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x10017beb
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx]
fst dword [ecx + 8]
fcom dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x10017c0b
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 5
jp 0x10017c0b
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 0xc]
fst dword [ecx + 4]
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x10017c2b
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jne 0x10017c2b
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fst dword [ecx + 0xc]
mov edx, dword [ebp - 0x19c]
mov ecx, dword [esi + 0x40]
add edx, 0x54
fcom dword [edx + ecx - 0x1c]
lea ecx, [edx + ecx - 0x1c]
fnstsw ax
test ah, 0x41
jne 0x10017c5c
fcom dword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x10017c5c
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx + 8]
fst dword [ecx]
jmp 0x10017c79
fcom dword [ecx]
fnstsw ax
test ah, 5
jp 0x10017c79
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x10017c79
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx]
fst dword [ecx + 8]
fcom dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x10017c99
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 5
jp 0x10017c99
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 0xc]
fst dword [ecx + 4]
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x10017cb9
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jne 0x10017cb9
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fst dword [ecx + 0xc]
mov ecx, dword [esi + 0x40]
fcom dword [ecx + edx]
add ecx, edx
fnstsw ax
test ah, 0x41
jne 0x10017cde
fcom dword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x10017cde
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx + 8]
fst dword [ecx]
jmp 0x10017cfb
fcom dword [ecx]
fnstsw ax
test ah, 5
jp 0x10017cfb
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x10017cfb
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx]
fst dword [ecx + 8]
fcom dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x10017d1b
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 5
jp 0x10017d1b
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 0xc]
fst dword [ecx + 4]
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x10017d3b
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jne 0x10017d3b
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fst dword [ecx + 0xc]
add dword [ebp - 0x19c], 0x70
dec dword [ebp - 0x168]
jne 0x10017b1e
cmp dword [ebp - 0x158], edi
jge 0x10017dfb
mov eax, dword [ebp - 0x158]
lea edx, [eax*8]
sub edx, eax
add edx, edx
add edx, edx
sub edi, eax
mov ecx, dword [esi + 0x40]
fcom dword [ecx + edx]
add ecx, edx
fnstsw ax
test ah, 0x41
jne 0x10017d94
fcom dword [ecx + 8]
fnstsw ax
test ah, 5
jp 0x10017d94
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx + 8]
fst dword [ecx]
jmp 0x10017db1
fcom dword [ecx]
fnstsw ax
test ah, 5
jp 0x10017db1
fcom dword [ecx + 8]
fnstsw ax
test ah, 0x41
jne 0x10017db1
fld dword [ecx + 8]
fadd dword [ecx]
fstp dword [ecx]
fst dword [ecx + 8]
fcom dword [ecx + 4]
fnstsw ax
test ah, 0x41
jne 0x10017dd1
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 5
jp 0x10017dd1
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 0xc]
fst dword [ecx + 4]
fcom dword [ecx + 4]
fnstsw ax
test ah, 5
jp 0x10017df1
fcom dword [ecx + 0xc]
fnstsw ax
test ah, 0x41
jne 0x10017df1
fld dword [ecx + 0xc]
fadd dword [ecx + 4]
fstp dword [ecx + 4]
fst dword [ecx + 0xc]
add edx, 0x1c
dec edi
jne 0x10017d6f
fld dword [0x1018d3ec]
mov dword [ebp - 0x16c], 0
cmp dword [ebp - 0x16c], 0
jne 0x10017e28
mov eax, dword [ebp - 0x258]
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x188], ecx
jmp 0x10017e3a
mov eax, dword [ebp - 0x254]
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x188], ecx
cmp dword [ecx], 0
mov dword [ebp - 0x158], 0
jle 0x10018096
add eax, 4
mov dword [ebp - 0x164], eax
mov edx, eax
fxch st(1)
fcom dword [edx - 4]
fnstsw ax
test ah, 0x41
je 0x10018070
fld dword [edx]
fld dword [0x1018d3e8]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10017e8a
fld dword [edx]
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10018070
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [edx - 4]
call fcn.1012a430
lea esi, [eax + eax*4]
add esi, esi
add esi, esi
movsx edx, word [esi + ebx + 0xdcf96]
movsx eax, word [ebx + edx*2 + 0x5829a]
movsx ecx, word [ebx + esi + 0xdcf96]
fld dword [ebx + eax*4 + 0x5e28]
movsx eax, word [esi + ebx + 0xdcf96]
fstp dword [ebp - 0x1a4]
movsx edx, word [ebx + ecx*2 + 0x5829a]
fld dword [ebx + edx*4 + 0x119a8]
movsx edx, word [esi + ebx + 0xdcf96]
fstp dword [ebp - 0x1c4]
movsx ecx, word [ebx + eax*2 + 0x66cfa]
fld dword [ebx + ecx*4 + 0x5e28]
mov ecx, dword [sym.imp.CfgDll55.dll_m_pCfg]
fstp dword [ebp - 0x198]
movsx eax, word [ebx + edx*2 + 0x66cfa]
fld dword [ebx + eax*4 + 0x119a8]
lea eax, [ebp - 0x154]
push eax
fstp dword [ebp - 0x154]
mov ecx, dword [ecx]
mov edx, dword [ecx]
mov edx, dword [edx + 0x7d8]
lea eax, [ebp - 0x198]
push eax
lea eax, [ebp - 0x1c4]
push eax
lea eax, [ebp - 0x1a4]
push eax
lea eax, [ebp - 0x160]
push eax
call edx
fld dword [ebp - 0x160]
fmul qword [0x1018d3e0]
fdiv qword [0x1018d168]
fst qword [ebp - 0x1a0]
call fcn.1012a650
fstp dword [ebp - 0x17c]
fld qword [ebp - 0x1a0]
call fcn.1012a520
fchs
mov eax, dword [ebp - 0x164]
fstp dword [ebp - 0x19c]
fld dword [eax]
fld dword [0x1018d3e8]
fucompp
fnstsw ax
test ah, 0x44
jp 0x10017fde
movsx ecx, word [esi + ebx + 0xdcf96]
push ecx
lea ecx, [ebx + 0x64]
call fcn.1001c700
call fcn.1012a430
mov edx, dword [ebp - 0x164]
mov dword [ebp - 0x168], eax
fild dword [ebp - 0x168]
fstp dword [ebp - 0x168]
fld dword [edx + 4]
fmul dword [ebp - 0x168]
fld qword [0x1018ca10]
fmul st(1), st(0)
fxch st(1)
fstp dword [ebp - 0x168]
jmp 0x10017fe4
fld qword [0x1018ca10]
mov ecx, dword [ebp - 0x164]
fld dword [ecx]
fld dword [0x1018d3ec]
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x10018008
fld dword [ecx + 4]
fstp dword [ebp - 0x168]
mov eax, dword [ebp - 0x16c]
fld dword [ebp - 0x168]
mov ecx, dword [ebp - 0x15c]
fld st(0)
fmul dword [ebp - 0x17c]
lea eax, [eax + ecx*4]
lea eax, [eax*8 - 0x20]
fld dword [eax + 0x101e6e90]
mov edx, dword [ebp - 0x164]
fadd st(1)
fstp dword [eax + 0x101e6e90]
fld dword [ebp - 0x19c]
fmulp st(2)
fld dword [eax + 0x101e6e94]
fadd st(2)
fstp dword [eax + 0x101e6e94]
fadd dword [eax + 0x101e6ea0]
fstp dword [eax + 0x101e6ea0]
fadd dword [eax + 0x101e6ea4]
fstp dword [eax + 0x101e6ea4]
fldz
mov eax, dword [ebp - 0x158]
fxch st(1)
mov ecx, dword [ebp - 0x188]
inc eax
add edx, 0x18
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x164], edx
cmp eax, dword [ecx]
jl 0x10017e58
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
cmp eax, 2
jl 0x10017e0b
mov dword [ebp - 0x16c], 0
cmp dword [ebp - 0x16c], 0
jne 0x100180d3
mov eax, dword [ebp - 0x258]
lea ecx, [ebp - 0x260]
mov dword [ebp - 0x188], ecx
jmp 0x100180e5
mov eax, dword [ebp - 0x254]
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x188], ecx
cmp dword [ecx], 0
mov dword [ebp - 0x158], 0
jle 0x10018347
add eax, 4
mov dword [ebp - 0x164], eax
mov ecx, eax
fxch st(1)
fcom dword [ecx - 4]
fnstsw ax
test ah, 5
jnp 0x10018321
fld dword [ecx]
fld dword [0x1018d3e8]
fucompp
fnstsw ax
test ah, 0x44
jnp 0x10018135
fld dword [ecx]
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10018321
mov edx, dword [ebp - 0x164]
fstp st(0)
fstp st(0)
fstp st(0)
fld dword [edx - 4]
fchs
call fcn.1012a430
shl eax, 4
mov edi, eax
movsx eax, word [edi + ebx + 0xcd596]
movsx ecx, word [ebx + eax*2 + 0x5829a]
movsx edx, word [edi + ebx + 0xcd596]
fld dword [ebx + ecx*4 + 0x5e28]
movsx ecx, word [edi + ebx + 0xcd596]
fstp dword [ebp - 0x1a4]
movsx eax, word [ebx + edx*2 + 0x5829a]
fld dword [ebx + eax*4 + 0x119a8]
movsx eax, word [edi + ebx + 0xcd596]
fstp dword [ebp - 0x1c4]
movsx edx, word [ebx + ecx*2 + 0x66cfa]
fld dword [ebx + edx*4 + 0x5e28]
mov edx, dword [sym.imp.CfgDll55.dll_m_pCfg]
fstp dword [ebp - 0x198]
movsx ecx, word [ebx + eax*2 + 0x66cfa]
fld dword [ebx + ecx*4 + 0x119a8]
fstp dword [ebp - 0x154]
mov ecx, dword [edx]
mov eax, dword [ecx]
mov eax, dword [eax + 0x7d8]
lea edx, [ebp - 0x154]
push edx
lea edx, [ebp - 0x198]
push edx
lea edx, [ebp - 0x1c4]
push edx
lea edx, [ebp - 0x1a4]
push edx
lea edx, [ebp - 0x160]
push edx
call eax
fld dword [ebp - 0x160]
fmul qword [0x1018d3e0]
fdiv qword [0x1018d168]
fst qword [ebp - 0x1a0]
call fcn.1012a650
fstp dword [ebp - 0x17c]
fld qword [ebp - 0x1a0]
call fcn.1012a520
fchs
mov ecx, dword [ebp - 0x164]
fstp dword [ebp - 0x19c]
fld dword [ecx]
fld dword [0x1018d3e8]
fucompp
fnstsw ax
test ah, 0x44
jp 0x1001828f
movsx edx, word [edi + ebx + 0xcd596]
push edx
lea ecx, [ebx + 0x64]
call fcn.1001c700
call fcn.1012a430
mov dword [ebp - 0x168], eax
fild dword [ebp - 0x168]
mov eax, dword [ebp - 0x164]
fstp dword [ebp - 0x168]
fld dword [eax + 4]
fmul dword [ebp - 0x168]
fld qword [0x1018ca10]
fmul st(1), st(0)
fxch st(1)
fstp dword [ebp - 0x168]
jmp 0x10018295
fld qword [0x1018ca10]
mov ecx, dword [ebp - 0x164]
fld dword [ecx]
fld dword [0x1018d3ec]
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x100182b9
fld dword [ecx + 4]
fstp dword [ebp - 0x168]
mov ecx, dword [ebp - 0x16c]
fld dword [ebp - 0x168]
mov edx, dword [ebp - 0x15c]
fld st(0)
fmul dword [ebp - 0x17c]
lea eax, [ecx + edx*4]
lea eax, [eax*8 - 0x20]
fld dword [eax + 0x101e6e90]
mov ecx, dword [ebp - 0x164]
fadd st(1)
fstp dword [eax + 0x101e6e90]
fld dword [ebp - 0x19c]
fmulp st(2)
fld dword [eax + 0x101e6e94]
fadd st(2)
fstp dword [eax + 0x101e6e94]
fadd dword [eax + 0x101e6ea0]
fstp dword [eax + 0x101e6ea0]
fadd dword [eax + 0x101e6ea4]
fstp dword [eax + 0x101e6ea4]
fldz
mov eax, dword [ebp - 0x158]
fxch st(1)
mov edx, dword [ebp - 0x188]
inc eax
add ecx, 0x18
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x164], ecx
cmp eax, dword [edx]
jl 0x10018103
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
cmp eax, 2
jl 0x100180b6
fstp st(0)
xor ecx, ecx
fld qword [0x1018d3d8]
mov dword [ebp - 0x16c], ecx
fld dword [0x1018d3d0]
test ecx, ecx
jne 0x10018385
mov esi, dword [ebp - 0x248]
lea eax, [ebp - 0x250]
jmp 0x10018391
mov esi, dword [ebp - 0x244]
lea eax, [ebp - 0x24c]
mov eax, dword [eax]
test eax, eax
jle 0x10018576
add esi, 4
mov dword [ebp - 0x1a4], eax
fld dword [esi]
fld st(2)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x100183c2
fld dword [esi]
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jp 0x10018561
fstp st(0)
fstp st(0)
fst dword [ebp - 0x160]
fst dword [ebp - 0x17c]
fld dword [esi + 0xc]
call fcn.1012a430
mov edi, eax
cmp edi, 1
jne 0x1001844b
fstp st(0)
fstp st(0)
fld dword [esi - 4]
call fcn.1012a430
lea eax, [eax + eax*2]
fld dword [ebx + eax*8 + 0xb00d4]
fmul qword [0x1018d3e0]
fdiv qword [0x1018d168]
fstp dword [ebp - 0x168]
fld dword [ebp - 0x168]
call fcn.1012a520
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fstp dword [ebp - 0x160]
fld dword [ebp - 0x168]
call fcn.1012a650
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fstp dword [ebp - 0x17c]
fld qword [0x1018ca10]
fldz
cmp edi, 2
jne 0x100184c0
fstp st(0)
fstp st(0)
fld dword [esi - 4]
call fcn.1012a430
lea ecx, [eax + eax*2]
fld dword [ebx + ecx*8 + 0xb00d4]
fadd qword [0x1018d3c8]
fmul qword [0x1018d3e0]
fdiv qword [0x1018d168]
fstp dword [ebp - 0x168]
fld dword [ebp - 0x168]
call fcn.1012a520
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fstp dword [ebp - 0x160]
fld dword [ebp - 0x168]
call fcn.1012a650
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fstp dword [ebp - 0x17c]
fld qword [0x1018ca10]
fldz
fld dword [esi]
fld qword [0x1018d3d8]
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x100184e3
fld dword [esi + 8]
fmul dword [esi + 4]
fmul st(3)
fstp dword [ebp - 0x188]
fld dword [esi]
fld dword [0x1018d3d0]
fld st(0)
fucomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x44
jp 0x10018501
fld dword [esi + 4]
fstp dword [ebp - 0x188]
mov edx, dword [ebp - 0x16c]
fld dword [ebp - 0x188]
mov eax, dword [ebp - 0x15c]
fld st(0)
fmul dword [ebp - 0x160]
lea eax, [edx + eax*4]
lea eax, [eax*8 - 0x20]
fld dword [eax + 0x101e6e90]
fadd st(1)
fstp dword [eax + 0x101e6e90]
fld dword [ebp - 0x17c]
fmulp st(2)
fld dword [eax + 0x101e6e94]
fadd st(2)
fstp dword [eax + 0x101e6e94]
fadd dword [eax + 0x101e6ea0]
fstp dword [eax + 0x101e6ea0]
fadd dword [eax + 0x101e6ea4]
fstp dword [eax + 0x101e6ea4]
add esi, 0x14
dec dword [ebp - 0x1a4]
jne 0x100183a4
mov ecx, dword [ebp - 0x16c]
inc ecx
mov dword [ebp - 0x16c], ecx
cmp ecx, 2
jl 0x10018373
mov edi, dword [ebp - 0x15c]
fstp st(0)
fstp st(0)
xor esi, esi
test esi, esi
jne 0x100185a4
mov ecx, dword [ebp - 0x238]
lea eax, [ebp - 0x240]
jmp 0x100185b0
mov ecx, dword [ebp - 0x234]
lea eax, [ebp - 0x23c]
mov eax, dword [eax]
test eax, eax
jle 0x10018658
add ecx, 0x14
mov edx, eax
fld dword [ecx - 4]
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fabs
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fcomp st(2)
fnstsw ax
test ah, 5
jp 0x1001860a
fld dword [ecx]
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fabs
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fcomp st(2)
fnstsw ax
test ah, 5
jnp 0x1001864e
lea eax, [esi + edi*4]
lea eax, [eax*8 - 0x20]
fld dword [eax + 0x101e6e90]
fadd dword [ecx - 4]
fstp dword [eax + 0x101e6e90]
fld dword [eax + 0x101e6e94]
fadd dword [ecx]
fstp dword [eax + 0x101e6e94]
fld dword [eax + 0x101e6ea0]
fadd dword [ecx - 4]
fstp dword [eax + 0x101e6ea0]
fld dword [eax + 0x101e6ea4]
fadd dword [ecx]
fstp dword [eax + 0x101e6ea4]
add ecx, 0x18
dec edx
jne 0x100185bf
inc esi
cmp esi, 2
jl 0x10018592
mov edx, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov eax, dword [edx + 0x16c]
mov eax, dword [eax]
xor ecx, ecx
mov dword [ebp - 0x168], eax
test eax, eax
jle 0x100186c1
mov edx, dword [ebx + 0x64]
lea esi, [ecx + 1]
cmp esi, edx
je 0x100186b7
mov eax, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov eax, dword [eax + 0x170]
mov di, word [eax + ecx*2]
cmp di, word [eax + edx*2 - 2]
jne 0x100186b7
mov eax, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov eax, dword [eax + 0x184]
fld dword [eax + ecx*4]
fld dword [eax + edx*4 - 4]
fcompp
fnstsw ax
test ah, 0x41
je 0x100186c1
mov ecx, esi
cmp ecx, dword [ebp - 0x168]
jl 0x1001867f
cmp ecx, dword [ebp - 0x168]
je 0x100186d6
cmp dword [ebx + 0x184f8c], 0
je 0x10018cb0
cmp dword [ebx + 0x184f90], 0
jne 0x10018cb0
cmp dword [ebx + 0x184f88], 0
jne 0x10018cb0
mov esi, 1
mov dword [ebp - 0x19c], esi
cmp dword [ebx + 0x68], esi
jl 0x10018a7c
mov dword [ebp - 0x164], 0x22
mov eax, dword [ebx + 0x12d104]
mov edi, dword [ebp - 0x180]
test eax, eax
je 0x10018762
mov ecx, dword [eax + 0x34]
fstp st(0)
mov dword [ebp - 0x198], ecx
fstp st(0)
lea edx, [ebp - 0x154]
push edx
lea ecx, [ebp - 0x1c4]
push ecx
lea ecx, [eax + 0x30]
mov dword [ebp - 0x154], esi
call fcn.1001a280
fld qword [0x1018ca10]
mov ecx, dword [ebp - 0x198]
fldz
xor edx, edx
cmp dword [eax], ecx
setne dl
mov eax, edx
test eax, eax
jne 0x1001876f
cmp dword [ebx + 0x184f8c], 0
je 0x10018a5a
mov edx, dword [edi]
fld dword [edx + esi*4]
mov ecx, dword [edi + 0x10]
lea eax, [edx + esi*4]
fmul st(2)
fstp dword [ebp - 0x1e0]
fld dword [ecx + esi*4]
fmul st(2)
fstp dword [ebp - 0x1dc]
fst dword [eax]
mov edx, dword [edi + 0x10]
fst dword [edx + esi*4]
mov eax, dword [ebx + 0x12d0f4]
movzx eax, word [eax + esi*2 - 2]
test ax, ax
jle 0x100187d5
mov edx, dword [edi + 0x30]
cwde
lea ecx, [eax + eax*2]
lea eax, [edx + ecx*4]
fld dword [eax]
fmul st(2)
fadd dword [ebp - 0x1e0]
fstp dword [ebp - 0x1e0]
fld dword [eax + 4]
fmul st(2)
fadd dword [ebp - 0x1dc]
fstp dword [ebp - 0x1dc]
fst dword [eax]
fst dword [eax + 4]
mov edx, 1
cmp dword [ebx + 4], edx
jle 0x1001883b
mov edi, dword [ebp - 0x15c]
mov ecx, 0x3c
mov eax, dword [ebx + 8]
add eax, ecx
cmp dword [eax + 0x28], edi
jne 0x10018830
cmp dword [eax - 0xc], esi
jne 0x10018830
cmp dword [eax - 0x14], edi
je 0x10018830
fld dword [eax - 0x38]
fmul st(2)
fadd dword [ebp - 0x1e0]
fstp dword [ebp - 0x1e0]
fld dword [eax - 0x34]
fmul st(2)
fadd dword [ebp - 0x1dc]
fstp dword [ebp - 0x1dc]
fst dword [eax - 0x38]
mov eax, dword [ebx + 8]
fst dword [ecx + eax - 0x34]
mov edi, dword [ebp - 0x15c]
add edx, 2
add ecx, 0x78
cmp edx, dword [ebx + 4]
jl 0x100187ea
mov ecx, dword [ebx + 0x12d0ec]
mov eax, dword [ebp - 0x164]
mov edx, 1
mov dword [ebp - 0x188], 1
cmp dx, word [ecx + eax - 0x22]
jg 0x100189c9
mov ecx, eax
add ecx, 0xffffffe0
mov dword [ebp - 0x160], ecx
mov edx, dword [ebx + 0x12d0ec]
mov eax, dword [ebp - 0x160]
movsx esi, word [edx + eax]
mov ecx, dword [ebx + 0x12d104]
mov eax, esi
add eax, eax
movsx edx, word [ebx + eax*8 + 0xcd596]
movsx eax, word [ebx + eax*8 + 0xcd596]
movsx edi, word [ebx + edx*2 + 0x5829a]
movsx edx, word [ebx + eax*2 + 0x66cfa]
mov dword [ebp - 0x168], edx
test ecx, ecx
je 0x10018902
mov eax, edx
fstp st(0)
sub eax, dword [ebp - 0x19c]
fstp st(0)
mov edx, dword [ecx + 0x34]
add eax, edi
mov dword [ebp - 0x154], eax
lea eax, [ebp - 0x154]
mov dword [ebp - 0x198], edx
push eax
lea edx, [ebp - 0x1a4]
push edx
add ecx, 0x30
call fcn.1001a280
fld qword [0x1018ca10]
mov edx, dword [ebp - 0x198]
fldz
xor ecx, ecx
cmp dword [eax], edx
setne cl
mov eax, ecx
test eax, eax
jne 0x1001899c
mov edx, dword [ebp - 0x19c]
cmp edi, edx
jne 0x1001894f
mov edi, dword [ebp - 0x180]
mov ecx, dword [edi + 0x40]
lea eax, [esi*8]
sub eax, esi
add eax, eax
add eax, eax
fld dword [ecx + eax]
fmul st(2)
fadd dword [ebp - 0x1e0]
fstp dword [ebp - 0x1e0]
fld dword [ecx + eax + 4]
fmul st(2)
fadd dword [ebp - 0x1dc]
fstp dword [ebp - 0x1dc]
fst dword [ecx + eax]
mov ecx, dword [edi + 0x40]
fst dword [eax + ecx + 4]
cmp dword [ebp - 0x168], edx
jne 0x1001899c
mov edx, dword [ebp - 0x180]
mov ecx, dword [edx + 0x40]
lea eax, [esi*8]
sub eax, esi
add eax, eax
add eax, eax
fld dword [ecx + eax + 8]
fmul st(2)
fadd dword [ebp - 0x1e0]
fstp dword [ebp - 0x1e0]
fld dword [ecx + eax + 0xc]
fmul st(2)
fadd dword [ebp - 0x1dc]
fstp dword [ebp - 0x1dc]
fst dword [ecx + eax + 8]
mov edx, dword [edx + 0x40]
fst dword [eax + edx + 0xc]
mov ecx, dword [ebx + 0x12d0ec]
mov edx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x188]
movsx ecx, word [ecx + edx - 0x22]
add dword [ebp - 0x160], 2
inc eax
mov dword [ebp - 0x188], eax
cmp eax, ecx
jle 0x1001886c
fld dword [ebp - 0x1e0]
fabs
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x10018a03
fld dword [ebp - 0x1dc]
fabs
fstp dword [ebp - 0x154]
fld dword [ebp - 0x154]
fcomp st(2)
fnstsw ax
test ah, 0x41
jne 0x10018a5a
mov edx, dword [ebx + 0x64]
fstp st(0)
mov edi, dword [ebx + 0x2c]
fstp st(0)
mov eax, dword [ebp - 0x19c]
lea ecx, [ebp - 0x1e8]
push ecx
mov dword [ebp - 0x1e8], edx
mov edx, dword [edi + 4]
push edx
push edi
lea ecx, [ebx + 0x2c]
mov dword [ebp - 0x1e4], eax
call fcn.100199c0
mov ecx, dword [ebx + 0x30]
mov edx, 0xffffffe
sub edx, ecx
cmp edx, 1
jb 0x10018c14
fld qword [0x1018ca10]
inc ecx
fldz
mov dword [ebx + 0x30], ecx
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov esi, dword [ebp - 0x19c]
add dword [ebp - 0x164], 0x22
inc esi
mov dword [ebp - 0x19c], esi
cmp esi, dword [ebx + 0x68]
jle 0x1001870e
mov esi, 1
fstp st(0)
mov dword [ebp - 0x160], esi
fstp st(0)
cmp dword [ebx + 0xcd5a0], esi
jl 0x10018cb4
mov eax, 0x10
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x17c], 0x1c
movsx edx, word [eax + ebx + 0xcd596]
movsx ecx, word [eax + ebx + 0xcd596]
movsx eax, word [ebx + edx*2 + 0x66cfa]
movsx ecx, word [ebx + ecx*2 + 0x5829a]
mov dword [ebp - 0x168], eax
mov eax, dword [ebx + 0x12d104]
mov dword [ebp - 0x198], ecx
test eax, eax
je 0x10018b45
mov esi, dword [eax + 0x34]
mov dword [ebp - 0x154], ecx
lea ecx, [ebp - 0x154]
push ecx
lea edx, [ebp - 0x1c4]
push edx
lea ecx, [eax + 0x30]
call fcn.1001a280
xor ecx, ecx
cmp dword [eax], esi
setne cl
mov eax, ecx
test eax, eax
je 0x10018b45
mov eax, dword [ebx + 0x12d104]
test eax, eax
je 0x10018b45
mov edx, dword [ebp - 0x168]
mov esi, dword [eax + 0x34]
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x154], edx
push ecx
lea edx, [ebp - 0x188]
push edx
lea ecx, [eax + 0x30]
call fcn.1001a280
xor ecx, ecx
cmp dword [eax], esi
setne cl
mov eax, ecx
test eax, eax
jne 0x10018b52
cmp dword [ebx + 0x184f8c], 0
je 0x10018c7f
mov eax, dword [ebp - 0x19c]
movsx ecx, word [eax + ebx + 0xcd596]
mov edx, dword [ebp - 0x180]
mov esi, dword [edx + 0x40]
add esi, dword [ebp - 0x17c]
push ecx
lea ecx, [ebx + 0x64]
call fcn.1001c700
call fcn.1012a430
mov dword [ebp - 0x154], eax
fild dword [ebp - 0x154]
fstp dword [ebp - 0x154]
fld dword [esi]
fld qword [0x1018ca10]
fmul st(1), st(0)
fxch st(1)
fstp dword [ebp - 0x284]
fld dword [esi + 8]
fmul st(1)
fstp dword [ebp - 0x280]
fld dword [esi + 4]
fmul st(1)
fstp dword [ebp - 0x27c]
fld dword [esi + 0xc]
fmul st(1)
fstp dword [ebp - 0x278]
fld dword [esi + 8]
fadd dword [esi]
fld dword [ebp - 0x154]
fld st(0)
fdivp st(2)
fxch st(1)
fstp dword [ebp - 0x274]
fld dword [esi + 0xc]
fadd dword [esi + 4]
fdivrp st(1)
fstp dword [ebp - 0x270]
fldz
fst dword [esi + 0xc]
fst dword [esi + 8]
fst dword [esi + 4]
fstp dword [esi]
fld dword [ebp - 0x274]
fcomp st(1)
fnstsw ax
test ah, 0x41
je 0x10018c1e
fld dword [ebp - 0x270]
fcompp
fnstsw ax
test ah, 0x41
jne 0x10018c7f
jmp 0x10018c20
push 0x1018d19c
call fcn.10142e3e
fstp st(0)
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x168]
mov edi, dword [ebx + 0x38]
mov edx, dword [ebx + 0x64]
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x288], ecx
mov ecx, dword [edi + 4]
lea eax, [ebp - 0x294]
push eax
push ecx
mov dword [ebp - 0x294], edx
mov edx, dword [ebp - 0x160]
push edi
lea ecx, [ebx + 0x38]
mov dword [ebp - 0x290], edx
call fcn.10019a30
mov ecx, dword [ebx + 0x3c]
mov edx, 0x6666665
sub edx, ecx
cmp edx, 1
jb 0x10018c14
inc ecx
mov dword [ebx + 0x3c], ecx
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x160]
mov eax, dword [ebp - 0x19c]
add dword [ebp - 0x17c], 0x1c
inc ecx
add eax, 0x10
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x19c], eax
cmp ecx, dword [ebx + 0xcd5a0]
jle 0x10018aa7
jmp 0x10018cb4
fstp st(0)
fstp st(0)
mov eax, dword [sym.imp.PmsrwData.dll_class_CStruct4Ref_gr]
mov ecx, dword [eax + 0x21c]
mov eax, dword [ecx]
cmp eax, 7
je 0x10018ccb
cmp eax, 8
jne 0x10018d09
cmp dword [ebx + 0x184f90], 0
jne 0x10018d09
mov edx, dword [ebp - 0x1f8]
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1fc]
push edx
push eax
mov eax, dword [ebp - 0x1f0]
push ecx
lea edx, [ebp - 0x264]
push edx
push eax
lea ecx, [ebp - 0x26c]
push ecx
lea eax, [ebx + 0x64]
push eax
mov ecx, ebx
call fcn.1001b3c0
mov edx, dword [ebp - 0x1ac]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x1c8]
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x1d4]
push ecx
call fcn.100358ef
mov edx, dword [ebp - 0x268]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x1bc]
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x1b0]
push ecx
call fcn.100358ef
mov edx, dword [ebp - 0x1c0]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x1ec]
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x1f4]
push ecx
call fcn.100358ef
mov edx, dword [ebp - 0x178]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x1f0]
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x1fc]
push ecx
call fcn.100358ef
mov edx, dword [ebp - 0x1d8]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x1f8]
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x1cc]
push ecx
call fcn.100358ef
mov edx, dword [ebp - 0x1d0]
push edx
call fcn.100358ef
mov eax, dword [ebp - 0x170]
add esp, 0x40
push eax
call fcn.100358ef
mov ecx, dword [ebp - 0x174]
push ecx
call fcn.100358ef
add esp, 8
lea ecx, [ebp - 0x260]
mov dword [ebp - 4], 0xffffffff
call fcn.1001d600
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10128fd0
mov esp, ebp
pop ebp
ret 4