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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51c753
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x364
mov eax, dword [0x677e04]
test eax, eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x38], ecx
mov dword [ebp - 4], 0
je 0x442d00
cmp eax, 1
jne 0x445d14
mov eax, dword [0x677df8]
mov edx, dword [eax + 0xb98]
test edx, edx
je 0x442d14
call fcn.00441390
mov ecx, dword [0x677df8]
mov edx, dword [ecx + 0x10d4]
mov ecx, dword [0x5b746c]
mov dword [ebp - 0x2c], edx
call fcn.0049e490
mov eax, dword [0x677320]
mov ecx, dword [0x5b7468]
push eax
call fcn.004a5990
mov edi, dword [ebp - 0x70]
mov ebx, dword [0x677df8]
mov dword [ebp - 0x34], eax
xor ecx, ecx
xor eax, eax
xor edx, edx
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x188], edx
mov dword [ebp - 0x2d0], ecx
or esi, 0xffffffff
cmp ecx, 4
mov dword [ebp - 0x30], ecx
jge 0x442fee
cmp ecx, 3
ja case.default.0x442d77
jmp dword [ecx*4 + 0x445da8]
lea edi, [ebx + 0xba4]
jmp case.default.0x442d77
lea edi, [ebx + 0xcec]
jmp case.default.0x442d77
lea edi, [ebx + 0xf7c]
jmp 0x442d9c
lea edi, [ebx + 0xe34]
cmp dword [edi + 0x104], esi
je 0x442fc0
cmp byte [edi + 0x140], 0
je 0x442fc0
test eax, eax
jl 0x442fc6
cmp eax, 4
jge 0x442fc6
lea esi, [eax + eax*4]
inc eax
cmp ecx, 1
mov dword [ebp - 0x22c], eax
mov eax, dword [edi + 0x114]
mov edx, dword [eax + 0x48]
lea esi, [ebp + esi*8 - 0x2cc]
mov dword [esi + 0x10], edx
jle 0x442e0d
mov eax, dword [edi + 0x104]
cmp eax, 0xffffffff
jne 0x442dfa
mov eax, 0x7f
jmp 0x442e13
push eax
mov ecx, 0x676c9c
call fcn.00404360
mov eax, dword [eax + 0x108]
jmp 0x442e13
mov eax, dword [eax + 0x1c0]
mov ebx, dword [edi + 0x114]
fld dword [edi + 0x13c]
mov dword [esi + 8], eax
mov al, byte [ebx + 0x1ac]
mov dword [esi + 0x14], 0x3f800000
mov byte [esi], al
call fcn.00514cfc
mov dl, byte [ebx + 0x1ac]
test dl, dl
mov dword [ebp - 0x18], eax
mov dword [esi + 0xc], eax
mov byte [ebp - 0x49], dl
je 0x442e74
mov eax, dword [esi + 0x10]
test eax, eax
je 0x442e55
cmp eax, 1
jne 0x442e74
fild dword [ebp - 0x18]
fld dword [ebx + 0x19c]
fmul dword [0x522d38]
fcompp
fnstsw ax
test ah, 0x41
jne 0x442e74
mov eax, 1
jmp 0x442e76
xor eax, eax
mov cl, byte [ebx + 0x1ae]
test cl, cl
mov byte [esi + 4], al
je 0x442eac
test dl, dl
jne 0x442ea8
fld dword [edi + 0x144]
mov al, byte [edi + 0x141]
fdiv dword [ebx + 0x1a4]
mov byte [esi + 2], al
mov byte [esi + 4], al
fsubr dword [0x521590]
fstp dword [esi + 0x14]
test cl, cl
jne 0x442ed4
fld dword [ebx + 0x10c]
fcomp dword [0x5213d0]
fnstsw ax
test ah, 5
jp 0x442ed4
fld dword [edi + 0x120]
fmul dword [ebx + 0x10c]
fsubr dword [0x521590]
fstp dword [esi + 0x14]
mov dl, byte [ebx + 0x1ad]
test dl, dl
mov byte [esi + 5], dl
je 0x442f0f
mov eax, dword [edi + 0x110]
dec eax
je 0x442f00
dec eax
je 0x442ef8
dec eax
je 0x442f00
fld dword [0x521418]
jmp 0x442f0c
fld dword [0x521590]
jmp 0x442f0c
fld dword [edi + 0x128]
fdiv dword [ebx + 0x194]
fstp dword [esi + 0x18]
fld dword [edi + 0x10c]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x41
jne 0x442f29
mov eax, 1
jmp 0x442f2b
xor eax, eax
mov byte [esi + 3], al
mov eax, dword [edi + 0x10c]
mov dword [esi + 0x1c], eax
mov eax, dword [ebx + 0x10c]
mov dword [esi + 0x24], eax
mov al, byte [ebp - 0x49]
test al, al
mov byte [esi + 6], cl
je 0x442f51
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x442f7d
test cl, cl
je 0x442f67
test al, al
jne 0x442f63
mov al, byte [edi + 0x141]
test al, al
jne 0x442f7d
test cl, cl
jne 0x442f70
cmp dword [esi + 0x14], 0x3f800000
jne 0x442f7d
test dl, dl
je 0x442f84
cmp dword [esi + 0x18], 0x3f800000
je 0x442f84
mov eax, 1
jmp 0x442f86
xor eax, eax
fld dword [edi + 0xe0]
mov byte [esi + 0x20], al
fcomp dword [0x521418]
fnstsw ax
test ah, 0x41
jne 0x442fa3
mov eax, 1
jmp 0x442fa5
xor eax, eax
mov edx, dword [ebp - 0x188]
mov ecx, dword [ebp - 0x30]
mov ebx, dword [0x677df8]
mov byte [esi + 0x21], al
mov eax, dword [ebp - 0x22c]
or esi, 0xffffffff
inc ecx
jmp 0x442d66
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0xdc]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea edx, [ebp - 0xdc]
push edx
call fcn.00514dd6
fld dword [ebx + 0xb94]
mov byte [ebp - 4], 1
fcomp dword [0x524f08]
fnstsw ax
test ah, 0x41
jne 0x44300c
mov ecx, 1
jmp 0x44300e
xor ecx, ecx
test edx, edx
jl 0x445d4d
cmp edx, 0x14
jge 0x445d4d
lea eax, [ebp + edx*8 - 0x228]
mov byte [eax], cl
mov eax, dword [ebp - 0x188]
test eax, eax
jl 0x445d25
cmp eax, 0x14
jge 0x445d25
lea eax, [ebp + eax*8 - 0x228]
mov dword [eax + 4], 0xe
mov edi, dword [ebp - 0x188]
inc edi
mov dword [ebp - 0x188], edi
xor esi, esi
lea esp, [esp]
mov eax, dword [ebx + 0x10d4]
cmp esi, dword [eax + 0x1b8]
jge 0x443107
test esi, esi
jl 0x4430df
cmp esi, 0x14
jge 0x4430df
mov ecx, dword [eax + esi*4 + 0x168]
mov edx, dword [ecx + 0x34]
mov al, byte [edx + 0x40]
test al, al
je 0x4430b4
test edi, edi
jl 0x4430b7
cmp edi, 0x14
jge 0x4430b7
mov edx, dword [edx + 0x4c]
mov cl, byte [ecx + 0x30]
lea eax, [ebp + edi*8 - 0x228]
inc edi
mov dword [ebp - 0x188], edi
mov dword [eax + 4], edx
mov byte [eax], cl
mov edi, dword [ebp - 0x188]
inc esi
jmp 0x443060
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x100]
push eax
call fcn.00514dd6
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x148]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea edx, [ebp - 0x148]
push edx
call fcn.00514dd6
xor edi, edi
lea esp, [esp]
cmp edi, 3
jge 0x443201
xor esi, esi
mov eax, edi
sub eax, esi
je 0x443184
dec eax
je 0x443177
dec eax
je 0x443167
lea eax, [edi - 3]
test eax, eax
jl 0x44313f
cmp eax, 0x14
jge 0x44313f
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx + eax*4 + 0x168]
jmp 0x443192
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x160]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x160]
push eax
call fcn.00514dd6
mov ecx, dword [ebp - 0x2c]
add ecx, 0x80
mov esi, 5
jmp 0x443192
mov ecx, dword [ebp - 0x2c]
add ecx, 0x48
mov esi, 6
jmp 0x443192
mov ecx, dword [ebp - 0x2c]
add ecx, 0x128
mov esi, 4
mov edx, dword [ecx]
call dword [edx + 0xc]
fcom dword [0x521418]
fst dword [ebp - 0x14]
fnstsw ax
test ah, 0x44
jnp 0x4431f9
mov ecx, dword [ebp - 0x2d0]
test ecx, ecx
jl 0x4431cf
cmp ecx, 0x14
jge 0x4431cf
lea eax, [ebp + ecx*8 - 0x370]
inc ecx
mov dword [ebp - 0x2d0], ecx
fstp dword [eax + 4]
mov dword [eax], esi
inc edi
jmp 0x443110
lea eax, [ebp - 0x14]
fstp st(0)
push eax
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea ecx, [ebp - 0x13c]
push ecx
call fcn.00514dd6
fstp st(0)
inc edi
jmp 0x443110
mov edi, dword [ebp - 0x38]
mov ebx, 2
mov dword [ebp - 0x28], ebx
mov ebx, 0x134
mov dword [ebp - 0x24], ebx
mov ebx, 0x202
mov dword [ebp - 0x20], ebx
xor eax, eax
mov ebx, 0x334
mov dword [ebp - 0x1c], ebx
push 0
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], eax
mov ecx, dword [0x541104]
lea ebx, [ebp - 0x28]
push ebx
add edi, 0x40
mov dword [ebp - 4], eax
mov eax, dword [0x576440]
add ecx, 0xffffff60
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
add eax, 0xa
lea edx, [ecx + 0x96]
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
lea esi, [eax + 0x96]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [0x576440]
mov ebx, 0x9a
mov dword [ebp - 0x28], ebx
mov ebx, 0x134
mov dword [ebp - 0x24], ebx
mov ebx, 0x29a
mov dword [ebp - 0x20], ebx
mov ebx, 0x334
mov dword [ebp - 0x1c], ebx
push 0
lea ebx, [ebp - 0x28]
push ebx
sub esp, 0x10
mov ecx, 0xa
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x5b7470]
add eax, 0xa
mov dword [ebx + 4], eax
mov edx, 0xaf
lea esi, [eax + 0x7b]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov edx, dword [0x576440]
mov eax, dword [0x541108]
mov ebx, 0x149
mov dword [ebp - 0x28], ebx
mov ebx, 1
mov dword [ebp - 0x24], ebx
mov ebx, 0x349
mov dword [ebp - 0x20], ebx
mov ebx, 0x201
mov dword [ebp - 0x1c], ebx
sub eax, edx
push 0
lea ebx, [ebp - 0x28]
push ebx
sub eax, 0x44
sub esp, 0x10
mov ecx, 0xa
mov edx, 0xc0
lea esi, [eax + 0x3a]
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov edx, dword [0x576440]
mov eax, dword [0x541108]
mov ecx, dword [0x541104]
mov ebx, 2
mov dword [ebp - 0x28], ebx
xor ebx, ebx
mov dword [ebp - 0x24], ebx
mov ebx, 0x202
mov dword [ebp - 0x20], ebx
mov ebx, 0x200
mov dword [ebp - 0x1c], ebx
push 0
lea ebx, [ebp - 0x28]
push ebx
add ecx, 0xffffff40
sub esp, 0x10
sub eax, edx
mov ebx, esp
mov dword [ebx], ecx
sub eax, 0x44
lea edx, [ecx + 0xb6]
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
lea esi, [eax + 0x3a]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
push 0
lea ebx, [ebp - 0x28]
push ebx
mov eax, 0x3d
mov edx, 0x34a
mov dword [ebp - 0x24], eax
mov eax, dword [0x541108]
mov dword [ebp - 0x20], edx
mov edx, dword [0x576440]
mov ecx, 0x14a
mov dword [ebp - 0x28], ecx
sub esp, 0x10
sub eax, edx
mov ecx, 0xb
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x5b7470]
sub eax, 0x58
mov esi, 0x23d
mov dword [ebx + 4], eax
mov edx, 0x52
mov dword [ebp - 0x1c], esi
lea esi, [eax + 0x14]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov edx, dword [0x576440]
mov eax, dword [0x541108]
mov ecx, dword [0x541104]
sub eax, edx
push 0
lea ebx, [ebp - 0x28]
push ebx
sub eax, 0x58
add ecx, 0xffffffae
sub esp, 0x10
lea edx, [ecx + 0x47]
lea esi, [eax + 0x14]
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov edx, dword [0x576430]
mov al, byte [edx + 0xf05]
test al, al
je 0x4434ad
mov ecx, dword [0x541104]
mov eax, dword [0x576440]
push 0
lea ebx, [ebp - 0x28]
push ebx
add ecx, 0xffffff60
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
add eax, 0xa1
lea edx, [ecx + 0x47]
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
lea esi, [eax + 0x14]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [0x541108]
mov ecx, 0x1cc
mov dword [ebp - 0x24], ecx
lea esi, [eax - 0x100]
mov edx, 2
mov ebx, 0x3cc
mov ecx, 0x202
sar esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x30], 0
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x22c]
jge 0x443533
push 0
lea ebx, [ebp - 0x28]
push ebx
sub esp, 0x10
mov eax, 0xc
mov ebx, esp
mov dword [ebx], eax
mov ecx, 0x69
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
mov ecx, dword [0x5b7470]
lea edx, [esi + 0x33]
mov dword [ebx + 0xc], edx
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [ebp - 0x30]
add esi, 0x38
inc eax
mov dword [ebp - 0x30], eax
mov eax, dword [0x541108]
jmp 0x4434e1
mov ecx, 0x1d9
mov dword [ebp - 0x24], ecx
lea esi, [eax - 0x100]
mov edx, 0xc6
mov ebx, 0x3d9
mov ecx, 0x2c6
sar esi, 1
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x30], 0
mov edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x188]
jge 0x4435b5
mov eax, dword [0x541104]
push 0
lea ebx, [ebp - 0x28]
push ebx
sub esp, 0x10
add eax, 0xffffffba
mov ebx, esp
mov dword [ebx], eax
lea ecx, [eax + 0x3c]
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
mov ecx, dword [0x5b7470]
lea edx, [esi + 0x26]
mov dword [ebx + 0xc], edx
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [ebp - 0x30]
add esi, 0x38
inc eax
mov dword [ebp - 0x30], eax
mov eax, dword [0x541108]
jmp 0x443562
sub eax, dword [0x576440]
sub eax, 0xa0
mov ebx, eax
mov eax, 0x1cc
mov dword [ebp - 0x24], eax
mov ecx, 2
mov edx, 0x3cc
mov eax, 0x202
mov esi, 0xc
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x30], 0
mov edi, edi
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x2d0]
jge 0x443636
push 0
lea edx, [ebp - 0x28]
push edx
sub esp, 0x10
mov edx, esp
mov dword [edx], esi
mov dword [edx + 4], ebx
lea eax, [esi + 0x5d]
lea ecx, [ebx + 0x33]
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
mov ecx, dword [0x5b7470]
call fcn.00494970
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [ebp - 0x30]
add esi, 0x62
inc eax
mov dword [ebp - 0x30], eax
jmp 0x4435f0
mov ecx, dword [0x5b7470]
mov eax, dword [ecx + 0x26fc]
push edi
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 6
call fcn.004a2570
mov ecx, dword [ebp - 0x2c]
push 0
call fcn.004acd80
fst dword [ebp - 0x14]
mov ebx, dword [0x576440]
fst dword [ebp - 0x18]
fld dword [0x525230]
add ebx, 0x1d
fmul st(1)
call fcn.00514cfc
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
mov esi, 0x26
sub esi, eax
mov eax, 0xfa
mov dword [ebp - 0x24], eax
mov eax, 0x202
lea edx, [ebx + 0x13]
mov dword [ebp - 0x20], eax
fnstsw ax
mov dword [ebp - 0x50], edx
mov ecx, 2
mov edx, 0x2fa
test ah, 0x41
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x1c], edx
mov eax, 0xff93ee6b
je 0x4436cb
mov eax, 0xffff6c00
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
mov edx, dword [ebp - 0x50]
push 0
lea eax, [ebp - 0x28]
push eax
sub esp, 0x10
mov ecx, esp
mov eax, 0x26
mov dword [ecx], eax
mov dword [ecx + 4], ebx
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], edx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [ebp - 0x18]
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
fnstsw ax
test ah, 5
jp 0x44380c
fld dword [0x524fcc]
mov esi, dword [0x576440]
fmul qword [0x5b7490]
add esi, 4
lea edx, [esi + 0x33]
mov dword [ebp - 0x3c], edx
fmul qword [0x523a38]
mov eax, 0x49
mov ecx, 2
mov edx, 0x202
fsin
mov ebx, 0x249
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
push 3
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov ecx, 0xff6c00
sub ecx, eax
push ecx
mov ecx, dword [0x5b746c]
call fcn.0049d0c0
push 0
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x3c]
sub esp, 0x10
mov ecx, esp
mov eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], esi
mov eax, 0xb4
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [ebp - 0x18]
fmul dword [0x52522c]
call fcn.00514cfc
fld dword [0x540328]
fmul dword [0x52522c]
mov esi, eax
call fcn.00514cfc
cmp eax, esi
je 0x44389b
fld dword [0x540328]
fsub dword [ebp - 0x18]
fabs
fld dword [0x578088]
fmul dword [0x5223a0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x44385c
mov edx, dword [ebp - 0x18]
mov dword [0x540328], edx
jmp 0x44389b
fld dword [ebp - 0x18]
mov dword [ebp - 0x18], 1
fsub dword [0x540328]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x41
je 0x443880
mov dword [ebp - 0x18], 0xffffffff
fild dword [ebp - 0x18]
fmul dword [0x578088]
fmul dword [0x5223a0]
fadd dword [0x540328]
fstp dword [0x540328]
mov ecx, dword [ebp - 0x2c]
push 0
call fcn.004acd20
fstp dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
fld dword [ebp - 0x18]
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
fnstsw ax
test ah, 0x41
mov eax, 0xff93ee6b
je 0x4438c8
mov eax, 0xffff6c00
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
fld dword [ebp - 0x18]
fmul dword [0x525230]
mov esi, dword [0x576440]
add esi, 0x47
mov ebx, 0x26
call fcn.00514cfc
mov edx, 2
mov dword [ebp - 0x28], edx
mov edx, 0xfa
mov dword [ebp - 0x24], edx
mov edx, 0x202
mov dword [ebp - 0x20], edx
mov edx, 0x2fa
mov dword [ebp - 0x1c], edx
push 0
lea edx, [ebp - 0x28]
push edx
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ecx, ebx
sub ecx, eax
mov dword [edx + 4], esi
mov dword [edx + 8], ecx
mov ecx, dword [0x5b7470]
lea eax, [esi + 0x13]
mov dword [edx + 0xc], eax
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [ebp - 0x18]
fmul dword [0x52522c]
call fcn.00514cfc
fld dword [0x576448]
fmul dword [0x52522c]
mov esi, eax
call fcn.00514cfc
cmp eax, esi
je 0x4439f4
fld dword [0x576448]
fsub dword [ebp - 0x18]
fabs
fld dword [0x578088]
fmul dword [0x5223a0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4439b5
mov edx, dword [ebp - 0x18]
mov dword [0x576448], edx
jmp 0x4439f4
fld dword [ebp - 0x18]
mov dword [ebp - 0x30], 1
fsub dword [0x576448]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x41
je 0x4439d9
mov dword [ebp - 0x30], 0xffffffff
fild dword [ebp - 0x30]
fmul dword [0x578088]
fmul dword [0x5223a0]
fadd dword [0x576448]
fstp dword [0x576448]
fld dword [ebp - 0x18]
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
fnstsw ax
test ah, 5
jnp 0x443a1b
fld dword [0x5b7b28]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x44
jnp 0x443b28
mov esi, dword [0x576440]
fld dword [0x5b7b28]
fcomp dword [0x521418]
add esi, 0x2e
fld dword [0x524fcc]
lea eax, [esi + 0x33]
fmul qword [0x5b7490]
mov dword [ebp - 0x50], eax
mov eax, 0x49
mov dword [ebp - 0x24], eax
fnstsw ax
mov ecx, 2
test ah, 0x44
mov edx, 0x202
mov ebx, 0x249
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
jnp 0x443a96
fmul qword [0x5239b8]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov ecx, eax
mov eax, 0xff6c00
sub eax, ecx
jmp 0x443ac1
fmul qword [0x523a38]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov edx, eax
mov eax, 0xff6c00
sub eax, edx
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
mov edx, dword [ebp - 0x50]
push 0
lea eax, [ebp - 0x28]
push eax
sub esp, 0x10
mov ecx, esp
mov eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], esi
mov eax, 0xb4
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov ecx, dword [ebp - 0x2c]
push 0
call fcn.004accc0
fstp dword [ebp - 0x14]
mov edx, dword [ebp - 0x14]
mov ebx, dword [0x576440]
mov dword [ebp - 0x2c], edx
fld dword [ebp - 0x2c]
add ebx, 0x71
fmul dword [0x525230]
call fcn.00514cfc
fld dword [ebp - 0x2c]
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
mov esi, 0x26
sub esi, eax
lea eax, [ebx + 0x13]
mov dword [ebp - 0x50], eax
mov eax, 0xfa
mov dword [ebp - 0x24], eax
mov eax, 0x202
mov dword [ebp - 0x20], eax
fnstsw ax
mov ecx, 2
mov edx, 0x2fa
test ah, 0x41
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x1c], edx
mov eax, 0xff93ee6b
je 0x443b99
mov eax, 0xffff6c00
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
push 0
lea ecx, [ebp - 0x28]
push ecx
mov ecx, dword [0x5b7470]
sub esp, 0x10
mov edx, esp
mov eax, 0x26
mov dword [edx], eax
mov eax, dword [ebp - 0x50]
mov dword [edx + 4], ebx
mov dword [edx + 8], esi
mov dword [edx + 0xc], eax
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [0x576444]
fmul dword [0x52522c]
call fcn.00514cfc
fld dword [ebp - 0x2c]
fmul dword [0x52522c]
mov esi, eax
call fcn.00514cfc
cmp esi, eax
je 0x443c8a
fld dword [0x576444]
fsub dword [ebp - 0x2c]
fabs
fld dword [0x578088]
fmul dword [0x5223a0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x443c4b
mov edx, dword [ebp - 0x2c]
mov dword [0x576444], edx
jmp 0x443c8a
fld dword [ebp - 0x2c]
mov dword [ebp - 0x18], 1
fsub dword [0x576444]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x41
je 0x443c6f
mov dword [ebp - 0x18], 0xffffffff
fild dword [ebp - 0x18]
fmul dword [0x578088]
fmul dword [0x5223a0]
fadd dword [0x576444]
fstp dword [0x576444]
fld dword [ebp - 0x2c]
fcomp dword [str.__v_CObjectList::CheckSysObjectSensors]
fnstsw ax
test ah, 5
jnp 0x443cb1
fld dword [0x5b7b24]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x44
jnp 0x443dbe
mov esi, dword [0x576440]
fld dword [0x5b7b24]
fcomp dword [0x521418]
add esi, 0x58
fld dword [0x524fcc]
lea eax, [esi + 0x33]
fmul qword [0x5b7490]
mov dword [ebp - 0x50], eax
mov eax, 0x49
mov dword [ebp - 0x24], eax
fnstsw ax
mov ecx, 2
test ah, 0x44
mov edx, 0x202
mov ebx, 0x249
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
jnp 0x443d2c
fmul qword [0x5239b8]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov ecx, eax
mov eax, 0xff6c00
sub eax, ecx
jmp 0x443d57
fmul qword [0x523a38]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov edx, eax
mov eax, 0xff6c00
sub eax, edx
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
mov edx, dword [ebp - 0x50]
push 0
lea eax, [ebp - 0x28]
push eax
sub esp, 0x10
mov ecx, esp
mov eax, 4
mov dword [ecx], eax
mov dword [ecx + 4], esi
mov eax, 0xb4
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
xor ecx, ecx
mov dword [edi + 8], ecx
mov dword [edi + 0xc], ecx
mov eax, dword [0x677df8]
fld dword [eax + 0x29c]
mov edx, dword [0x576440]
fld dword [eax + 0x298]
mov esi, dword [0x541108]
fld dword [eax + 0x294]
sub esi, edx
fld st(0)
mov ebx, 0x37
fmul st(1)
sub esi, 0x54
fld st(2)
push ecx
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
call fcn.00514cfc
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fmul dword [0x525228]
call fcn.00514cfc
push eax
push esi
mov esi, dword [ebp - 0x38]
push ebx
mov ecx, esi
call fcn.004403f0
lea eax, [esi + 0x10]
push eax
mov ecx, edi
call fcn.00427b00
fld dword [0x676614]
mov eax, dword [0x576440]
mov edx, dword [0x541104]
mov esi, dword [0x541108]
add edx, 0xffffffe5
sub esi, eax
mov dword [ebp - 0x74], edx
sub esi, 0x54
call fcn.00514cfc
mov ebx, eax
mov dword [ebp - 0x14], ebx
fild dword [ebp - 0x14]
push 1
fsubr dword [0x676614]
fmul dword [0x525164]
call fcn.00514cfc
imul ebx, ebx, 0x64
sub ebx, eax
mov eax, dword [ebp - 0x74]
push ebx
push esi
mov esi, dword [ebp - 0x38]
push eax
mov ecx, esi
call fcn.004403f0
lea eax, [esi + 0x10]
push eax
mov ecx, edi
call fcn.00427b00
mov eax, dword [0x576430]
mov cl, byte [eax + 0xf05]
test cl, cl
je 0x443f21
mov ecx, dword [0x677df8]
fld dword [eax + 0xf10]
fsub dword [ecx + 0x198]
mov esi, dword [0x541104]
fld dword [eax + 0xf0c]
mov ebx, dword [0x576440]
fsub dword [ecx + 0x194]
add esi, 0xffffff95
fld dword [eax + 0xf08]
add ebx, 0xa5
fsub dword [ecx + 0x190]
push 0
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
call fcn.00514cfc
push eax
push ebx
push esi
mov esi, dword [ebp - 0x38]
mov ecx, esi
call fcn.004403f0
lea eax, [esi + 0x10]
push eax
mov ecx, edi
call fcn.00427b00
mov ecx, dword [0x5b746c]
mov esi, dword [ebp - 0x38]
push 3
push 0xff93ee6b
call fcn.0049d0c0
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push edi
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov edi, dword [0x541108]
add edi, 0xffffff00
sar edi, 1
xor eax, eax
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x30], eax
jmp 0x443f80
cmp eax, dword [ebp - 0x22c]
jge 0x44455d
test eax, eax
jl 0x444535
cmp eax, 4
jge 0x444535
mov esi, 0x295
mov dword [ebp - 0x20], esi
lea esi, [eax + eax*4]
mov al, byte [ebp + esi*8 - 0x2c7]
test al, al
lea esi, [ebp + esi*8 - 0x2cc]
mov ecx, 0xfa
mov edx, 0x95
mov ebx, 0x2fa
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x1c], ebx
je 0x4440b6
cmp dword [esi + 0x18], 0x3f800000
je 0x4440b6
mov ecx, dword [0x5b746c]
push 3
push 0xff808080
add edi, 0x1d
mov ebx, 0x2a
call fcn.0049d0c0
push 0
lea edx, [ebp - 0x28]
push edx
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 4], edi
mov eax, 0x66
mov dword [ecx + 8], eax
lea eax, [edi + 0x13]
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [esi + 0x18]
fmul dword [0x5215d0]
call fcn.00514cfc
mov ecx, dword [0x5b746c]
push 3
add eax, ebx
lea edx, [edi + 0x13]
push 0xff93ee6b
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], edx
call fcn.0049d0c0
mov edx, dword [ebp - 0x40]
push 0
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x3c]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 4], edi
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
jmp 0x4443bb
mov al, byte [esi + 6]
test al, al
jne 0x44431f
fld dword [esi + 0x14]
fcomp dword [0x521590]
fnstsw ax
test ah, 5
jp 0x4441cc
cmp byte [esi], 0
je 0x4441cc
fld dword [esi + 0x24]
fcomp dword [0x5215d0]
fnstsw ax
test ah, 5
jp 0x4441cc
fld dword [esi + 0x14]
fsub dword [0x5213d0]
fadd st(0), st(0)
fcomp dword [0x521418]
fnstsw ax
test ah, 5
jp 0x444112
fld dword [0x521418]
jmp 0x44411d
fld dword [esi + 0x14]
fsub dword [0x5213d0]
fadd st(0), st(0)
fmul dword [0x5215d0]
call fcn.00514cfc
mov ecx, eax
lea eax, [ecx + 0x95]
lea ebx, [eax + 0x200]
mov dword [ebp - 0x28], eax
mov eax, 0x3c
sub eax, ecx
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fld dword [esi + 0x14]
mov edx, 0xfa
fmul dword [0x521ec4]
fld st(1)
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x94]
fcompp
mov ebx, 0x2fa
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
fnstsw ax
test ah, 5
jnp 0x444184
fstp st(0)
fld dword [esi + 0x14]
fmul dword [0x521ec4]
add ecx, 0x2a
lea ebx, [edi + 0x1d]
mov dword [ebp - 0x18], ecx
call fcn.00514cfc
mov edx, dword [ebp - 0x18]
lea ecx, [ebx + 0x13]
push 3
mov edi, eax
mov dword [ebp - 0x80], ecx
mov ecx, dword [0x5b746c]
push 0xffffffffffffffff
add edi, edx
call fcn.0049d0c0
mov ecx, dword [ebp - 0x18]
push 0
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x80]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], ebx
mov dword [eax + 8], edi
jmp 0x44439f
mov al, byte [esi + 6]
test al, al
jne 0x44431f
cmp byte [esi], 0
jne 0x44431f
mov ecx, dword [0x5b746c]
push 3
push 0xff93ee6b
add edi, 0x1d
mov ebx, 0x2a
call fcn.0049d0c0
push 0
lea edx, [ebp - 0x28]
push edx
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 4], edi
mov eax, 0x66
mov dword [ecx + 8], eax
lea eax, [edi + 0x13]
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [esi + 0x14]
fsub dword [0x5213d0]
fadd st(0), st(0)
fcomp dword [0x521418]
fnstsw ax
test ah, 5
jp 0x44426e
fld dword [0x521418]
jmp 0x444279
fld dword [esi + 0x14]
fsub dword [0x5213d0]
fadd st(0), st(0)
fmul dword [0x5215d0]
call fcn.00514cfc
mov ecx, eax
lea eax, [ecx + 0x95]
lea ebx, [eax + 0x200]
mov dword [ebp - 0x28], eax
mov eax, 0x3c
sub eax, ecx
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fld dword [esi + 0x14]
mov edx, 0xfa
fmul dword [0x521ec4]
fld st(1)
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x24], edx
mov edx, dword [ebp - 0x64]
fcompp
mov ebx, 0x2fa
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
fnstsw ax
test ah, 5
jnp 0x4442da
fstp st(0)
fld dword [esi + 0x14]
fmul dword [0x521ec4]
add ecx, 0x2a
mov dword [ebp - 0x18], ecx
call fcn.00514cfc
mov edx, dword [ebp - 0x18]
lea ecx, [edi + 0x13]
push 3
mov ebx, eax
mov dword [ebp - 0x70], ecx
mov ecx, dword [0x5b746c]
push 0xffffffffffffffff
add ebx, edx
call fcn.0049d0c0
mov ecx, dword [ebp - 0x18]
push 0
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x70]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov dword [eax + 4], edi
mov dword [eax + 8], ebx
jmp 0x44439f
mov cl, byte [esi]
mov al, byte [esi + 6]
xor edx, edx
test cl, cl
sete dl
test dl, al
je 0x4443d8
fld dword [esi + 0x14]
fmul dword [0x5215d0]
call fcn.00514cfc
mov ebx, 0x2a
add eax, ebx
add edi, 0x1d
mov dword [ebp - 0x54], eax
lea eax, [edi + 0x13]
mov dword [ebp - 0x50], eax
mov al, byte [esi + 2]
test al, al
je 0x444362
mov eax, 0xffff6c00
jmp 0x444378
mov ecx, dword [esi + 0x14]
push ecx
push 0xffffff00
push 0xff93ee6b
call fcn.00440560
add esp, 0xc
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
mov ecx, dword [ebp - 0x54]
push 0
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x50]
sub esp, 0x10
mov eax, esp
mov dword [eax], ebx
mov dword [eax + 4], edi
mov dword [eax + 8], ecx
mov ecx, dword [0x5b7470]
mov dword [eax + 0xc], edx
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov ebx, dword [ebp - 0x2c]
add ebx, 0xfffffffb
mov eax, 0x7e
lea edx, [ebx + 0x42]
mov dword [ebp - 0x24], eax
mov al, byte [esi + 3]
test al, al
mov dword [ebp - 0xa0], edx
mov ecx, 2
mov edx, 0x202
mov edi, 0x27e
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], edi
jne 0x444420
mov al, byte [esi + 4]
test al, al
jne 0x444427
mov al, byte [esi + 0x21]
test al, al
je 0x44451b
mov al, byte [esi + 4]
test al, al
je 0x444467
mov al, byte [esi + 0x21]
test al, al
jne 0x444467
fld dword [0x524fcc]
fmul qword [0x5b7490]
fmul qword [0x523a38]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov ecx, eax
mov eax, 0xff6c00
sub eax, ecx
jmp 0x4444b1
fld dword [0x524fcc]
fmul qword [0x5b7490]
fmul qword [0x523a38]
fsin
fld dword [esi + 0x1c]
fadd dword [0x521590]
fmul dword [0x5213d0]
fxch st(1)
fadd dword [0x521590]
fmul dword [0x5213d0]
fmulp st(1)
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov edx, eax
mov eax, 0xffffff
sub eax, edx
mov ecx, dword [0x5b746c]
push 3
push eax
call fcn.0049d0c0
mov edx, dword [ebp - 0xa0]
push 0
lea eax, [ebp - 0x28]
push eax
sub esp, 0x10
mov ecx, esp
mov eax, 7
mov dword [ecx], eax
mov dword [ecx + 4], ebx
mov eax, 0x6f
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], edx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x38]
add ecx, 0x38
inc eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], eax
mov edi, ecx
jmp 0x443f80
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0xb8]
push eax
call fcn.00514dd6
xor ebx, ebx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x4c], ebx
mov edi, dword [0x541108]
add edi, 0xffffff00
sar edi, 1
cmp ebx, dword [ebp - 0x22c]
jge 0x4445ea
test ebx, ebx
jl 0x4445c2
cmp ebx, 4
jge 0x4445c2
lea edx, [ebx + ebx*4]
mov al, byte [ebp + edx*8 - 0x2cc]
test al, al
lea edx, [ebp + edx*8 - 0x2cc]
je 0x4445bc
mov edx, dword [edx + 0xc]
push 0
push edx
lea ecx, [edi + 0x21]
push ecx
mov eax, 0x55
push eax
mov ecx, esi
call fcn.004403f0
lea eax, [esi + 0x10]
push eax
lea ecx, [esi + 0x40]
call fcn.00427b00
add edi, 0x38
inc ebx
jmp 0x444573
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea edx, [ebp - 0x184]
push edx
call fcn.00514dd6
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x44461f
mov ecx, dword [0x5b7470]
mov eax, dword [ecx + 0x26fc]
add esi, 0x40
push esi
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 6
call fcn.004a2570
mov edi, dword [0x541108]
mov eax, dword [ebp - 0x188]
add edi, 0xffffff00
sar edi, 1
test eax, eax
je 0x444668
fld dword [0x524fcc]
push 3
fmul qword [0x5b7490]
push ecx
mov ecx, dword [0x5b746c]
fmul qword [0x523a38]
fsin
fadd dword [0x521590]
fmul dword [0x5213d0]
fstp dword [esp]
call fcn.0049d030
xor eax, eax
cmp eax, dword [ebp - 0x188]
mov dword [ebp - 0x30], eax
jge 0x44474b
test eax, eax
jl 0x444723
cmp eax, 0x14
jge 0x444723
mov cl, byte [ebp + eax*8 - 0x228]
test cl, cl
je 0x44471a
push 0
lea ebx, [ebp - 0x28]
push ebx
mov ecx, 1
mov dword [ebp - 0x28], ecx
mov ecx, dword [0x541104]
add ecx, 0xffffffb3
sub esp, 0x10
mov eax, 0xc1
mov ebx, esp
mov dword [ebx], ecx
mov edx, 0x201
mov dword [ebp - 0x24], eax
lea eax, [edi - 8]
mov esi, 0x2c1
mov dword [ebp - 0x20], edx
lea edx, [ecx + 0x4c]
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
mov dword [ebp - 0x1c], esi
lea esi, [eax + 0x38]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov eax, dword [ebp - 0x30]
add edi, 0x38
inc eax
jmp 0x44466a
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0xf4]
push eax
call fcn.00514dd6
mov eax, dword [0x541108]
sub eax, dword [0x576440]
sub eax, 0xa0
mov dword [ebp - 0x18], eax
mov ebx, 0xc
xor eax, eax
cmp eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], eax
jge 0x444941
test eax, eax
jl 0x444919
cmp eax, 0x14
jge 0x444919
fld dword [ebp + eax*8 - 0x36c]
lea eax, [ebp + eax*8 - 0x370]
fmul dword [0x5215d0]
call fcn.00514cfc
mov esi, dword [ebp - 0x18]
lea edi, [ebx + 0x1f]
lea ecx, [edi + eax]
add esi, 0x1d
mov dword [ebp - 0x40], ecx
lea edx, [esi + 0x13]
mov ecx, 0x95
mov dword [ebp - 0x3c], edx
push 3
mov eax, 0xfa
mov edx, 0x295
mov dword [ebp - 0x28], ecx
mov ecx, dword [0x5b746c]
mov ebx, 0x2fa
push 0xffff6c00
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ebx
call fcn.0049d0c0
mov edx, dword [ebp - 0x40]
push 0
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x3c]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov dword [ecx + 4], esi
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
fld dword [0x524fcc]
fmul qword [0x5b7490]
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x2c]
add esi, 0xfffffffb
fmul qword [0x523a38]
lea eax, [esi + 0x42]
mov dword [ebp - 0x80], eax
lea edi, [ebx - 4]
fsin
lea edx, [edi + 0x68]
mov eax, 0x7e
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x24], eax
mov ecx, 2
mov edx, 0x27e
mov eax, 0x202
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
push 3
fadd dword [0x521590]
fmul dword [0x5213d0]
fmul dword [0x523a78]
call fcn.00514cfc
shl eax, 0x18
mov ecx, 0xff6c00
sub ecx, eax
push ecx
mov ecx, dword [0x5b746c]
call fcn.0049d0c0
mov ecx, dword [ebp - 0x84]
push 0
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x80]
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], esi
mov dword [eax + 8], ecx
mov ecx, dword [0x5b7470]
mov dword [eax + 0xc], edx
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov eax, dword [ebp - 0x30]
add ebx, 0x62
inc eax
jmp 0x444765
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x154]
push eax
call fcn.00514dd6
mov al, byte [0x6769f8]
test al, al
mov ecx, dword [0x677df8]
je 0x44497c
fld dword [ecx + 0x178]
mov edx, dword [ecx + 0x158]
fld dword [ecx + 0x168]
mov dword [ebp - 0x98], edx
fstp dword [ebp - 0x94]
lea eax, [ebp - 0x98]
fstp dword [ebp - 0x90]
jmp 0x444982
lea eax, [ecx + 0x10c4]
mov edx, dword [eax]
mov dword [ebp - 0x68], edx
mov edx, dword [eax + 4]
mov dword [ebp - 0x64], edx
mov eax, dword [eax + 8]
mov dword [ebp - 0x60], eax
cmp dword [0x677e04], 1
jne 0x444b14
lea edx, [ebp - 0x88]
push edx
push 0x447a0000
lea eax, [ebp - 0x68]
add ecx, 0x190
push eax
push ecx
mov ecx, 0x5b8e10
call fcn.004c1b80
mov bl, al
mov eax, dword [0x677df8]
lea ecx, [ebp - 0x70]
push ecx
push eax
lea edx, [ebp - 0x44]
push edx
push 0x447a0000
lea ecx, [ebp - 0x68]
push ecx
add eax, 0x190
push eax
mov ecx, 0x685928
call fcn.0050ba70
fld dword [0x52356c]
test bl, bl
mov ecx, dword [0x677df8]
mov dl, al
je 0x444a81
fld dword [ebp - 0x80]
fsub dword [ecx + 0x198]
fld dword [ebp - 0x84]
fsub dword [ecx + 0x194]
fld dword [ebp - 0x88]
fsub dword [ecx + 0x190]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fcomp dword [0x52356c]
fnstsw ax
test ah, 0x41
je 0x444a81
fstp st(0)
fld dword [ebp - 0x80]
fsub dword [ecx + 0x198]
fld dword [ebp - 0x84]
fsub dword [ecx + 0x194]
fld dword [ebp - 0x88]
fsub dword [ecx + 0x190]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
test dl, dl
je 0x444af8
fld dword [ebp - 0x3c]
fsub dword [ecx + 0x198]
fld dword [ebp - 0x40]
fsub dword [ecx + 0x194]
fld dword [ebp - 0x44]
fsub dword [ecx + 0x190]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fld st(1)
fcompp
fnstsw ax
test ah, 5
jnp 0x444af8
fstp st(0)
fld dword [ebp - 0x3c]
fsub dword [ecx + 0x198]
fld dword [ebp - 0x40]
fsub dword [ecx + 0x194]
fld dword [ebp - 0x44]
fsub dword [ecx + 0x190]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fld dword [ebp - 0x68]
fmul st(1)
fstp dword [ebp - 0x68]
fld dword [ebp - 0x64]
fmul st(1)
fstp dword [ebp - 0x64]
fld dword [ebp - 0x60]
fmul st(1)
fstp dword [ebp - 0x60]
fstp st(0)
jmp 0x444b38
fld dword [ebp - 0x68]
fmul dword [0x52356c]
fstp dword [ebp - 0x68]
fld dword [ebp - 0x64]
fmul dword [0x52356c]
fstp dword [ebp - 0x64]
fld dword [ebp - 0x60]
fmul dword [0x52356c]
fstp dword [ebp - 0x60]
fld dword [ebp - 0x60]
fadd dword [ecx + 0x198]
fld dword [ebp - 0x64]
fadd dword [ecx + 0x194]
fld dword [ebp - 0x68]
fadd dword [ecx + 0x190]
fld st(1)
fmul dword [0x68f1dc]
fld st(1)
fmul dword [0x68f1cc]
faddp st(1)
fld st(3)
fmul dword [0x68f1ec]
faddp st(1)
fadd dword [0x68f1fc]
fstp dword [ebp - 0x2c]
fld st(1)
mov eax, dword [ebp - 0x2c]
fmul dword [0x68f1d8]
mov dword [ebp - 0x3c], eax
fld st(1)
mov dword [ebp - 0x60], eax
fmul dword [0x68f1c8]
faddp st(1)
fld st(3)
fmul dword [0x68f1e8]
faddp st(1)
fadd dword [0x68f1f8]
fstp dword [ebp - 0x18]
fxch st(1)
mov edx, dword [ebp - 0x18]
fmul dword [0x68f1d4]
mov dword [ebp - 0x40], edx
fxch st(1)
mov dword [ebp - 0x64], edx
fmul dword [0x68f1c4]
faddp st(1)
fxch st(1)
fmul dword [0x68f1e4]
faddp st(1)
fadd dword [0x68f1f4]
fstp dword [ebp - 0x44]
mov ecx, dword [ebp - 0x44]
fld dword [0x521590]
mov dword [ebp - 0x68], ecx
fdiv dword [ebp - 0x2c]
fld dword [ebp - 0x18]
fmul st(1)
fmul dword [0x5213d0]
fsubr dword [0x5213d0]
fimul dword [0x541108]
fcom dword [0x521418]
fnstsw ax
test ah, 0x41
jne 0x444c0f
fadd dword [0x5213d0]
jmp 0x444c15
fsub dword [0x5213d0]
call fcn.00514cfc
fmul dword [ebp - 0x44]
mov esi, eax
fadd dword [0x521590]
fmul dword [0x5213d0]
fimul dword [0x541104]
fcom dword [0x521418]
fnstsw ax
test ah, 0x41
jne 0x444c46
fadd dword [0x5213d0]
jmp 0x444c4c
fsub dword [0x5213d0]
call fcn.00514cfc
mov edx, dword [0x677318]
add esi, 0xffffffe0
lea ecx, [esi + 0x40]
lea edi, [eax - 0x20]
mov dword [ebp - 0x3c], ecx
mov ecx, dword [0x5b7468]
push edx
lea ebx, [edi + 0x40]
call fcn.004a5990
mov ecx, dword [ebp - 0x3c]
push 0
mov dword [ebp - 0x14], eax
push 0
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x14]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 6
call fcn.004a2570
fld qword [0x5b7490]
fmul qword [0x525220]
push 3
push ecx
mov ecx, dword [0x5b746c]
fsin
fadd dword [0x521590]
fmul dword [0x521f20]
fadd dword [0x5223a0]
fstp dword [esp]
call fcn.0049d030
mov edx, dword [0x67731c]
mov ecx, dword [0x5b7468]
push edx
call fcn.004a5990
mov ecx, dword [ebp - 0x3c]
push 0
mov dword [ebp - 0x14], eax
push 0
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ecx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x14]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov edx, dword [0x677324]
push edx
mov ecx, dword [0x5b7468]
call fcn.004a5990
mov ebx, dword [0x541108]
add ebx, 0xffffff00
sar ebx, 1
mov dword [ebp - 0x2c], eax
xor esi, esi
cmp esi, dword [ebp - 0x22c]
mov dword [ebp - 0x18], ebx
jge 0x444ec7
test esi, esi
jl 0x444e9f
cmp esi, 4
jge 0x444e9f
lea edx, [esi + esi*4]
mov eax, dword [ebp + edx*8 - 0x2c4]
mov ecx, dword [ebp + edx*8 - 0x2c4]
lea edx, [ebp + edx*8 - 0x2cc]
sar eax, 4
add ebx, 3
shl eax, 6
lea edi, [ebx + 0x20]
mov dword [ebp - 0x50], edi
lea edi, [eax + 0x100]
mov dword [ebp - 0xa4], edi
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xa4]
and ecx, 0xf
shl ecx, 5
mov dword [ebp - 0x20], eax
mov al, byte [edx + 3]
test al, al
lea edi, [ecx + 0x200]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x1c], edi
jne 0x444e09
mov al, byte [edx + 4]
test al, al
jne 0x444e09
mov al, byte [edx + 0x21]
test al, al
jne 0x444e09
push 3
push 0x3f800000
jmp 0x444e2f
fld dword [0x524fcc]
push 3
fmul qword [0x5b7490]
push ecx
fmul qword [0x523a38]
fsin
fmul dword [0x521f20]
fadd dword [0x521610]
fstp dword [esp]
mov ecx, dword [0x5b746c]
call fcn.0049d030
push 0
lea ecx, [ebp - 0x28]
push ecx
mov ecx, dword [0x5b7470]
sub esp, 0x10
mov edx, esp
mov eax, 0x10
mov dword [edx], eax
mov dword [edx + 4], ebx
mov eax, 0x50
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x50]
mov dword [edx + 0xc], eax
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x2c]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov ebx, dword [ebp - 0x18]
add ebx, 0x38
inc esi
jmp 0x444d7a
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x10c]
push eax
call fcn.00514dd6
mov esi, dword [0x541108]
add esi, 0xffffff00
sar esi, 1
xor edi, edi
cmp edi, dword [ebp - 0x188]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x30], edi
jge 0x445010
test edi, edi
jl 0x444fe8
cmp edi, 0x14
jge 0x444fe8
mov ecx, dword [ebp + edi*8 - 0x224]
mov ebx, dword [0x541104]
mov eax, dword [ebp + edi*8 - 0x224]
and ecx, 0xf
add ebx, 0xffffffbe
shl ecx, 5
lea edx, [ebx + 0x40]
sar eax, 4
add esi, 3
mov dword [ebp - 0x54], edx
shl eax, 6
lea edi, [ecx + 0x200]
lea edx, [esi + 0x20]
mov dword [ebp - 0x1c], edi
mov edi, dword [ebp - 0x30]
mov dword [ebp - 0x50], edx
lea edx, [eax + 0x100]
mov dword [ebp - 0x28], eax
mov al, byte [ebp + edi*8 - 0x228]
test al, al
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], edx
push 3
je 0x444f7a
fld dword [0x524fcc]
push ecx
fmul qword [0x5b7490]
fmul qword [0x523a38]
fsin
fmul dword [0x521f20]
fadd dword [0x521610]
fstp dword [esp]
jmp 0x444f7f
push 0x3f800000
mov ecx, dword [0x5b746c]
call fcn.0049d030
mov edx, dword [ebp - 0x54]
push 0
lea eax, [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x50]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 4], esi
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x2c]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0x13
call fcn.004a2570
mov esi, dword [ebp - 0x18]
add esi, 0x38
inc edi
jmp 0x444ed7
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x178]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x178]
push eax
call fcn.00514dd6
mov ebx, dword [0x541108]
sub ebx, dword [0x576440]
sub ebx, 0xa0
mov dword [ebp - 0x18], 0xc
mov dword [ebp - 0x14], ebx
xor edi, edi
mov edi, edi
cmp edi, dword [ebp - 0x2d0]
jge 0x445114
test edi, edi
jl 0x4450ec
cmp edi, 0x14
jge 0x4450ec
mov eax, dword [ebp + edi*8 - 0x370]
mov ecx, dword [ebp + edi*8 - 0x370]
sar eax, 4
shl eax, 6
and ecx, 0xf
lea edx, [eax + 0x100]
shl ecx, 5
mov dword [ebp - 0x28], eax
lea eax, [ebx + 2]
lea esi, [ecx + 0x200]
push 0
lea ebx, [ebp - 0x28]
push ebx
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x18]
add ecx, 4
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov dword [ebp - 0x20], edx
lea edx, [ecx + 0x40]
mov ecx, dword [0x5b7470]
mov dword [ebx + 4], eax
mov dword [ebp - 0x1c], esi
lea esi, [eax + 0x20]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x2c]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 6
call fcn.004a2570
mov ecx, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x14]
add ecx, 0x62
mov dword [ebp - 0x18], ecx
inc edi
jmp 0x445030
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x124]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x124]
push eax
call fcn.00514dd6
mov esi, dword [0x541108]
add esi, 0xffffff00
mov edi, 0x3ca
mov eax, 0x1ca
mov ecx, 0x151
mov edx, 0x351
sar esi, 1
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
xor edi, edi
cmp edi, dword [ebp - 0x22c]
jge 0x4451fc
test edi, edi
jl 0x4451d4
cmp edi, 4
jge 0x4451d4
lea eax, [edi + edi*4]
mov cl, byte [ebp + eax*8 - 0x2ac]
test cl, cl
lea eax, [ebp + eax*8 - 0x2cc]
je 0x4451cb
push 0
lea ebx, [ebp - 0x28]
push ebx
sub esp, 0x10
mov eax, 0xc
mov ebx, esp
mov dword [ebx], eax
mov ecx, 0x69
mov dword [ebx + 4], esi
mov dword [ebx + 8], ecx
mov ecx, dword [0x5b7470]
lea edx, [esi + 0x33]
mov dword [ebx + 0xc], edx
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x34]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 6
call fcn.004a2570
add esi, 0x38
inc edi
jmp 0x445144
lea edx, [ebp - 0x14]
push edx
lea ecx, [ebp - 0x16c]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x16c]
push eax
call fcn.00514dd6
mov ecx, dword [ebp - 0x38]
mov al, byte [ecx + 0x70]
test al, al
je 0x445234
mov ecx, dword [0x576438]
call fcn.00442320
mov ecx, dword [0x5b746c]
call fcn.004a3b50
mov edx, dword [0x576440]
mov eax, dword [ebp - 0x34]
mov ecx, dword [0x576430]
push edx
push eax
call fcn.0043e650
jmp 0x44523f
mov ecx, dword [0x5b746c]
call fcn.004a3b50
mov edx, dword [0x576440]
mov eax, dword [0x541108]
mov edi, dword [0x6565d4]
push 0
push 0
sub esp, 0x10
sub eax, edx
mov ecx, 0x26
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x5b7470]
sub eax, 0x46
mov dword [ebx + 4], eax
mov edx, 0xa6
lea esi, [eax + 0x40]
mov dword [ebx + 8], edx
mov dword [ebx + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [0x5b746c]
push 0
push 0
push 0
push edi
push eax
push 6
call fcn.004a2570
mov eax, dword [0x677df8]
mov ecx, dword [eax + 0xb98]
test ecx, ecx
je 0x4456c2
mov eax, ecx
mov ecx, dword [eax + 0x10d4]
mov edx, dword [ecx + 0x44]
mov eax, dword [edx + 0x6c]
push eax
mov ecx, 0x677d60
call fcn.0040c280
cmp eax, 0xffffffff
je 0x445401
mov ecx, dword [0x677de8]
cmp ecx, eax
jle 0x445401
test eax, eax
jl 0x445457
cmp eax, ecx
jge 0x445457
mov edx, dword [0x677dec]
lea ecx, [eax + eax*4]
lea eax, [edx + ecx*8]
mov eax, dword [eax]
cmp eax, 0xffffffff
mov dword [ebp - 0x14], eax
je 0x445401
mov esi, dword [0x541108]
fild dword [ebp - 0x14]
mov ebx, dword [0x576440]
mov edi, dword [0x541104]
fmul dword [0x523398]
sub esi, ebx
sub esi, 0x40
add edi, 0xffffff43
lea edx, [edi + 0x32]
lea eax, [esi + 0x32]
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x3c], eax
call fcn.00514cfc
fld qword [0x5b7490]
fmul qword [0x525040]
mov ebx, eax
call fcn.00514cfc
cdq
mov ecx, 0x13
idiv ecx
mov dword [ebp - 0x14], edx
fild dword [ebp - 0x14]
fmul dword [0x523398]
call fcn.00514cfc
lea edx, [ebx + 0x400]
mov dword [ebp - 0x1c], edx
push 0
lea ecx, [eax + 0x400]
lea edx, [ebp - 0x28]
push edx
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x28], eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x40]
mov dword [eax + 4], esi
mov dword [eax + 8], ecx
mov ecx, dword [0x5b7470]
mov dword [ebp - 0x24], ebx
mov dword [eax + 0xc], edx
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
mov ecx, dword [0x5b7468]
push str.TEX_KT_ORG_ICONS
add ecx, 0x30
mov esi, eax
call fcn.00404620
mov ecx, dword [0x5b7468]
push eax
call fcn.004a5990
mov ecx, dword [0x5b746c]
push 0
push 0
push 0
push eax
push esi
push 6
call fcn.004a2570
mov ecx, dword [0x677df8]
mov edx, dword [ecx + 0xb98]
mov eax, dword [edx + 0x10d4]
mov edi, dword [eax + 0x44]
xor ebx, ebx
xor esi, esi
mov dword [ebp - 0x2c], edi
xor ecx, ecx
nop
cmp ecx, dword [edi + 0x60f4]
jge 0x4454a7
cmp ecx, ebx
jl 0x44547f
cmp ecx, 0xa
jge 0x44547f
mov eax, ecx
imul eax, eax, 0x9a4
mov dl, byte [eax + edi + 0xbc]
test dl, dl
jne 0x445454
mov dl, byte [eax + edi + 0xbd]
test dl, dl
jne 0x445454
inc esi
inc ecx
jmp 0x445420
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea ecx, [ebp - 0xc4]
push ecx
call fcn.00514dd6
lea ecx, [ebp - 0x14]
push ecx
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0x14], 0x52145c
call dword [0x521298]
push 0x52fdac
lea edx, [ebp - 0xd0]
push edx
call fcn.00514dd6
lea ecx, [ebp - 0x98]
call fcn.00446ee0
cmp esi, 1
mov byte [ebp - 4], 3
jg 0x445724
xor ecx, ecx
mov eax, dword [0x677df8]
mov edx, dword [eax + 0xb98]
mov edx, dword [edx + 0x10d4]
cmp ecx, dword [edx + 0x24]
mov dword [ebp - 0x18], ecx
jge 0x4455a8
mov eax, dword [eax + 0xb98]
mov edx, dword [eax + 0x10d4]
mov eax, dword [edx + 0x24]
mov ebx, dword [0x576440]
mov esi, dword [0x541108]
sub eax, ecx
mov ecx, dword [0x541104]
sub eax, 0x2d
lea edx, [ecx + eax*2]
add eax, edx
mov edi, eax
sub esi, ebx
lea eax, [edi + 0x18]
sub esi, 0x24
mov dword [ebp - 0x40], eax
mov edx, 0x101
lea ecx, [esi + 0x18]
mov dword [ebp - 0x3c], ecx
mov eax, 0xb8
mov dword [ebp - 0x54], edx
mov edx, dword [ebp - 0x38]
mov ecx, 1
mov dword [ebp - 0x58], eax
mov eax, dword [edx + 4]
mov dword [ebp - 0x5c], ecx
mov ecx, dword [0x5b7468]
mov ebx, 0x1b8
push eax
mov dword [ebp - 0x50], ebx
call fcn.004a5990
push 0
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, dword [ebp - 0x3c]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov ebx, eax
mov eax, dword [ebp - 0x40]
mov dword [edx + 4], esi
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [0x5b746c]
push 0
push 0
push 0
push ebx
push eax
push 0xb
call fcn.004a2570
mov ecx, dword [ebp - 0x18]
inc ecx
jmp 0x4454c1
mov ecx, dword [eax + 0xb98]
mov edx, dword [ecx + 0x10d4]
mov ecx, dword [edx + 0x24]
test ecx, ecx
je 0x44563b
push ecx
lea eax, [ebp - 0x98]
push 0x521428
push eax
call fcn.00447970
mov edx, dword [0x541108]
mov ebx, dword [0x576440]
mov eax, dword [0x677df8]
add esp, 0xc
push 0xffff
sub edx, ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x98]
push ecx
mov ecx, dword [eax + 0xb98]
sub edx, 0x1d
mov dword [ebp - 0x14], edx
fild dword [ebp - 0x14]
mov edx, dword [ecx + 0x10d4]
mov eax, dword [edx + 0x24]
mov ecx, dword [0x541104]
sub eax, 0x26
lea edx, [ecx + eax*2]
mov ecx, dword [0x5b7484]
sub esp, 8
add eax, edx
fstp dword [esp + 4]
mov dword [ebp - 0x14], eax
fild dword [ebp - 0x14]
fstp dword [esp]
call fcn.00498500
mov eax, dword [0x677df8]
mov eax, dword [eax + 0xb98]
mov esi, dword [eax + 0x10d4]
sub esp, 0x20
mov edi, esp
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x58]
push ecx
call fcn.00401fb0
add esp, 0x24
mov edx, dword [0x541108]
mov edi, dword [0x576440]
mov ecx, dword [0x5b7484]
push 0xffff
sub edx, edi
push 0xffffffffffffffff
push eax
mov eax, dword [0x541104]
sub edx, 0x38
mov dword [ebp - 0x70], edx
fild dword [ebp - 0x70]
sub esp, 8
add eax, 0xffffff76
fstp dword [esp + 4]
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
mov byte [ebp - 4], 4
fstp dword [esp]
call fcn.00498500
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 3
call fcn.00446d60
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0
call fcn.00446d60
fld dword [0x5b7b28]
mov esi, dword [ebp - 0x34]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x44
jp 0x445702
fld dword [0x5b7b2c]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x44
jp 0x445702
fld dword [0x5b7b24]
fcomp dword [0x521418]
fnstsw ax
test ah, 0x44
jnp 0x445d0c
fld dword [0x5b7b28]
fcomp dword [0x5b7b2c]
fnstsw ax
test ah, 0x41
jne 0x4458eb
fld dword [0x5b7b28]
jmp 0x4458f1
mov eax, 0xb8
mov ecx, 1
mov edx, 0x101
mov esi, 0x1b8
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x18], ebx
lea ebx, [ebx]
mov eax, dword [ebp - 0x18]
cmp eax, dword [edi + 0x60f4]
jge 0x445636
test eax, eax
jl 0x4458c3
cmp eax, 0xa
jge 0x4458c3
mov ecx, dword [ebp - 0x2c]
imul eax, eax, 0x9a4
mov dl, byte [eax + ecx + 0xbc]
test dl, dl
mov dword [ebp - 0x30], eax
jne 0x4458b4
mov edx, eax
mov eax, ecx
mov cl, byte [edx + eax + 0xbd]
test cl, cl
jne 0x4458b4
mov edi, dword [ebp - 0x18]
mov ecx, dword [0x541104]
imul edi, edi, 0x16
mov edx, dword [0x576440]
mov esi, dword [0x541108]
lea ebx, [edi + ecx - 0x86]
mov ecx, dword [0x57643c]
sub esi, edx
lea edx, [ebx + 0x18]
mov dword [ebp - 0x40], edx
mov edx, dword [ecx + 4]
mov ecx, dword [0x5b7468]
sub esi, 0x24
lea eax, [esi + 0x18]
push edx
mov dword [ebp - 0x3c], eax
call fcn.004a5990
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x70], eax
push 0
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 0x3c]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 4], esi
mov dword [ecx + 8], edx
mov dword [ecx + 0xc], eax
mov ecx, dword [0x5b7470]
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
mov ecx, dword [ebp - 0x70]
push 0
push 0
push 0
push ecx
mov ecx, dword [0x5b746c]
push eax
push 0xb
call fcn.004a2570
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [edx + eax + 0xb0]
push ecx
lea edx, [ebp - 0x98]
push 0x521428
push edx
call fcn.00447970
mov ecx, dword [0x541108]
mov esi, dword [0x576440]
mov edx, dword [0x541104]
add esp, 0xc
push 0xffff
sub ecx, esi
sub ecx, 0x1d
push 0xffffffffffffffff
mov dword [ebp - 0x70], ecx
fild dword [ebp - 0x70]
mov ecx, dword [0x5b7484]
lea eax, [ebp - 0x98]
push eax
sub esp, 8
lea eax, [edi + edx - 0x72]
fstp dword [esp + 4]
mov dword [ebp - 0x70], eax
fild dword [ebp - 0x70]
fstp dword [esp]
call fcn.00498500
mov eax, dword [ebp - 0x14]
inc eax
cmp eax, 5
mov dword [ebp - 0x14], eax
jge 0x445636
mov eax, dword [ebp - 0x18]
mov edi, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x18], eax
jmp 0x445750
lea ecx, [ebp - 0x70]
push ecx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x70], 0x52145c
call dword [0x521298]
push 0x52fdac
lea edx, [ebp - 0xe8]
push edx
call fcn.00514dd6
fld dword [0x5b7b2c]
fcomp dword [0x5b7b24]
fnstsw ax
test ah, 0x41
jne 0x445921
fld dword [0x5b7b28]
fcomp dword [0x5b7b2c]
fnstsw ax
test ah, 0x41
jne 0x445919
fld dword [0x5b7b28]
jmp 0x445927
fld dword [0x5b7b2c]
jmp 0x445927
fld dword [0x5b7b24]
fld dword [0x521590]
fcomp st(1)
fnstsw ax
test ah, 5
jp 0x44593e
fstp st(0)
fld dword [0x521590]
fld dword [0x524fcc]
push 3
fmul qword [0x5b7490]
fmul qword [0x523a38]
fsin
fmul st(1)
fld dword [0x521590]
fsub st(2)
faddp st(1)
fmul dword [0x521f20]
fadd dword [0x521610]
fstp dword [ebp - 0x70]
mov ecx, dword [ebp - 0x70]
push ecx
mov ecx, dword [0x5b746c]
fstp st(0)
call fcn.0049d030
mov eax, dword [0x540950]
mov edx, dword [eax]
push 0xa
push 4
push 0
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 4
push 1
push 0
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 2
push 2
push 0
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 2
push 5
push 0
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 3
push 3
push 0
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 3
push 6
push 0
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 6
push 4
push 1
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 2
push 1
push 1
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 1
push 2
push 1
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 1
push 5
push 1
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 1
push 6
push 1
push eax
call dword [edx + 0xfc]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 5
push 0x13
push eax
call dword [ecx + 0xc8]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 6
push 0x14
push eax
call dword [edx + 0xc8]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 1
push 0x16
push eax
call dword [ecx + 0xc8]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x445ab9
cmp dword [0x57644c], esi
je 0x445ab9
mov ecx, dword [0x540950]
mov edx, dword [ecx]
push eax
push 0
push ecx
call dword [edx + 0xf4]
mov dword [0x57644c], esi
mov eax, dword [0x541108]
mov ecx, dword [0x541104]
mov edi, 0x16f
mov dword [ebp - 0x24], edi
lea eax, [eax + eax*2]
mov edi, 0x33f
mov dword [ebp - 0x20], edi
cdq
mov edi, 0x36f
mov dword [ebp - 0x1c], edi
push 0
lea edi, [ebp - 0x28]
push edi
and edx, 3
add eax, edx
sar ecx, 1
sub ecx, 0x60
sub esp, 0x10
sar eax, 2
mov edi, esp
mov dword [edi], ecx
sub eax, 0x20
lea edx, [ecx + 0xc1]
mov ecx, dword [0x5b7470]
mov dword [edi + 4], eax
lea esi, [eax + 0x42]
mov dword [edi + 8], edx
mov ebx, 0x13f
mov dword [ebp - 0x28], ebx
mov dword [edi + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
push 1
mov ecx, eax
call fcn.0044f7b0
mov eax, dword [0x541108]
mov ecx, dword [0x541104]
mov edi, 0xfffffe91
mov dword [ebp - 0x24], edi
mov edi, 0x33f
mov dword [ebp - 0x20], edi
cdq
mov edi, 0xfffffc91
mov dword [ebp - 0x1c], edi
push 0
lea edi, [ebp - 0x28]
push edi
and edx, 3
add eax, edx
sar ecx, 1
sub ecx, 0x60
sub esp, 0x10
sar eax, 2
mov edi, esp
mov dword [edi], ecx
add eax, 0x20
lea edx, [ecx + 0xc1]
mov ecx, dword [0x5b7470]
mov dword [edi + 4], eax
lea esi, [eax - 0x42]
mov dword [edi + 8], edx
mov dword [ebp - 0x28], ebx
mov dword [edi + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
push 1
mov ecx, eax
call fcn.0044f7b0
mov ecx, dword [0x541108]
mov eax, dword [0x541104]
sar ecx, 1
sub ecx, 0x60
lea eax, [eax + eax*2]
mov edi, 0xae
mov dword [ebp - 0x24], edi
cdq
mov edi, 0x3c0
mov dword [ebp - 0x20], edi
mov edi, 0x2ae
mov dword [ebp - 0x1c], edi
and edx, 3
push 0
add eax, edx
lea edi, [ebp - 0x28]
push edi
sar eax, 2
sub esp, 0x10
sub eax, 0x20
mov edi, esp
mov dword [edi], eax
mov dword [edi + 4], ecx
lea edx, [eax + 0x42]
lea esi, [ecx + 0xc1]
mov ecx, dword [0x5b7470]
mov dword [edi + 8], edx
mov ebx, 0x1c0
mov dword [ebp - 0x28], ebx
mov dword [edi + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
push eax
mov eax, dword [ecx + 0x26fc]
push eax
call fcn.00495320
push 1
mov ecx, eax
call fcn.0044f7b0
mov eax, dword [0x541104]
mov ecx, dword [0x541108]
mov edi, 0xae
mov dword [ebp - 0x24], edi
cdq
mov edi, 0xfffffc40
mov dword [ebp - 0x20], edi
mov edi, 0x2ae
mov dword [ebp - 0x1c], edi
and edx, 3
push 0
add eax, edx
lea edi, [ebp - 0x28]
push edi
sar eax, 2
sub esp, 0x10
sar ecx, 1
add eax, 0x20
sub ecx, 0x60
mov edi, esp
mov dword [edi], eax
mov dword [edi + 4], ecx
lea edx, [eax - 0x42]
lea esi, [ecx + 0xc1]
mov ecx, dword [0x5b7470]
mov dword [edi + 8], edx
mov ebx, 0xfffffe40
mov dword [ebp - 0x28], ebx
mov dword [edi + 0xc], esi
call fcn.00494970
mov ecx, dword [0x5b7470]
mov edx, dword [ecx + 0x26fc]
push eax
push edx
call fcn.00495320
push 1
mov ecx, eax
call fcn.0044f7b0
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 1
push 1
push 1
push eax
call dword [ecx + 0xfc]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 2
push 0x13
push eax
call dword [edx + 0xc8]
mov eax, dword [0x540950]
mov ecx, dword [eax]
push 1
push 0x14
push eax
call dword [ecx + 0xc8]
mov eax, dword [0x540950]
mov edx, dword [eax]
push 3
push 0x16
push eax
call dword [edx + 0xc8]
mov ecx, dword [ebp - 0x38]
call fcn.00441fe0
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x70], 0x52145c
call dword [0x521298]
push 0x52fdac
lea ecx, [ebp - 0x118]
push ecx
call fcn.00514dd6
lea edx, [ebp - 0x70]
push edx
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x70], 0x52145c
call dword [0x521298]
push 0x52fdac
lea eax, [ebp - 0x130]
push eax
call fcn.00514dd6
push 0x52495c
mov ecx, 0x577870
call fcn.00401310
push 0
push 0
call fcn.00514dd6
push str.CRenderer::DrawKokpit
mov ecx, 0x577870
call fcn.00401310
push 0
push 0
call fcn.00514dd6
lea ecx, [ecx]
jle 0x445dd7
inc esp
add byte [esi - 0x71ffbbd3], al
sub eax, 0x2d960044
inc esp
add byte [eax - 0x6f6f6f70], dl
nop
nop
nop
pushfd
add byte [eax], al
add byte [ecx + 0x677df8], ah