Function at 0x5aeb70
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push 0xffffffffffffffff
push 0x65a4d9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x160
mov dword [esp + 0x14], 0
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov dword [esp + 0x24], ecx
mov dword [esp + 8], 0
mov ecx, dword [esp + 8]
push ebx
push ebp
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x30], edx
mov dword [esp + 8], 0
mov ebp, dword [esp + 8]
mov dword [esp + 0xc], 0
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x14], 0
mov edx, dword [esp + 0x14]
push esi
mov dword [esp + 0x24], ecx
push edi
lea ecx, [esp + 0x80]
mov dword [esp + 0x5c], 0
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x2c], edx
call fcn.005be1b0
mov esi, dword [esp + 0x1a4]
mov eax, dword [esp + 0x19c]
mov ecx, 5
lea edi, [esp + 0xb8]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x1a0]
mov dword [esp + 0x178], 1
push ecx
lea ecx, [esp + 0xd4]
mov dword [esp + 0xd0], eax
call fcn.004911b0
mov eax, dword [esp + 0x198]
mov edx, dword [esp + 0x194]
push eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0xd8], edx
call fcn.004911b0
lea ecx, [esp + 0x4b]
mov byte [esp + 0x4b], 1
push ecx
lea ecx, [esp + 0x84]
call fcn.005be280
lea edx, [esp + 0x4b]
lea ecx, [esp + 0x80]
push edx
mov byte [esp + 0x4f], 1
call fcn.005be2a0
mov ecx, dword [esp + 0x1a8]
fld dword [ecx]
fcomp qword [0x663fb8]
fnstsw ax
test ah, 1
je 0x5aecf3
fld dword [ecx]
fcomp qword [0x67ab38]
fnstsw ax
test ah, 0x41
jne 0x5aecf3
lea eax, [esp + 0x40]
lea ecx, [esp + 0x80]
push eax
mov dword [esp + 0x44], 1
call fcn.005be3c0
jmp 0x5aed08
mov ecx, dword [ecx]
mov dword [esp + 0x130], ecx
lea ecx, [esp + 0x80]
call fcn.005be450
lea edx, [esp + 0x40]
xor esi, esi
push edx
lea ecx, [esp + 0x84]
mov dword [esp + 0x44], esi
call fcn.005be380
lea eax, [esp + 0x40]
lea ecx, [esp + 0x80]
push eax
mov dword [esp + 0x44], esi
call fcn.005be3a0
mov ecx, dword [esp + 0x190]
mov eax, dword [ecx]
cmp eax, esi
je 0x5aed46
add eax, 0xc
jmp 0x5aed4b
mov eax, 0x730504
push eax
lea ecx, [esp + 0x84]
call fcn.005be550
lea ecx, [esp + 0x134]
call fcn.005c0fe0
mov edi, dword [esp + 0x188]
mov edx, dword [esp + 0x18c]
push edi
lea ecx, [esp + 0x138]
mov byte [esp + 0x17c], 2
mov dword [esp + 0x170], edx
call fcn.005c0dc0
mov eax, dword [esp + 0x1ac]
mov esi, dword [esp + 0x184]
mov eax, dword [eax]
cmp eax, 6
ja case.default.0x5aeda7
jmp dword [eax*4 + 0x5afc58]
mov ecx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov edx, dword [ecx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ebp
mov edx, dword [ecx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x1c]
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
mov eax, esi
mov dword [esp + 0x10], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov ebp, dword [eax]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], ebp
mov ebx, dword [eax + 4]
mov dword [esp + 0x24], ebx
mov ecx, dword [eax + 8]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
jmp case.default.0x5aeda7
test edi, edi
je 0x5af01c
mov ecx, dword [esp + 0x1a8]
fld dword [ecx]
fcomp qword [0x663fb8]
fnstsw ax
test ah, 1
je 0x5aef2f
fld dword [ecx]
fcomp qword [0x67ab38]
fnstsw ax
test ah, 0x41
jne 0x5aef2f
fld dword [esi + 0xc]
fsub dword [esi + 8]
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
mov edx, ecx
fmul dword [0x69f8b0]
mov dword [esp + 0x30], edx
fadd dword [esi + 8]
fst dword [esp + 0x40]
fld dword [esi + 4]
fld dword [esi + 8]
fstp dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esp + 0x40]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
mov eax, dword [esi]
mov dword [esp + 0x3c], edx
fstp dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov ebp, eax
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x10], eax
fstp dword [esp + 0x1c]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
fld dword [esp + 0x98]
fadd dword [esi + 8]
fcom dword [esi + 0xc]
fnstsw ax
test ah, 0x41
jne 0x5aefa7
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x18]
mov edx, esi
mov dword [esp + 0x1c], 0
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [edx]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x10], 0
mov ecx, dword [edx + 4]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov eax, dword [edx + 8]
mov dword [esp + 0x34], ecx
fstp st(0)
mov ecx, dword [edx + 0xc]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], ecx
jmp case.default.0x5aeda7
fst dword [esp + 0x40]
fld dword [esi + 4]
fld dword [esi + 8]
mov edx, dword [esi]
fstp dword [esp + 0x18]
mov dword [esp + 0x10], edx
mov eax, edx
fstp dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esp + 0x40]
fstp dword [esp + 0x18]
mov dword [esp + 0x34], ecx
mov ecx, dword [esi]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x18]
mov ebp, ecx
fstp dword [esp + 0x1c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], edx
jmp 0x5af94f
mov ecx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov edx, dword [ecx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ebp
mov edx, dword [ecx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x1c]
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
test edi, edi
je 0x5af23c
mov ecx, dword [esp + 0x1a8]
fld dword [ecx]
fcomp qword [0x663fb8]
fnstsw ax
test ah, 1
je 0x5af143
fld dword [ecx]
fcomp qword [0x67ab38]
fnstsw ax
test ah, 0x41
jne 0x5af143
fld dword [esi + 0xc]
fsub dword [esi + 8]
mov eax, dword [esi]
mov dword [esp + 0x10], eax
mov ecx, eax
mov dword [esp + 0x30], ecx
fstp dword [esp + 0x40]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esp + 0x40]
fmul dword [0x69f8b0]
fsubr dword [esi + 0xc]
fst dword [esp + 0x40]
fstp dword [esp + 0x18]
mov eax, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x38], eax
fstp dword [esp + 0x1c]
fld dword [esi + 4]
fld dword [esi + 8]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x34], edx
fstp dword [esp + 0x18]
mov edx, dword [esi]
mov eax, dword [esp + 0x18]
fstp dword [esp + 0x14]
fld dword [esp + 0x40]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], ecx
fstp dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov ebp, edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp case.default.0x5aeda7
fld dword [esp + 0x98]
fadd dword [esi + 8]
fcomp dword [esi + 0xc]
fnstsw ax
test ah, 0x41
jne 0x5af1b9
mov dword [esp + 0x18], 0
mov edx, dword [esp + 0x18]
mov ecx, esi
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], edx
mov edx, dword [ecx]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x10], 0
mov eax, dword [ecx + 4]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov edx, dword [ecx + 8]
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
jmp case.default.0x5aeda7
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 0xc]
fsub dword [esp + 0x98]
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
mov edx, ecx
mov dword [esp + 0x30], edx
fst dword [esp + 0x40]
fstp dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
fstp dword [esp + 0x1c]
fld dword [esi + 4]
fld dword [esi + 8]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
fstp dword [esp + 0x18]
mov eax, dword [esi]
mov ecx, dword [esp + 0x18]
fstp dword [esp + 0x14]
fld dword [esp + 0x40]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
fstp dword [esp + 0x1c]
mov edx, dword [esp + 0x1c]
mov ebp, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
mov eax, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov ecx, dword [eax]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], ebp
mov ecx, dword [eax + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp case.default.0x5aeda7
test edi, edi
je 0x5af580
mov ecx, dword [esp + 0x1a8]
fld dword [ecx]
fcomp qword [0x663fb8]
fnstsw ax
test ah, 1
je 0x5af489
fld dword [ecx]
fcomp qword [0x67ab38]
fnstsw ax
test ah, 0x41
jne 0x5af489
fld dword [esi + 4]
fsub dword [esi]
fstp dword [esp + 0x40]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esp + 0x40]
fmul dword [0x69f8b0]
fstp dword [esp + 0x54]
fld dword [esi + 4]
fsub dword [esp + 0x54]
fst dword [esp + 0x4c]
fstp dword [esp + 0x10]
mov edx, dword [esp + 0x10]
fstp dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], edx
fstp dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 8]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], eax
fstp dword [esp + 0x18]
fld dword [esp + 0x4c]
mov eax, dword [esi]
mov ecx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x10], eax
fstp dword [esp + 0x1c]
mov ebp, eax
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x30]
mov dword [esp + 0x28], ecx
push eax
lea ecx, [esp + 0x84]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x30], edx
call fcn.005be240
fld dword [esp + 0x94]
fcomp dword [esp + 0x54]
fnstsw ax
test ah, 1
jne case.default.0x5aeda7
fld dword [esp + 0x94]
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 1
je 0x5af42b
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esi + 4]
fsub dword [esp + 0x94]
fst dword [esp + 0x4c]
fstp dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
fstp dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x30], ecx
fstp dword [esp + 0x14]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x38], eax
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 8]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x34], edx
fstp dword [esp + 0x18]
fld dword [esp + 0x4c]
mov edx, dword [esi]
mov eax, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], ecx
fstp dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov ebp, edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp case.default.0x5aeda7
mov edx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov eax, dword [edx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ebp
mov eax, dword [edx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x28], edx
jmp 0x5af94f
fld dword [esp + 0x94]
fadd dword [esi]
fcomp dword [esi + 4]
fnstsw ax
test ah, 0x41
jne 0x5af4fe
mov ecx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov edx, dword [ecx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ebp
mov edx, dword [ecx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x1c]
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esi + 4]
fsub dword [esp + 0x94]
fst dword [esp + 0x4c]
fstp dword [esp + 0x10]
mov eax, dword [esp + 0x10]
fstp dword [esp + 0x18]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x30], eax
fstp dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x38], edx
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 8]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x34], ecx
fstp dword [esp + 0x18]
fld dword [esp + 0x4c]
mov ecx, dword [esi]
mov edx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov ebp, ecx
fstp dword [esp + 0x1c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], edx
jmp 0x5af94f
mov ecx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov edx, dword [ecx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ebp
mov edx, dword [ecx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x1c]
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
test edi, edi
je 0x5af8c0
mov ecx, dword [esp + 0x1a8]
fld dword [ecx]
fcomp qword [0x663fb8]
fnstsw ax
test ah, 1
je 0x5af7cb
fld dword [ecx]
fcomp qword [0x67ab38]
fnstsw ax
test ah, 0x41
jne 0x5af7cb
fld dword [esi + 4]
fsub dword [esi]
mov eax, dword [esi]
mov dword [esp + 0x10], eax
mov ecx, eax
mov dword [esp + 0x30], ecx
fstp dword [esp + 0x40]
fld dword [esi + 0xc]
fld dword [esp + 0x40]
fmul dword [0x69f8b0]
fst dword [esp + 0x54]
fadd dword [esi]
fst dword [esp + 0x4c]
fld dword [esi + 8]
fstp dword [esp + 0x18]
mov eax, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x38], eax
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esp + 0x4c]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x34], edx
fstp dword [esp + 0x10]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x3c], ecx
fstp dword [esp + 0x18]
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x30]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
push ecx
fstp dword [esp + 0x20]
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x84]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
call fcn.005be240
fld dword [esp + 0x94]
fcomp dword [esp + 0x54]
fnstsw ax
test ah, 1
jne case.default.0x5aeda7
fld dword [esp + 0x94]
fcomp dword [esp + 0x40]
fnstsw ax
test ah, 1
je 0x5af769
fld dword [esi + 0xc]
fld dword [esp + 0x94]
fadd dword [esi]
mov edx, dword [esi]
mov dword [esp + 0x10], edx
mov eax, edx
mov dword [esp + 0x30], eax
fst dword [esp + 0x4c]
fld dword [esi + 8]
fstp dword [esp + 0x18]
mov edx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x38], edx
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esp + 0x4c]
fstp dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x10]
fstp dword [esp + 0x18]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
fstp dword [esp + 0x1c]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
jmp case.default.0x5aeda7
mov eax, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov ecx, dword [eax]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], ebp
mov ecx, dword [eax + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [eax + 0xc]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp case.default.0x5aeda7
fld dword [esp + 0x94]
fadd dword [esi]
fst dword [esp + 0x4c]
fcomp dword [esi + 4]
fnstsw ax
test ah, 0x41
jne 0x5af840
mov edx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov eax, dword [edx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ebp
mov eax, dword [edx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x28], edx
jmp 0x5af94f
fld dword [esi + 0xc]
fld dword [esp + 0x4c]
mov ecx, dword [esi]
fst dword [esp + 0x4c]
fld dword [esi + 8]
mov dword [esp + 0x10], ecx
mov edx, ecx
fstp dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x30], edx
fstp dword [esp + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], ecx
fstp dword [esp + 0x1c]
fld dword [esi + 0xc]
fld dword [esi + 4]
fld dword [esi + 8]
fld dword [esp + 0x4c]
fstp dword [esp + 0x10]
mov edx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x10]
fstp dword [esp + 0x18]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x18]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x3c], edx
fstp dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
jmp case.default.0x5aeda7
mov edx, esi
mov dword [esp + 0x10], 0
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x18], 0
mov eax, dword [edx]
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x30], eax
mov ecx, dword [edx + 4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ebp
mov eax, dword [edx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [edx + 0xc]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x28], edx
jmp 0x5af94f
mov ecx, esi
mov edx, dword [ecx]
mov dword [esp + 0x30], edx
mov eax, dword [ecx + 4]
mov dword [esp + 0x34], eax
mov edx, dword [ecx + 8]
mov dword [esp + 0x38], edx
mov eax, dword [ecx + 0xc]
mov ebp, dword [ecx]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x20], ebp
mov ebx, dword [ecx + 4]
mov dword [esp + 0x24], ebx
mov edx, dword [ecx + 8]
mov dword [esp + 0x28], edx
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x2c], eax
lea ecx, [esp + 0x70]
call fcn.004baf30
lea ecx, [esp + 0x60]
mov byte [esp + 0x178], 3
call fcn.004baf30
fld dword [esp + 0x20]
fcomp dword [esp + 0x24]
mov byte [esp + 0x178], 4
fnstsw ax
test ah, 1
je 0x5afa21
fld dword [esp + 0x28]
fcomp dword [esp + 0x2c]
fnstsw ax
test ah, 1
je 0x5afa21
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
lea eax, [esp + 0x4c]
mov dword [esp + 0x140], ecx
push eax
lea ecx, [esp + 0x138]
mov dword [esp + 0x13c], ebp
mov dword [esp + 0x140], ebx
mov dword [esp + 0x148], edx
call fcn.005c08b0
mov ecx, dword [eax]
xor edi, edi
cmp ecx, edi
mov byte [esp + 0x178], 5
je 0x5af9e9
add ecx, 0xc
mov dword [esp + 0x40], ecx
jmp 0x5af9ed
mov dword [esp + 0x40], edi
mov eax, dword [eax]
cmp eax, edi
je 0x5af9fc
mov ecx, dword [eax + 4]
mov dword [esp + 0x44], ecx
jmp 0x5afa00
mov dword [esp + 0x44], edi
lea edx, [esp + 0x40]
lea ecx, [esp + 0x60]
push edx
call fcn.004bb0a0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x178], 4
call fcn.00490f90
jmp 0x5afa23
xor edi, edi
fld dword [esp + 0x30]
fcomp dword [esp + 0x34]
fnstsw ax
test ah, 1
je 0x5afab0
fld dword [esp + 0x38]
fcomp dword [esp + 0x3c]
fnstsw ax
test ah, 1
je 0x5afab0
lea eax, [esp + 0x30]
lea ecx, [esp + 0x80]
push eax
call fcn.005be240
lea ecx, [esp + 0x4c]
push ecx
lea ecx, [esp + 0x84]
call fcn.004dcd30
mov ecx, dword [eax]
mov byte [esp + 0x178], 6
cmp ecx, edi
je 0x5afa7a
add ecx, 0xc
mov dword [esp + 0x40], ecx
jmp 0x5afa7e
mov dword [esp + 0x40], edi
mov eax, dword [eax]
cmp eax, edi
je 0x5afa8d
mov edx, dword [eax + 4]
mov dword [esp + 0x44], edx
jmp 0x5afa91
mov dword [esp + 0x44], edi
lea eax, [esp + 0x40]
lea ecx, [esp + 0x60]
push eax
call fcn.004bb0a0
lea ecx, [esp + 0x4c]
mov byte [esp + 0x178], 4
call fcn.00490f90
cmp dword [esp + 0x6c], edi
jbe 0x5afbd7
mov edi, str._re_W_n_n
or ecx, 0xffffffff
xor eax, eax
mov dword [esp + 0x4c], edi
repne scasb al, byte es:[edi]
fld dword [esi + 0xc]
fsub dword [esi + 8]
not ecx
dec ecx
mov edx, 0x6d3e1c
mov dword [esp + 0x50], ecx
mov edi, edx
or ecx, 0xffffffff
mov dword [esp + 0x40], edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, edx
mov dword [esp + 0x44], ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, edx
mov dword [esp + 0x58], ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x6e1030
mov dword [esp + 0x14], ecx
or ecx, 0xffffffff
mov dword [esp + 0x20], edi
mov dword [esp + 0x54], edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x44]
sub esp, 8
lea eax, [esp + 0x60]
lea ecx, [esp + 0x1c]
fstp qword [esp]
fld dword [esi + 4]
fsub dword [esi]
push edx
lea edx, [esp + 0x30]
sub esp, 8
fstp qword [esp]
fld dword [esi + 8]
push eax
sub esp, 8
fstp qword [esp]
fld dword [esi]
push ecx
lea ecx, [esp + 0x98]
sub esp, 8
fstp qword [esp]
push edx
call fcn.004bb0a0
mov ecx, eax
call fcn.004bb140
mov ecx, eax
call fcn.004bb0a0
mov ecx, eax
call fcn.004bb140
mov ecx, eax
call fcn.004bb0a0
mov ecx, eax
call fcn.004bb140
mov ecx, eax
call fcn.004bb0a0
mov ecx, eax
call fcn.004bb140
mov ecx, eax
call fcn.004bb0a0
mov edi, 0x6e0ec0
mov dword [esp + 0x20], edi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x20]
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x60]
push eax
push ecx
lea ecx, [esp + 0x78]
call fcn.004bb1b0
mov ecx, eax
call fcn.004bb0a0
mov esi, dword [esp + 0x180]
lea ecx, [esp + 0x70]
push esi
call fcn.004bb060
mov dword [esp + 0x5c], 1
lea ecx, [esp + 0x60]
mov byte [esp + 0x178], 3
call fcn.004baf50
lea ecx, [esp + 0x70]
mov byte [esp + 0x178], 2
call fcn.004baf50
lea ecx, [esp + 0x134]
mov byte [esp + 0x178], 1
call fcn.005c1030
lea ecx, [esp + 0xb4]
mov byte [esp + 0x178], 0
call fcn.005be200
mov ecx, dword [esp + 0x170]
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x16c
ret